为 Excel 数据框所需的每一列迭代一个函数
Iterate a function for each column needed from Excel dataframe
我有下面的脚本,我想从列表中读取确定要打印的列,然后使用所述列下方的行中的数据合并 PDF 文件。
我的 model_types
列表包含 [model1]、[mode2] 等元素,数据框如下所示:
model1 model2 model3
0 File1.pdf File3.pdf File2.pdf
1 File2.pdf nan.pdf File2.pdf
2 File3.pdf nan.pdf File2.pdf
我想让它从 model_types
读取所需的模型,然后仅针对这些列迭代函数,生成每个 pdf 文档,其中包含列中各行的文件。 model1 将有一个包含 file1、file2 和 file2 的 PDF 文件,其中 model2 将只有 file3。
我收到以下错误:
FileNotFoundError: [Errno 2] No such file or directory: 'model1'
def merge_pdf(model_types: list[str]):
merger = PdfFileMerger()
for x in model_types:
merger.append(x)
merger.write("test{x}.pdf")
merger.close()
merge_pdf(model_types)
问题是您循环的数据只有列值而不是行值,因此只有它显示 model1 文件未找到错误。
model_types 不是列表,它是数据框。如果它是列表意味着您需要使用 pandas
转换数据框
from PyPDF2 import PdfFileMerger
def merge_pdf(model_types):
merger = PdfFileMerger()
for col_name in model_types:
for index, row in df.iterrows():
merger.append(row[col_name])
merger.write("test{x}.pdf")
merger.close()
merge_pdf(model_types)
我有下面的脚本,我想从列表中读取确定要打印的列,然后使用所述列下方的行中的数据合并 PDF 文件。
我的 model_types
列表包含 [model1]、[mode2] 等元素,数据框如下所示:
model1 model2 model3
0 File1.pdf File3.pdf File2.pdf
1 File2.pdf nan.pdf File2.pdf
2 File3.pdf nan.pdf File2.pdf
我想让它从 model_types
读取所需的模型,然后仅针对这些列迭代函数,生成每个 pdf 文档,其中包含列中各行的文件。 model1 将有一个包含 file1、file2 和 file2 的 PDF 文件,其中 model2 将只有 file3。
我收到以下错误:
FileNotFoundError: [Errno 2] No such file or directory: 'model1'
def merge_pdf(model_types: list[str]):
merger = PdfFileMerger()
for x in model_types:
merger.append(x)
merger.write("test{x}.pdf")
merger.close()
merge_pdf(model_types)
问题是您循环的数据只有列值而不是行值,因此只有它显示 model1 文件未找到错误。
model_types 不是列表,它是数据框。如果它是列表意味着您需要使用 pandas
转换数据框from PyPDF2 import PdfFileMerger
def merge_pdf(model_types):
merger = PdfFileMerger()
for col_name in model_types:
for index, row in df.iterrows():
merger.append(row[col_name])
merger.write("test{x}.pdf")
merger.close()
merge_pdf(model_types)