【发布时间】:2022-01-07 07:00:59
【问题描述】:
我是 python 新手,请在我的代码中提供帮助。我正在尝试将多个 excel 文件中的数据附加到一个文件中。但是出了点问题……
import pandas as pd
import argparse
import os
parser = argparse.ArgumentParser(description="extract data from machine")
parser.add_argument("-d","--data", dest="data", required =True, action = "store", type=argparse.FileType("r", encoding="latin-1"), nargs="+",
help="the excel file you want to analysis")
parser.add_argument("-o","--outFileNamePrefix",action="store",default="foo",dest="out",
help="the output file name")
args = parser.parse_args()
output = pd.DataFrame(columns=['Target','Sample','SQ Mean', 'SQ Std. Dev'])
output.to_excel("%s_%s.xlsx"%(args.out), index=False)
filenames = args.data
for filename in filenames:
for line in filename:
data = pd.read_excel(args.data)
data = data.to_excel(os.path.join("%s_%s.xlsx"%(args.out)))
我有这个错误
ValueError: Invalid file path or buffer object type: <class 'list'>
任何建议都会有所帮助!
【问题讨论】:
-
不要使用
FileType作为data参数。它应该是一个简单的字符串,一个文件名,而不是一个打开的文件。 -
为什么是这两个循环?
for file in args.data: data=pd.read_excel(file)在按照@hpaulj 的建议将该参数设为字符串之后会更有意义。 -
请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。