使用np.nan()查找每行和每列的平均值

2024-09-28 22:07:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含10列的df,其中包含15个不同国家2006年至2015年的GDP。我试图得到过去十年的平均GDP。例如,德国2006年至2015年的平均GDP。这是我尝试使用的代码:

avgGDP = pd.DataFrame(Top15,columns=['2006','2007','2008','2009', '2010', '2011', '2012', '2013', '2014', '2015'])
avgGDP['avg10'] = np.nanmean(avgGDP)

但是,我得到的每个国家的平均值相同,即德国1000000;西班牙100万;英国1000000等

关于如何获得每个国家的个人平均值,有什么想法吗

编辑:

以下是前15名的截图:

enter image description here


Tags: columns代码编辑dataframedfnp国家平均值
1条回答
网友
1楼 · 发布于 2024-09-28 22:07:56

你能过滤空值,然后运行一个平均值方法吗

df = (avgGDP.dropna( inplace = True )).mean()

在我看来,您正在对整个数据帧运行一个平均值,以获得一个数组,然后尝试将该数组生成一个列。更好的方法还可以是转置数据帧并作为列插入:

avgGDP = avgGDP.T
avgGDP['newRow'] = np.nanmean(avgGDP)
avgGDP.T

相关问题 更多 >