python – 如何获取数据帧列值的平均值

                    A        B
DATE                 
2013-05-01        473077    71333
2013-05-02         35131    62441
2013-05-03           727    27381
2013-05-04           481     1206
2013-05-05           226     1733
2013-05-06           NaN     4064
2013-05-07           NaN    41151
2013-05-08           NaN     8144
2013-05-09           NaN       23
2013-05-10           NaN       10

说我有上面的数据框。使用与A和B列平均值相同的索引,最简单的方法是什么?平均需要忽略NaN值。扭转的是,该解决方案需要灵活地将新列添加到数据帧。

我最近来的是

df.sum(axis=1) / len(df.columns)

然而,这似乎并不忽视NaN值

(注意:我仍然对大熊猫图书馆有点新鲜,所以我猜测有一个明显的方法来做到这一点,我有限的大脑根本看不到)

简单地使用df.mean()将对NaNs做正确的事情(tm):

>>> df
                 A      B
DATE                     
2013-05-01  473077  71333
2013-05-02   35131  62441
2013-05-03     727  27381
2013-05-04     481   1206
2013-05-05     226   1733
2013-05-06     NaN   4064
2013-05-07     NaN  41151
2013-05-08     NaN   8144
2013-05-09     NaN     23
2013-05-10     NaN     10
>>> df.mean(axis=1)
DATE
2013-05-01    272205.0
2013-05-02     48786.0
2013-05-03     14054.0
2013-05-04       843.5
2013-05-05       979.5
2013-05-06      4064.0
2013-05-07     41151.0
2013-05-08      8144.0
2013-05-09        23.0
2013-05-10        10.0
dtype: float64

您可以使用df [[“A”,“B”]]。如果有其他列要忽略,则表示(轴= 1)。

http://stackoverflow.com/questions/16689514/how-to-get-the-average-of-dataframe-column-values

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:python – 如何获取数据帧列值的平均值