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

Excel是否有批量统计人员对应类型数的函数?或R中类似方法

解决方案

针对你的需求——统计每个人员对应的非零事件的唯一type数量,以下分Excel版本给出高效公式,无需手动去重或逐个处理:

一、Excel 365/2021(支持动态数组)

一次性统计所有人员

在任意空白单元格(比如B10)输入以下公式,会自动生成所有人员的统计结果:

=BYCOL(B2:D8, LAMBDA(col, COUNTA(UNIQUE(FILTER(A2:A8, col>0)))))

公式原理:

  1. FILTER(A2:A8, col>0):筛选出当前人员列中事件计数>0的所有type值
  2. UNIQUE(...):对筛选后的type去重,得到该人员对应的唯一type列表
  3. COUNTA(...):统计去重后的type数量
  4. BYCOL(...):遍历所有人员列(B2:D8),对每一列应用上述逻辑,一次性输出所有结果

单个人员验证(可选)

如果只需要单独统计某个人(比如Person A),公式更简洁:

=COUNTA(UNIQUE(FILTER(A2:A8, B2:B8>0)))

二、旧版Excel(无动态数组支持)

单个人员统计(数组公式)

针对Person A,在空白单元格输入以下公式后,按Ctrl+Shift+Enter触发数组计算:

=SUM(1/COUNTIFS(A2:A8, A2:A8, B2:B8, ">0"))

公式原理:

  1. COUNTIFS(A2:A8, A2:A8, B2:B8, ">0"):统计每个type在当前人员列中非零的出现次数
  2. 1/...:将重复出现的type转换为分数(比如某type出现2次,贡献2个1/2,总和为1)
  3. SUM(...):求和后得到该人员对应的唯一type数量

批量处理

将上述公式中的B2:B8替换为对应人员的列(比如Person B用C2:C8),复制公式到其他人员的统计单元格即可。

针对你的样本数据验证结果

  • Person A:3(对应type b、d、c)
  • Person B:4(对应type a、b、c、d)
  • Person C:3(对应type a、c、d)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 16:35:22