Python+Pandas有办法单独保存小块文件吗



我对编程非常陌生,目前我正在尝试将CSV文件分解为一个小片段,并将这些片段保存为单独的文件。我本来可以用一种非常迂回的方式来完成这项工作,但现在我想知道如何编写一个函数来为我完成这项任务。这是我现在的代码:

import pandas as pd
def chunky(file, chunksize, iterator, rounds):
df = pd.read_csv(file, chunksize = chunksize, iterator = iterator)
count = 0
while count < rounds:
count += 1
file = next(df)
file.to_csv("output.csv")

然而,当我这样做时,它会将输出打印为一个文件,但我希望保存多个单独的文件。感谢您的帮助!提前非常感谢:(

不要同时使用chunksizeiterator

还要确保为每个子文件创建一个新的输出文件。

下面的代码将创建一组长达2000行的新文件。新的输出文件以输入文件命名,但带有一个以零开头的数字(如果需要更多或更少的文件,请相应地更改5(。

import os
reader = pd.read_csv(filename, chunksize=2000)
for i, df in enumerate(reader):
output = os.path.splitext(filename)[0] + f'-{i+1:05d}.csv'
df.to_csv(output, index=False)

最新更新