用numpy计算平均值

时间:2016-10-01 07:11:03

标签: python python-2.7

我正在尝试计算从2006年到2015年每个国家的GNP平均值。但是当我使用平均函数应用聚合时,它不会计算从2006年到2015年的平均值。相反,它只显示每个国家的值。年。请告诉我出了什么问题?我可以按国家排序,但意思是不会对数据进行处理。

wb_indicator = 'NY.GNP.ATLS.CD'
start_year = 2006
end_year = 2015

df_ex = wb.download(indicator = wb_indicator,
                  country = ['all'],
                  start = start_year,
                  end = end_year)

df_ex1 = df_ex.reset_index()
df_ex1.groupby(['country']).agg({'NY.GNP.ATLS.CD': [np.mean]})

df_ex1.head(20)

输出:

  

country year NY.GNP.ATLS.CD 0 Arab World 2015 2.767920e + 12 1 Arab   世界2014 2.897113e + 12 2阿拉伯世界2013 2.832769e + 12 3阿拉伯   World 2012 2.590610e + 12 4 Arab World 2011 2.190786e + 12 5 Arab   世界2010 2.055967e + 12 6阿拉伯世界2009 1.932056e + 12 7阿拉伯   世界2008 1.858270e + 12 8阿拉伯世界2007 1.547924e + 12 9阿拉伯   World 2006 1.312967e + 12 10加勒比小国2015年6.680302e + 10   11加勒比小国2014年6.664219e + 10

1 个答案:

答案 0 :(得分:0)

这应该有效

import pandas as pd
import wbdata as wb
import datetime


wb_indicator = 'NY.GNP.ATLS.CD'
data_date = (datetime.datetime(2006, 1, 1), datetime.datetime(2015, 1, 1))

data = wb.get_data(wb_indicator, data_date=data_date, pandas=True)
gnp_means = data.reset_index().groupby('country').mean()