![](/img/trans.png)
[英]df = pd.read_csv('file.csv') adds random numbers and commas to file. Pandas in python
[英]Why pd.read_csv('file.csv') add .999999 at the end of some values?
我有一个 4 行 1 列的 csv 文件。 当我用 Sublime 打开它时,它看起来像这样:
2.291433301000000000e+09
3.601532401000000000e+09
3.061400502000000000e+09
3.195901470100000000e+10
当我阅读它时:
df = pd.read_csv('file.csv', names=['Column 1'])
python 最后一行的值为 31959014700.999996
我该如何解决这个问题? 我在读取文件时尝试添加数据类型:
df = pd.read_csv('file.csv', names=['Column 1'], dtype=np.int64)
但是没有用。 我也试过:
df = pd.read_csv('file.csv', names=['Column 1'])
df = df(pd.to_numeric, errors='coerce')
但它说它不能转换为int!
谢谢你的帮助。
这是一个浮点错误,Pandas 拒绝转换,因为它不会自动舍入浮点数。
尝试这个:
df = pd.read_csv(
'file.csv', names=['Column 1']
).round(0).astype(int)
如果您也将数据写入 CSV 并且只打算存储整数,您可能不想使用科学计数法。 科学计数法中的数字将被解释为浮点数,因此您必须这样做才能将它们表示为整数,而不会偶尔失败。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.