我有一个 Dataframe ,我想计算A和B的列平均值,A和B中的一些行是字符串“NA”,而其他行是numpy.float64如何计算列A和B,同时忽略这些“NA”?我试图设置numeric_only=True,然后它只返回我列C和ID。我希望A和B的平均值是6.6和2.6
Dataframe ({“id”:(1,2,3,4,5,6),“名称”:(“苹果”、“苹果”、“甜瓜”、"甜瓜"、“橙子”、“橙子”),“A”:(1、2、“不适用”、20、5、5)、“B”:(1、5、4、2、“不适用”、1)、“C”:(一、五、四、二、三、一)})
| 身份证|姓名|A类|B|C级|
| - ------|- ------|- ------|- ------|- ------|
| 1个|苹果|1个|1个|1个|
| 第二章|苹果|第二章|五个|五个|
| 三个|瓜|“不适用”|四个|四个|
| 四个|瓜|二十个|第二章|第二章|
| 五个|橙子|五个|“不适用”|三个|
| 六个|橙子|五个|1个|1个|
3条答案
按热度按时间au9on6nz1#
试试这个:
5vf7fwbs2#
由于
mean
可以跳过NaN值,因此可以使用to_numeric
并设置errors="coerce"
:错误{“忽略”、“引发”、“强制”},默认值为“引发”
*如果为
coerce
,则无效解析将设置为NaN。输出:
myzjeezk3#
因此: