【发布时间】:2018-06-01 11:49:40
【问题描述】:
我有一个大的 csv 文件(~10GB),大约有 4000 列。我知道我期望的大部分数据都是 int8,所以我设置:
pandas.read_csv('file.dat', sep=',', engine='c', header=None,
na_filter=False, dtype=np.int8, low_memory=False)
问题是,最后一列(第 4000 列)是 int32,我可以告诉 read_csv 默认使用 int8,而在第 4000 列,使用 int 32?
谢谢
【问题讨论】:
-
我能想到的一个技巧:将所有列读取为 int8。然后使用
usecols仅将第 4000 列读取为 int32。然后在第一个数据框中替换它。