我想将文件 f 分块读取到数据帧中。这是我使用的代码的一部分。
for i in range(0, maxline, chunksize):
df = pandas.read_csv(f,sep=',', nrows=chunksize, skiprows=i)
df.to_sql(member, engine, if_exists='append',index= False, index_label=None, chunksize=chunksize)
我得到错误:
pandas.io.common.EmptyDataError: No columns to parse from file
该代码仅在 chunksize >= maxline(即文件 f 中的总行数)时有效。但是,就我而言,chunksize<=maxline。
请告知修复方法。
最佳答案
我认为在read_csv
中使用参数chunksize
会更好.另外,使用 concat
使用参数 ignore_index
,因为需要避免 index
中的重复:
chunksize = 5
TextFileReader = pd.read_csv(f, chunksize=chunksize)
df = pd.concat(TextFileReader, ignore_index=True)
见 Pandas docs .
关于python - 如何在 Python 数据框中读取数据 block ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39384539/