使用 Tabula 阅读 PDF 后,我有一些数据框被拆分,因为它们跨越多个页面。我想连接它们并删除标题行,以便恢复整个表。我想每个文档的表格数量都会改变,所以这似乎应该涵盖表格被拆分的任何场景。
我知道我想要一个 for 循环遍历列表并检查下一个数据帧是否具有相同的列数。如果是这样,则应将两者连接起来。手动连接(使用 print(pd.concat([df_list[12],df_list[13],df_list[14]])))有效,因此只需弄清楚如何编写即可。
这是我的近似值:
import pandas as pd
import tabula
df_list=read_pdf("test.pdf",multiple_tables=True,lattice=True,pages='all',encoding='utf-8',spreadsheet=True)
for i in df_list:
if i.shape[1] = (i+1).shape[1]:
pd.concat([i,(i+1)])
我收到错误“TypeError:无法操作 1,块值必须是 str,而不是 int”,但我不确定我在用这个 for 循环做什么。