4

使用该list命令时,是否可以显示整数的附加数字——理想情况下是完整整数——而不是以科学计数法显示?

例如,现在,我有一个显示为 1.90e+10 的整数,而我认为完整值是 19001000001。理想情况下,我希望获得该完整值,或者至少在提供的两个小数点之外获得额外的小数点(即 9 和 0)。

我正在使用 Stata SE 11.1。

4

1 回答 1

5

format使用前用命令设置显示格式即可list

. set obs 1
obs was 0, now 1

. gen double y = 987654321

. l y

    +-----------+
    |         y |
    |-----------|
 1. | 9.877e+08 |
    +-----------+

. format y %16.0f

. l y

    +-----------+
    |         y |
    |-----------|
 1. | 987654321 |
    +-----------+

如果list不播放,其display选项将强制使用显示格式。在本例中不需要这样做。我在这里选择的format是任意的。Stata 不会插入不需要的空格,因此只需选择一个大于整数长度的数字即可。

(稍后)关注您的示例:您给出了一个应该为 19001000001 的整数示例。假设这对您来说是一个真实(或现实)的示例,请注意floattype 没有使用足够的位来准确地保存它,long不能保存那么大的整数,而将其保存为数字变量的唯一可能性是double.

. set obs 1
obs was 0, now 1

. gen y1 = 19001000001

. gen double y2 = 19001000001

. gen long y3 = 19001000001

. l

      +---------------------------+
      |       y1          y2   y3 |
      |---------------------------|
   1. | 1.90e+10   1.900e+10    . |
      +---------------------------+

 . format y* %16.0f

 . l

        +--------------------------------+
        |          y1            y2   y3 |
        |--------------------------------|
  1   . | 19000999936   19001000001    . |
        +--------------------------------+

另一方面,你可以相信什么样的计数或测量来达到这种精度?可能这是某种恰好基于数字字符的标识符,在这种情况下,将其作为string变量保存会使一些事情变得更容易,具体取决于您想用它做什么。

于 2013-06-01T21:36:06.420 回答