You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas DataFrame中统计'MISSED'值?

统计Pandas DataFrame中的'MISSED'值

当然可以搞定这个需求!Pandas虽然没有专门针对'MISSED'的内置统计函数,但用现有工具就能轻松实现,思路和你用df.isnull().sum()统计NaN完全一致~

我给你几种实用的操作方法:

  • 按列统计'MISSED'数量:和isnull()的逻辑一样,我们先用eq('MISSED')判断每个元素是否等于'MISSED'(返回布尔值的DataFrame),再用sum()累加每列的匹配次数:

    df.eq('MISSED').sum()
    

    这个操作会返回一个Series,每个值对应对应列中'MISSED'的总数。

  • 统计整个DataFrame的'MISSED'总数:如果需要知道整个表格里一共有多少个'MISSED',只需要在上面的基础上再套一层sum(),或者直接操作底层数组提升效率:

    # 两层sum累加列的结果
    df.eq('MISSED').sum().sum()
    # 更高效的写法:直接操作numpy数组
    (df == 'MISSED').values.sum()
    
  • 针对特定列统计:如果只需要统计某一列的'MISSED'数量,直接指定列名即可:

    df['目标列名'].eq('MISSED').sum()
    

实际示例演示

假设我们有这样一个DataFrame:

import pandas as pd

data = {
    '订单状态': ['MISSED', '已完成', 'MISSED', None],
    '支付状态': ['已支付', 'MISSED', '已支付', 'MISSED']
}
df = pd.DataFrame(data)

运行df.eq('MISSED').sum()会得到:

订单状态    2
支付状态    2
dtype: int64

如果担心'MISSED'有大小写或空格问题(比如missed、MISSED),可以先做统一格式处理:

df.apply(lambda col: col.str.strip().str.upper()).eq('MISSED').sum()

内容的提问来源于stack exchange,提问作者b0chData

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:40:50