python - 如何在 Python 数据框中读取数据 block ?

标签 python csv pandas dataframe chunks

我想将文件 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/

相关文章:

python - scipy.linalg.logm 产生错误,而 matlab 不会产生错误

python - 在 Python 中使类不可变的方法

python - python下拟合时选择步长

python - 重复属性的 Pandas 总和

sql - 将 csv 文件导入 postgresql

python - 删除数据框侧括号中的内容

python - 使用 SciLearn Kit 读取 Pandas 数据框时遇到问题

java - 使用 StringBuilder() 将数组解析为带标题的 CSV — 标题行问题

python - 将 json 数据转换为数据框

python - Pandas 查找并插入缺失值