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

如何统计含390+列的表格中值'Y'的出现总次数?

没问题!面对这么多列的表格,手动统计肯定不现实,我给你几个不同工具的高效解决方案,选你顺手的用就行:

方法1:用Excel(适合非编程用户)
  • 找一个空白单元格,输入公式:=SUMPRODUCT(--(A1:ZZ1000="Y"))
    • 注意:把A1:ZZ1000替换成你表格的实际数据范围(比如你的数据到第FH列、第500行,就改成A1:FH500);--的作用是把“等于Y”的布尔判断结果转成数字(符合条件的变1,不符合的变0),SUMPRODUCT会自动把所有1加起来,得到总次数。
  • 如果表格有表头,要么确保表头里没有'Y',要么把范围调整成从数据行开始(比如A2:FH500)。
方法2:用Python(适合编程用户,超大数据也能快速处理)

如果你的数据存在CSV/Excel文件里,用pandas库可以一键搞定:

import pandas as pd

# 读取数据:CSV用read_csv,Excel用read_excel
df = pd.read_csv("your_data_file.csv")  # 替换成你的文件路径

# 统计所有列中'Y'的总次数
total_y = (df == 'Y').sum().sum()

print(f"表格中'Y'的总次数是:{total_y}")
  • 逻辑很简单:第一遍sum()统计每一列里'Y'的数量,第二遍sum()把所有列的统计结果加总,直接得到总数。
方法3:用SQL(如果数据存在数据库中)

假设你的表名叫target_table,可以用CASE语句累加每列的'Y'数量:

SELECT SUM(
    CASE WHEN column_1 = 'Y' THEN 1 ELSE 0 END +
    CASE WHEN column_2 = 'Y' THEN 1 ELSE 0 END +
    -- 依次把所有390多列都按这个格式写进去
    CASE WHEN column_390 = 'Y' THEN 1 ELSE 0 END
) AS total_y_count
FROM target_table;
  • 如果不想手动写390多个CASE,可以用数据库的系统表生成动态SQL。比如在MySQL里,你可以查询information_schema.columns获取所有列名,自动拼接出上面的语句,省不少力气。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 10:14:46