Python 从文件夹中读取excel文件,从工作表1中提取单元格,并将值附加到新的excel工作表中
我在一个文件夹中有大约100个excel文件。我需要从excel文件的sheet-1中提取一个单元格,比如name columnPython 从文件夹中读取excel文件,从工作表1中提取单元格,并将值附加到新的excel工作表中,python,excel,Python,Excel,我在一个文件夹中有大约100个excel文件。我需要从excel文件的sheet-1中提取一个单元格,比如name columnD6,并将其输出到新的excel文件/工作表中。我已经跟踪了几个这样的问题,但未能找到所需的输出。这就是我运行以下程序时遇到的问题` TypeError: cannot concatenate a non-NDFrame object ` 您的错误表示只能将一个数据帧与另一个数据帧合并。使用xlrd读取单元格时,不会得到df对象。因此,要么将单个单元格设置为数据帧,要
D6
,并将其输出到新的excel文件/工作表中。我已经跟踪了几个这样的问题,但未能找到所需的输出。这就是我运行以下程序时遇到的问题`
TypeError: cannot concatenate a non-NDFrame object
`
您的错误表示只能将一个数据帧与另一个数据帧合并。使用
xlrd
读取单元格时,不会得到df对象。因此,要么将单个单元格设置为数据帧,要么暂时存储它,然后再设置数据帧
像这样的东西(未经测试)应该可以做到这一点
all_data = [] # list
for file in files:
df = pd.read_excel(file, sheetname='sheet-1')
all_data.append(df.iloc[5,3])
all_data = pd.DataFrame(all_data) # dataframe
all_data.to_excel('all_data.xlsx')
或者也可以使用其他库来实现同样的功能,例如openpyxl。如果您一直使用pandas to来处理excel,我建议您尝试使用pywin32软件包处理excel文件
all_data = [] # list
for file in files:
df = pd.read_excel(file, sheetname='sheet-1')
all_data.append(df.iloc[5,3])
all_data = pd.DataFrame(all_data) # dataframe
all_data.to_excel('all_data.xlsx')