我希望加载到.csv
的两个DataFrames
个文件:
def loader(y):
return pd.read_csv(y, header='infer', encoding="ISO-8859+-1")
names = ['currency', 'debt_ratio']
for name in names:
i = loader(name +'.csv')
我希望DataFrame
的名称与.csv
文件的名称相同。但是,每当我尝试下面的内容时,只需将DataFrame
命名为“name”:
for name in names:
name = loader(name +'.csv')
我很欣赏这可能是一个非常简单的解决方法 - 但我花了好几个小时试图解决它无济于事。
答案 0 :(得分:2)
安全方法是使用字典:
df_dict = {}
for name in names:
df_dict[name] = loader(name +'.csv')
字典将您的csv名称映射到内存中的实际数据帧。这是安全的,不会污染globals()
。
作为如何使用此功能的说明,如果您想引用currency
的特定数据帧,请使用df_dict['currency']
:
df_temp = df_dict['currency']