读取csv文件的一部分

Joh*_*ine 4 python csv pandas

我有一个非常大的csv文件大约10GB.我什么时候尝试使用读入iPython笔记本

data = pd.read_csv("data.csv")  
Run Code Online (Sandbox Code Playgroud)

我的笔记本电脑卡住 是否可以读取10,000行或500 MB的csv文件.

mir*_*ulo 9

有可能的.你可以通过创建以时间作为数据帧的迭代器产生的具有一定规模的CSV的块iterator=True与你的期望chunksizeread_csv.

df_iter = pd.read_csv('data.csv', chunksize=10000, iterator=True)

for iter_num, chunk in enumerate(df_iter, 1):
    print(f'Processing iteration {iter_num}')
    # do things with chunk
Run Code Online (Sandbox Code Playgroud)

或者更简单

for chunk in pd.read_csv('data.csv', chunksize=10000):
    # do things with chunk
Run Code Online (Sandbox Code Playgroud)

或者,如果您只想读取csv的特定部分,则可以使用skiprowsnrows选项从特定行开始,然后读取n行,如命名所示.