pandas read_csv在100000处停止

rsl1atfo  于 2023-01-01  发布在  其他
关注(0)|答案(2)|浏览(149)

我正在尝试从Downloads文件夹导入.csv文件。通常,read_csv函数会导入整行,尽管有数百万行。在本例中,我的文件有236,905行,但实际上加载的是100,000

df = pd.read_csv(r'C:\Users\user\Downloads\df.csv',nrows=9999999,low_memory=False)
s8vozzvw

s8vozzvw1#

我在一个包含5M行的文件中遇到了同样的问题。
我首先尝试了这个选项:

tp = pd.read_csv('yourfile.csv', iterator=True, chunksize=1000)
 data_customers = pd.concat(tp, ignore_index=True)

它确实工作了,但在我的情况下,由于一些列包含字符"",它在read_csv中用作分隔符,
另一个解决方案是使用Dask它有一个叫做"DataFrame"的对象(如Pandas)。Dask读取你的文件并构造一个由几个Pandas Dataframe 组成的Dask Dataframe 。这是并行计算的一个很好的解决方案。
希望能有所帮助

9lowa7mx

9lowa7mx2#

您需要使用chunksize=参数创建块:

temporary = pd.read_csv(r'C:\Users\user\Downloads\df.csv', iterator=True, chunksize=1000)
df = pd.concat(temporary, ignore_index=True)

ignore_index重置索引,使其不再重复。

相关问题