如何用唯一标识符列表通过For循环创建FRED API拉取的DataFrame
解决FRED API循环拉取并命名DataFrame的问题
推荐方案:使用字典存储DataFrame
用字典统一管理多个DataFrame是更规范、易维护的方式,能避免命名冲突和变量混乱:
import fredpy quarterly_list = ['GDP', 'M1V', 'M2V'] # 初始化空字典用于存储所有拉取到的DataFrame fred_datasets = {} for series_id in quarterly_list: # 以series ID作为字典的key,存储对应的数据 fred_datasets[series_id] = fredpy.get_series( seriesID=series_id, start='2005-01-01', end='9999-12-31', units='lin' )
使用时直接通过字典key访问对应数据集,比如:
# 查看GDP数据前几行 print(fred_datasets['GDP'].head())
可选方案:动态创建独立变量
如果确实需要创建以series ID命名的独立变量,可以通过globals()实现,但不推荐这种方式(容易覆盖现有变量、不利于代码维护):
import fredpy quarterly_list = ['GDP', 'M1V', 'M2V'] for series_id in quarterly_list: # 动态创建全局变量,变量名等于series ID globals()[series_id] = fredpy.get_series( seriesID=series_id, start='2005-01-01', end='9999-12-31', units='lin' )
执行后即可直接使用GDP、M1V、M2V这些变量访问对应的DataFrame。
内容的提问来源于stack exchange,提问作者Red
相关产品推荐
相关产品推荐

