我有一个包含多个工作表的Excel文件,我想使用循环将每个工作表保存到单独的数据框中。
countries = ['Thailand', 'China']
for country in countries:
(country + '_data') = pd.read_excel(path, sheet_name = country)
但是我收到一条错误消息:
语法错误:无法分配给运算符
我知道分配不正确,但是如何建立一个正确的循环,该循环将为每个工作表生成单独的数据框?
最佳答案
更好的方法是
使用内置的pd.ExcelFile
方法
使用字典将工作表保存在单独的数据框中。
例如:
xl = pd.ExcelFile(file)
print(xl.sheet_names)
['China','Japan','Pakistan'...]
然后可以将它们分配给字典
d = {} # your dict.
for sheet in xl.sheet_names:
d[f'{sheet}']= pd.read_excel(xl,sheet_name=sheet)
然后您可以致电您的个人dfs
d['China']