input a
88888888
99999999
end
export excel a.xlsx, replace
然后,如果我打开excel文件,数字显示为8.89e + 07和1.00e + 08。如何将这些恢复为原始数字。我必须在Excel中执行此操作吗?有没有办法阻止Stata将这些数字转换为“科学”格式?
答案 0 :(得分:2)
input
命令的作用是将这些数字读入float
类型的变量。但是float
中没有足够的位来准确保存99999999。这是有据可查的。
参见例如data types
的帮助:
“float
有大约7位数的精确度;数字的大小无关紧要。因此,1234567可以完美地存储为float
,1234567e + 20可以存储。数字123456789然而,将四舍五入到123456792.一般来说,这种舍入并不重要。
如果要存储标识号,则舍入可能很重要。如果
标识号是整数,取9位数或更少,将它们存储为long
s;
否则,将它们存储为double
s。 double
有16位精确度。“
因此,您使用不适当的数据类型降低了数据质量。这是问题,而不是export excel
。