我想导入下面的csv作为字符串而不是作为int64。Pandas read_csv自动将其转换为int64,但我需要此列作为字符串。
第一个
不幸的是,使用转换器也会产生相同的结果。
df = read_csv('sample.csv', converters={'ID': str})
df.ID
>>
0 -9223372036854775808
1 -9223372036854775808
2 -9223372036854775808
3 -9223372036854775808
4 -9223372036854775808
5 -9223372036854775808
6 -9223372036854775808
Name: ID
3条答案
按热度按时间brqmpdu11#
只是想重申一下,这将工作在Pandas〉= 0.9.1:
我还创建了一个关于检测整数溢出的问题。
编辑:请在此处查看解决方案:https://github.com/pydata/pandas/issues/2247
帮助他人时更新:
要将all columns作为str,可以这样做(从注解中):
要将most列或选择性列作为str,可以执行以下操作:
o7jaxewo2#
这可能不是最优雅的方式,但它完成了工作。
只需将
'/Users/spencerlyon2/Desktop/test.csv'
替换为文件的路径即可wgx48brx3#
从Pandas1.0开始,它变得更加简单了。这将把列'ID'读为dtype 'string':
正如我们在本入门指南中所看到的,已经引入了'string' dtype(在字符串被视为dtype 'object'之前)。