首页 > 解决方案 > 为什么我在函数中的附加数据框不起作用?

问题描述

这是我的代码的一部分:

df3      = pd.DataFrame(columns=["colA","colB"])

def someFunction(filePath,file,df): 
    df2      = pd.DataFrame(columns=["colA","colB"])
    df1      = pd.read_csv(filePath,header=0)
    var      = ["foo1","bar1"]

    df2['colA'] = ["foo2","bar2"]
    df2['colB'] = var

    df = df.append(df2)
    df1 = pd.DataFrame()
    df2 = pd.DataFrame()
    return df

for root, dirs, fileList in os.walk(someDir):
    for file in fileList:
        if <someCondition>:
            someFunction(filePath,file,df3)

print df3

在运行代码时,我没有看到 df2 被附加到 df3。相反,函数内 df3 的值与函数外的 df3 相同empty dataframe

如何始终将 df2 附加到 df3 并让 df3 为每个file处理的增长?

标签: pythonpandasfunctiondataframe

解决方案


推荐阅读