如何在Tableau中统计多字符串共存行的字符串出现次数
解决Tableau中多列字符串出现次数统计问题
你的IF-ELSEIF逻辑只能返回每行第一个匹配的咒语,无法统计同一行内多个咒语的出现次数——因为单个计算字段每行只能输出一个值。以下两种方法可以解决这个问题:
方法1:为每个咒语单独创建计数字段
- 针对每个咒语列,单独创建计算字段,以「Avada Cadabra」为例:
IF [Avada Cadabra] = 1 THEN 1 ELSE 0 END
- 对所有咒语重复上述操作,然后将这些计算字段拖入视图,选择「总和」作为聚合方式,即可得到每个咒语的总出现次数。
方法2:将宽表转长表(推荐方案)
当前数据是宽格式(每个咒语对应一列),转为长格式后统计会更灵活:
- 选中所有咒语列([Avada Cadabra]、[Aloha amora]、[Depulso Levioso]等)
- 右键点击选中的列,选择「数据透视」,生成「透视字段名称」(存储咒语名称)和「透视字段值」(存储1/0标记)
- 新建计算字段过滤有效记录:
IF [透视字段值] = 1 THEN 1 ELSE 0 END
- 将「透视字段名称」拖到行或列功能区,把上述计算字段拖到标记卡的「文本」或「大小」区域,选择「总和」聚合,就能直观看到每个咒语的总出现次数。
这种方法的优势是后续新增咒语列时,无需重复创建计算字段,重新执行透视即可,还能直接生成条形图、柱状图等可视化对比各咒语的次数。
内容的提问来源于stack exchange,提问作者user20944254
相关产品推荐
相关产品推荐

