[英]How to count a range of values in datastudio
我正在尝试将我在工作表中制作的报告转换为最新的 datastudio 工具。 在我的工作表中,我有一个表格,其中有几列保存相关数据(这是因为每一行可能有多个值,所以我使用“将文本拆分为列”function 来表示)。
我所拥有的是类似于:
ID | 成分 | 组件 1 | 组件 2 |
---|---|---|---|
101 | 木头 | 金属 | 金子 |
102 | 金属 | 铜 | |
103 | 木头 | 金子 | 金属 |
在我的 excel 中,我有一个公式来计算某个组件显示的时间,方法是使用=COUNTIF(<range>,<string>)
因此,使用上面的公式,我有类似的东西:
成分 | 数数 |
---|---|
木头 | 2个 |
金属 | 3个 |
铜 | 1个 |
金子 | 2个 |
我希望能够在 datastudio 中构建相同的东西。 原来,由于组件被分成列,我只能使用一个维度,结果只显示第一列的计数。
我想知道是否有一种简单的方法可以做到这一点。 我的原始数据源是这样的:
ID | 成分 |
---|---|
101 | 木材;金属;金 |
102 | 元;铜 |
103 | 木材;黄金;金属 |
也许直接使用以前的格式更容易,但同样,在这种情况下使用组件只计算第一次出现而不计算整个字符串。
目前,我能想到的唯一解决方案是将文本拆分为行而不是列,但使用 Google 表格无法实现,或者至少我不知道。
有人可以知道如何做到这一点吗?
谢谢!
我在这里添加最小的可重现示例。 这是我拥有的电子表格(示例)和目前我正在使用的当前报告(内置表格): 现在,我想使用 datastudio 获得相同的报告(加上更多内容)。 这是我在数据工作室中的报告示例。 正如您将看到的,组件的record count
在 DataStudio 中并不准确。
这是一个初步的答案。 如果我们喜欢它,我将对其进行润色,否则将其删除。
考虑下表:
范围 A2:B4 包含我感兴趣的数据。 第 7:10 行显示了我认为您正在寻找的结果。 创建它的机制是单元格 A6 的值,其中包含:
=ARRAYFORMULA(QUERY(FLATTEN(SPLIT(B2:B4,";")), "SELECT Col1, COUNT(Col1) WHERE Col1 is not null GROUP BY Col1"))
在最高级别,该公式将每个带分隔符的文本项拆分到它们自己的单元格中,然后将所有这些单元格展平到一列中,然后我们针对该列运行 SQL 查询以对工作表进行分组和计数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.