python-3.x 如何循环遍历字典,并使用key应用函数:值对作为参数

hlswsv35  于 2022-11-26  发布在  Python
关注(0)|答案(2)|浏览(99)
Dictionary = {File1: "location1", File2: "location2", File3: "location3"}

def fancy_function1(location, file):        
  df = pd.read_csv(location)
  df["new_column"] = df[file]
return df

需要编写此for循环所需的帮助或任何其他建议

for key in Dictionary:
   ##pass key value pairs into function
    df = fancy_function(key, value)
    return df

然后我想合并所有3个 Dataframe (从fancy_function()创建)或将每个 Dataframe 分配给变量,例如df1、df2、df3等。

ffdz8vbo

ffdz8vbo1#

我不知道这是否有用。

for key in Dictionary:
    value = Dictionary[key]
    df = fancy_function(key, value)
    return df

对我来说,这很奇怪,因为你是在一个函数之外返回的,如果你想创建多个数据框,我建议如下。

dataframes = []
for key in Dictionary:
    value = Dictionary[key]
    df = fancy_function(key, value)
    dataframes.append(df)

append方法附加到一个列表,这样你就有了一个包含所有 Dataframe 的列表,要小心,因为如果你有很多 Dataframe 或者有些 Dataframe 很大,这会消耗很多内存。

zaqlnxep

zaqlnxep2#

for key in Dictionary:
##pass key value pairs into function
    if df in locals():
        df = fancy_function(key, value)
    else
        df=pd.concat([df, fancy_function(key, value)])
    return df

相关问题