繁体   English   中英

如何拆分巨大的 CSV 文件?

[英]How to split huge CSV file?

我有一个 csv 文件,其中包含 40k 行和 1 列,因为所有数据都用分号分隔。

insert_date;currency_from;currency_to;currency_value
0   2017-01-02 00:00:00.000;EUR;TL;3.7073
1   2017-01-02 00:00:00.000;USD;TL;3.5445
2   2017-01-02 00:00:00.000;GBP;TL;4.3510
3   2017-01-02 00:00:00.000;BTC;USD;0.0000
4   2017-01-02 00:00:00.000;EUR;USD;1.0459

这就是我的数据 pandas dataframe 的样子。我想用分号分隔以形成单独的列。

在 pandas 中,这是根据文档使用sep参数完成的:

import pandas as pd

df = pd.read_csv('/path/to/file.csv', sep=';')

你是说你想要一份字典列表吗?

import csv

with open('your/path/to/your/file.csv') as f:
    data = [i for i in csv.DictReader(f, delimiter=';')

process_your_data()

尝试使用 str.spilt()

语法:Series.str.split(pat=None, n=-1, expand=False) 参数:

pat:字符串值、分隔符或定界符,用于分隔字符串。 n:在单个字符串中进行的最大分隔数,默认为 -1,表示全部。 expand: Boolean 值,如果为真,则返回不同列中具有不同值的数据框。 否则它返回一个带有字符串列表的系列。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM