gpt4 book ai didi

Python 循环遍历 excel 工作表,将工作表名称添加到列表中,然后全部连接

转载 作者:太空宇宙 更新时间:2023-11-04 02:24:21 35 4
gpt4 key购买 nike

我正在遍历 Excel 工作表并将它们附加到列表中。循环结束后,我使用 Pandas 连接到单个数据帧。我遇到的问题是将工作表名称添加到适当的列表中。

# infile is a filepath variable    
xls = xlrd.open_workbook(infile, on_demand=True)



dfList = []
for sheet_name in xls.sheet_names():
df = pd.read_excel(infile, sheet_name, header = 0)
#df['Well_name'] = sheet_name
dfList.append(df)
print(sheet_name + " appended.")
#time.sleep(2)
print("Loop complete")
# Concatenating the appended lists
dfs = pd.concat(dfList, axis=0)

我尝试在 df 中创建一个新列,但这造成了长度不匹配,而且它也不起作用,因为它不断被重写为循环中的最后一个工作表名称。

有什么想法或建议吗?

最佳答案

您似乎遇到了一些范围界定问题。避免此问题的一种方法是使用列表理解。您还可以使用 pd.DataFrame.assign 在您的列表理解中添加一个系列:

dfList = [pd.read_excel(infile, sheet_name, header=0).assign(Well_name=sheet_name) \
for sheet_name in xls.sheet_names()]

dfs = pd.concat(dfList, axis=0)

关于Python 循环遍历 excel 工作表,将工作表名称添加到列表中,然后全部连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50827169/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com