【问题标题】:How to calculate mean by skipping String Value in Numeric Column?如何通过跳过数字列中的字符串值来计算平均值?
【发布时间】:2020-03-17 18:59:48
【问题描述】:
Name  Emp_ID     Salary  Age
0 John   Abc     21000   31
1 mark   Abn     34000   82
2 samy   bbc     thirty  78
3 Johny  Ajc     21000   34
4 John   Ajk    2100.28  twentyone

如何在不更改该列中的字符串值的情况下计算“年龄”列的平均值。基本上我想遍历年龄列的数值并给出该值列表的平均值。如果有任何字符串,它应该跳过那个值?

【问题讨论】:

    标签: python-3.x pandas python-2.7 for-loop functional-programming


    【解决方案1】:

    pd.to_numeric 与参数errors='coerce' 一起使用,如果无法将值转换为数字,则将值转换为NaN。然后使用Series.mean:

    pd.to_numeric(df['Age'],errors='coerce').mean()
    
    #Out
    56.25
    

    【讨论】:

    • 感谢您的解决方案。但是如果我输入 errors = 'coerce' 它会将值转换为 NaN,但值不应该改变。
    • 您的预期输出是什么?因为我们没有覆盖您的列,所以值不会就地更改。
    • 是的,我们实际上并没有覆盖它。我明白了,谢谢
    猜你喜欢
    • 2015-03-26
    • 2020-12-19
    • 2014-08-05
    • 1970-01-01
    • 2022-01-15
    • 2013-10-21
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    相关资源
    最近更新 更多