我的csv文件包含6Million记录,我试图通过使用skiprows将其拆分为多个较小的文件..我的Pandas版本是'0.12.0',代码是
pd.read_csv(TRAIN_FILE, chunksize=50000, header=None, skiprows=999999, nrows=100000)
Run Code Online (Sandbox Code Playgroud)
它只要小于900000就可以工作.任何想法是否是预期的?如果我不使用短语,我的小数可以达到5万条记录.还没有尝试过.也会尝试这个.
尝试过csv splitter,但它对第一个条目不起作用,可能是因为每个单元格由多行代码组成等.
编辑:我可以通过使用pandas read_csv读取整个7GB文件并将部分写入多个csv文件将其拆分为csv.
问题似乎是您同时指定了nrows
和chunksize
。至少在 pandas 0.14.0 中使用
pandas.read_csv(filename, nrows=some_number, chunksize=another_number)
Run Code Online (Sandbox Code Playgroud)
返回 a Dataframe
(读取整个数据),而
pandas.read_csv(filename, chunksize=another_number)
Run Code Online (Sandbox Code Playgroud)
返回一个延迟加载文件的 TextFileReader。
分割 csv 的工作原理如下:
for chunk in pandas.read_csv(filename, chunksize=your_chunk_size):
chunk.to_csv(some_filename)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
450 次 |
最近记录: |