Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pandas 大熊猫应该抑制指数增长_Pandas_Python 2.7 - Fatal编程技术网

Pandas 大熊猫应该抑制指数增长

Pandas 大熊猫应该抑制指数增长,pandas,python-2.7,Pandas,Python 2.7,我有一个dataframe的datatype对象,在写入CSV时,它被转换为指数和 我想保持原样的价值,我尝试了一切 pd.set_option('display.precision',12) 仅当我打印列时有效。但当我将其写入csv时,它将转换为指数。结果应应用于所有转换为指数的列 输入如下 EXTERNAL_AUTHOR_ID 1234260000000000000 816425000000000000 1703362346 1234260000000000000 1025974896 1

我有一个dataframe的datatype对象,在写入CSV时,它被转换为指数和 我想保持原样的价值,我尝试了一切

pd.set_option('display.precision',12)
仅当我打印列时有效。但当我将其写入csv时,它将转换为指数。结果应应用于所有转换为指数的列

输入如下

EXTERNAL_AUTHOR_ID
1234260000000000000
816425000000000000
1703362346
1234260000000000000
1025974896
1025974896
1025974896
1252600000000000000
1156200000000000000
1118580000000000000
888878000000000000
166473676
1425348680
1212230000000000000
1196320000000000000
236781415
1049950000000000000
481432116
24366583
1240650000000000000
1240650000000000000
1224370000000000000
1234260000000000000
816425000000000000
1703362346
1234260000000000000
1025974896
1025974896
1025974896
1252600000000000000
1156200000000000000
1118580000000000000
888878000000000000
166473676
1425348680
1212230000000000000
1196320000000000000
236781415
1049950000000000000
481432116
24366583
1240650000000000000
1240650000000000000
1224370000000000000
EXTERNAL_AUTHOR_ID
1.23426e+18
8.16425e+17
1703362346.0
1.23426e+18
1025974896.0
1025974896.0
1025974896.0
1.2526e+18
1.1562e+18
1.11858e+18
8.88878e+17
166473676.0
1425348680.0
1.21223e+18
1.19632e+18
236781415.0
1.04995e+18
481432116.0
24366583.0
1.24065e+18
1.24065e+18
1.22437e+18



输出如下所示

EXTERNAL_AUTHOR_ID
1234260000000000000
816425000000000000
1703362346
1234260000000000000
1025974896
1025974896
1025974896
1252600000000000000
1156200000000000000
1118580000000000000
888878000000000000
166473676
1425348680
1212230000000000000
1196320000000000000
236781415
1049950000000000000
481432116
24366583
1240650000000000000
1240650000000000000
1224370000000000000
1234260000000000000
816425000000000000
1703362346
1234260000000000000
1025974896
1025974896
1025974896
1252600000000000000
1156200000000000000
1118580000000000000
888878000000000000
166473676
1425348680
1212230000000000000
1196320000000000000
236781415
1049950000000000000
481432116
24366583
1240650000000000000
1240650000000000000
1224370000000000000
EXTERNAL_AUTHOR_ID
1.23426e+18
8.16425e+17
1703362346.0
1.23426e+18
1025974896.0
1025974896.0
1025974896.0
1.2526e+18
1.1562e+18
1.11858e+18
8.88878e+17
166473676.0
1425348680.0
1.21223e+18
1.19632e+18
236781415.0
1.04995e+18
481432116.0
24366583.0
1.24065e+18
1.24065e+18
1.22437e+18




您设置的是显示精度,即屏幕上显示的内容。要使用
写入csv文件
使用
浮动格式
选项:

df.to_csv('your.csv', sep=',', float_format='%f') 
例如:

import pandas as pd
import numpy as np

X = np.random.randn(10,2) * 10**18 # produced exponential notation 
df = pd.DataFrame(X)
df.to_csv('your.csv', sep=',', float_format='%f')


根据OP的要求,另一种方法是通过将各列的数据类型分配给
str

@AnirudhS,以逐字格式打印所有内容。您能仔细检查一下吗?确保在文本编辑器中打开该文件,没有更高级的(如电子表格程序)可以应用其自身格式。我刚刚在pandas 1.0.3上检查了这个,它运行得很好。你的版本是什么?Hi@Lukasz..我添加了精度和浮点格式。当我打开文件时,它的输出是1425348680.0 1.19632e+18 1.21223e+18@AnirudhS现在你有了浮点格式的符号-这就是你的目标吗?您可以使用
%f
格式化程序进一步修改精度,或更改为整数(这是否更合适)。我只想保留从输入文件中获取的原始值。取而代之的是将其转换为指数形式,我已将float_格式='%f'更改为float_格式='%30f',但未获取所需的输出,并且该列的数据类型为object