python-3.x - 在列表项之后设置熊猫名称
问题描述
我有多个包含数据的 xlsx 文件,我想将它们导入到 Python 中的单独数据帧中。
目前,我想从 2014 年 9 月和 2014 年 10 月导入电子表格。电子表格每年都在不同的文件夹中,文件名在 month_list 变量中如下所示。所需的数据框名称是“2014_09_sept_df”和“2014_10_okt_df”
month_list = ['09_sept', '10_okt']
df_string_list=[]
k = 0
for i in range(2014,2015):
dirstring = 'C:/Users/folder/' + str(i)
os.chdir(dirstring)
for j in month_list:
filestring = dirstring + '/' + j + '.xlsx'
my_file = Path(filestring)
if my_file.exists():
df_string_list.append(str(i) + '_' + j + '_df')
df_string_list[k] = pd.read_excel(filestring)
k+=1
我的问题是我已经创建了 df_string_list 列表来保存数据框名称,并且当我想用列表中的该项目命名数据框时,使用此命令将数据框放入列表中,而不是创建数据框:
df_string_list[k] = pd.read_excel(filestring)
解决方案
如果我理解正确,我建议您使用字典而不是列表:
df_string_list={} #create an empty dict
for i in range(2014,2015):
dirstring = 'C:/Users/folder/' + str(i)
os.chdir(dirstring)
for j in month_list:
filestring = dirstring + '/' + j + '.xlsx'
my_file = Path(filestring)
if my_file.exists():
df_string_list[str(i) + '_' + j + '_df'] = pd.read_excel(filestring)
例如,在这种情况下,df_string_list['2014_09_sept_df']
包含来自正确文件的 Dataframe。
要了解您的 dict 中加载的所有数据框名称,请使用:
for dfname in df_string_list.keys():
print(dfname)
#print(df_string_list[dfname] #uncomment to print the desired df
推荐阅读
- android - 手动 apk 签名 (jarsigner) 与自动 apk 签名 (android studio) - 结果是不同的 APK
- angular - 一旦从另一个组件获取数据后如何重新加载组件,即使它已经以角度加载
- python - 如何成对打印数字...?
- html - 需要帮助从网页中抓取特定的 span 标签
- python - 从谷歌搜索中抓取链接,然后抓取这些链接以使用 Scrapy 将正文/文本内容提取到文件中
- networking - traceroute 如何从目的地接收动作?
- ubuntu - 使用 TPM 测量的每个哈希的文件路径
- interpolation - 如何根据正态分布的已知百分位数计算值的 z 分数
- azure - 如何连接到 Azure Synapse?
- shader - HLSL:如何将 unsigned int RGBA 转换为 float4?