数据框列的平均值

Ram*_*i.K 2 python average mean dataframe pandas

我想得到每个国家多年来的平均 GDP,列 2006、2007...2015 包含 GDP 数字......我的代码返回一个错误,意思是(轴 = 1)需要至少 1 个变量,和 1已分配给它......这很奇怪......我也发现我们使用平均值而不是平均值很奇怪,但找不到groupby的平均值函数

这是我的代码

    Top15 = ANSWER
    Top15 = Top15[['Country', '2006', '2007', '2008', '2009', '2010', 
    '2011', '2012', '2013', '2014', '2015']]
    return Top15.groupby('Country').agg({"avg": np.mean(axis=1)})
Run Code Online (Sandbox Code Playgroud)

jpp*_*jpp 5

GroupBy在这里没有必要,因为您正在执行计算而不是聚合。你可以只使用pd.DataFrame.mean. 这是一个最小的例子:

df = pd.DataFrame({'Country': ['UK', 'US'],
                   '2006': [1, 2],
                   '2007': [3, 4],
                   '2008': [5, 6]})

df['mean'] = df[['2006', '2007', '2008']].mean(1)

print(df)

   2006  2007  2008 Country  mean
0     1     3     5      UK   3.0
1     2     4     6      US   4.0
Run Code Online (Sandbox Code Playgroud)