【发布时间】:2018-11-04 22:20:55
【问题描述】:
我有几个数据帧,我在这些数据帧上执行相同的功能 - 为特定列(PurchasePrice)提取平均值、几何平均值、中位数等,由另一列(GORegion)中的组组织。目前我只是为每个数据帧分别执行此操作,因为我无法弄清楚如何在 for 循环中执行此操作并为每个数据帧上执行的每个函数保存单独的数据系列。
即我这样执行中位数:
regmedian15 = pd.Series(nw15.groupby(["GORegion"])['PurchasePrice'].median(), name = "regmedian_nw15")
我想为 [nw15, nw16, nw17] 的数据框列表执行此操作,为每个数据框提取相同的变量输出。
我尝试过类似的方法:
listofnwdfs = [nw15, nw16, nw17]
for df in listofcmldfs:
df+'regmedian' = pd.Series(df.groupby(["GORegion"])
['PurchasePrice'].median(), name = df+'regmedian')
但它说“不能分配给操作员”
我认为重点是我不知道如何使用我输入到 for 循环中的数据帧的名称来创建单独的输出变量名称。我只想要一个 for 循环函数,它分别为列表中的每个数据帧生成我的中值输出作为系列,然后我可以为均值等执行此操作。
非常感谢您的帮助!
【问题讨论】:
标签: python loops variables for-loop dataframe