Google Data Studio 中的直方图和分布

Posted

技术标签:

【中文标题】Google Data Studio 中的直方图和分布【英文标题】:Histogram and distribution in Google Data Studio 【发布时间】:2020-06-30 15:43:12 【问题描述】:

我有大量记录显示来自各个区域和交换的通话时长。该表有 3 个关键字段,如下所示:

Calling_number 区域 call_duration(s)

我需要使用 Data Studio 在 1 秒或 5 秒的桶中绘制基于呼叫分布的持续时间。

虽然 Data Studio 中没有特定的功能来创建包含大量 bin 的直方图,但我看到有人以前做过。

任何有关如何执行此操作的帮助或建议将不胜感激。

【问题讨论】:

【参考方案1】:

您可以使用 BigQuery 中提供的 RANGE_BUCKET 数学函数。此函数扫描排序数组并返回给定点的上限从 0 开始的位置。如果您需要对数据进行分组以构建分区、直方图、业务定义的规则等,此功能会很有用。

下面的年龄直方图非常简单的例子

WITH students AS
(
  SELECT 9 AS age UNION ALL
  SELECT 20 AS age UNION ALL
  SELECT 25 AS age UNION ALL
  SELECT 31 AS age UNION ALL
  SELECT 32 AS age UNION ALL
  SELECT 33 AS age
)
SELECT RANGE_BUCKET(age, [10, 20, 30]) AS age_group, COUNT(*) AS count
FROM students
GROUP BY 1

有输出

+--------------+-------+
| age_group    | count |
+--------------+-------+
| 0            | 1     |
| 2            | 2     |
| 3            | 3     |
+--------------+-------+

【讨论】:

感谢您的提示,但不幸的是,这不适用于我的数据。我有数十万条持续时间不同的通话记录。假设通话时间范围从 0 到 200 秒及以上,我想制作一个 5 秒 bin(x 轴)的直方图。在查询中手动编写 36 个或更多存储桶是不切实际的。另外,如果我的数据是十进制的,假设我有值范围从 50.00 到 65.00 的记录,我想制作 bin 大小为 0.5 的直方图。有什么建议可以有效地完成上述工作? 您的问题很笼统,需要问路 - Any help or suggestion on how to do this would be appreciated - 所以我的回答提供了它。在实施时 - 谁说您需要手动编写 36 个(或任何可能的)存储桶?我没有。都可以编码。无论如何 - 我认为我的答案仍然相关 - 所以至少考虑投票(如果还没有):o)。同时,如果您将发布新的更具体的问题以及所有相关详细信息等。我很乐意回答问题的代码匹配详细信息。 好的。我将单独发布更具体的问题

以上是关于Google Data Studio 中的直方图和分布的主要内容,如果未能解决你的问题,请参考以下文章

如何过滤 Google Data Studio 中的特定字段?

如何更改 Google Data Studio 中的文本值?

Visual Data Studio 中的 google bigquery 错误声明变量

Data Studio Community Connector - 如何从 Google Cloud Storage 中的 CSV 文件中获取数据?

Google Data Studio:将用户输入写回 Google Big Query 表

Google Data Studio 数据凭据问题