Amazon web services 快视中的阿夫戈弗

Amazon web services 快视中的阿夫戈弗,amazon-web-services,business-intelligence,calculated-columns,amazon-quicksight,Amazon Web Services,Business Intelligence,Calculated Columns,Amazon Quicksight,我有2019年每个月的数据,但只有2020年9月的数据。每行包含一个对应于日历月份的MonthNo.,以及一个用户ID条目。看起来像这样 | Month | Year | ID | MonthNo. | |-----------|------|--------|----------| | January | 2019 | 611330 | 01 | | January | 2019 | 174519 | 01 | | January | 201

我有2019年每个月的数据,但只有2020年9月的数据。每行包含一个对应于日历月份的MonthNo.,以及一个用户ID条目。看起来像这样

| Month     | Year | ID     | MonthNo. |
|-----------|------|--------|----------|
| January   | 2019 | 611330 | 01       |
| January   | 2019 | 174519 | 01       |
| January   | 2019 | 380747 | 01       |
| February  | 2019 | 882347 | 02       |
| February  | 2019 | 633797 | 02       |
| February  | 2019 | 863219 | 02       |
| March     | 2019 | 189924 | 03       |
| March     | 2019 | 241922 | 03       |
| March     | 2019 | 563335 | 03       |
| April     | 2019 | 648660 | 04       |
| April     | 2019 | 363710 | 04       |
| April     | 2019 | 606284 | 04       |
| May       | 2019 | 296508 | 05       |
| May       | 2019 | 287650 | 05       |
| May       | 2019 | 599909 | 05       |
| June      | 2019 | 513844 | 06       |
| June      | 2019 | 891633 | 06       |
| June      | 2019 | 138250 | 06       |
| July      | 2019 | 126235 | 07       |
| July      | 2019 | 853840 | 07       |
| July      | 2019 | 713104 | 07       |
| August    | 2019 | 180511 | 08       |
| August    | 2019 | 451735 | 08       |
| August    | 2019 | 818095 | 08       |
| September | 2019 | 512621 | 09       |
| September | 2019 | 674079 | 09       |
| September | 2019 | 914015 | 09       |
| October   | 2019 | 132859 | 10       |
| October   | 2019 | 560572 | 10       |
| October   | 2019 | 272557 | 10       |
| November  | 2019 | 984001 | 11       |
| November  | 2019 | 815688 | 11       |
| November  | 2019 | 902748 | 11       |
| December  | 2019 | 880285 | 12       |
| December  | 2019 | 167629 | 12       |
| December  | 2019 | 772039 | 12       |
| January   | 2020 | 116886 | 01       |
| January   | 2020 | 386078 | 01       |
| February  | 2020 | 291060 | 02       |
| February  | 2020 | 970032 | 02       |
| March     | 2020 | 907555 | 03       |
| March     | 2020 | 560827 | 03       |
| April     | 2020 | 938039 | 04       |
| April     | 2020 | 721640 | 04       |
| May       | 2020 | 131719 | 05       |
| May       | 2020 | 415596 | 05       |
| June      | 2020 | 589375 | 06       |
| June      | 2020 | 623663 | 06       |
| July      | 2020 | 577748 | 07       |
| July      | 2020 | 999572 | 07       |
| August    | 2020 | 630975 | 08       |
| August    | 2020 | 442278 | 08       |
| September | 2020 | 993318 | 09       |
| September | 2020 | 413214 | 09       |
该示例表在2019年每月正好有3条记录,2020年每月正好有2条记录。因此,当我添加一个名为MonthNotYearTraffic的计算字段时,由

// Averages ID count by month number only, intentionally ignoring year.

avgOver(count(ID), [{MonthNo.}])
我期待以下结果

| MonthNo. | MonthNotYearTraffic |
|----------|---------------------|
| 01       | 2.5                 |
| 02       | 2.5                 |
| 03       | 2.5                 |
| 04       | 2.5                 |
| 05       | 2.5                 |
| 06       | 2.5                 |
| 07       | 2.5                 |
| 08       | 2.5                 |
| 09       | 2.5                 |
| 10       | 3                   |
| 11       | 3                   |
| 12       | 3                   |
自第10-12个月起,只有上述三个2019年条目。但结果却是:

我尝试过以下几种不同的方法和组合,其中有几种我知道是疯狂的,但其他人不确定:

起初不依赖自定义的计算字段 通过在计算字段定义中对月份和年份进行分区 通过混淆级别感知聚合 通过确保数据类型以字符串/维度为标记 没有骰子


这似乎应该是一种简单的技术,所以任何指针都很好。谢谢。

我认为问题在于,只有当您像在第一个表中定义问题中的值那样显示数据时,avgOver才起作用。因为你只是在展示MonthNo。字段,并且没有多少行具有相同的MonthNo。值,则该分区中每个月只有一行,所以它只是将计数除以1


也许可以尝试类似countID/countMonthNo的方法。

我认为问题在于,只有当您像在定义问题中的值的第一个表中那样显示数据时,avgOver才起作用。因为你只是在展示MonthNo。字段,并且没有多少行具有相同的MonthNo。值,则该分区中每个月只有一行,所以它只是将计数除以1


也许可以尝试类似countID/countMonthNo的方法。

看起来您需要将您的ID计数按月进行划分,然后将该计数除以您在该月份拥有用户ID的年份计数

使用您的样本数据,我能够得到您想要的输出

MonthNotYearTraffic = countover(ID,[Month],PRE_FILTER)/distinctCountOver(Year,[Month],PRE_FILTER)

看起来您需要将ID的计数按月进行划分,然后将该计数除以您在该月份拥有用户ID的年份数

使用您的样本数据,我能够得到您想要的输出

MonthNotYearTraffic = countover(ID,[Month],PRE_FILTER)/distinctCountOver(Year,[Month],PRE_FILTER)
我最终使用了PRE_AGG,因为我的真实数据集中有一个过滤器。我最终使用PRE_AGG,因为我的真实数据集中有一个过滤器。