Как я могу создать строку, которая показывает среднее значение за 5 лет для набора данных сводной таблицы с разбивкой по месяцам? - PullRequest
0 голосов
/ 04 октября 2019

Я новичок в использовании DAX, но сегодня пробежал эту кроличью нору, пытаясь решить эту проблему. Даты сводной таблицы сгруппированы и настроены таким образом, чтобы месяц находился в разделе «Строки» сводной таблицы, а «Годы» были столбцами. В идеале, я хотел бы иметь столбец «Общая сумма», который показывает среднее число, наблюдаемое за каждый из 5 лет до текущего ежемесячно, а затем добавить этот столбец в соответствующую сводную диаграмму, чтобы сравнить месячные данные. Я видел в этом году в среднем за предыдущие 5 лет. Есть ли способ сделать это с DAX?

Я попытался создать сводную меру Power и добавить ее в раздел «Значения» сводной таблицы. К данным, которые я хотел видеть, в каждом году добавлялся дополнительный столбец для среднего значения за 5 лет, который я не хочу.

=CALCULATE(
AVERAGE([Crude (excluding SPR)]),
PARALLELPERIOD(US_Stocks_Monthly_Avg[Date],-5,YEAR))

Дополнительные сведения # 1

Ниже приведен скриншот сводной таблицы в ее текущем виде. Эта сводная таблица называется: PivotTable1

[Текущее расположение сводной таблицы] enter image description here

Ниже приведен снимок экрана таблицы, из которой сводная таблица извлекает данные. Эта таблица называется: US_Stocks_Monthly_Avg

[таблица источника данных] enter image description here

Дополнительные сведения # 2

Я создал отдельную таблицу для последовательныхдаты идут от самых старых до самых больших, которые вы можете увидеть ниже. Эта таблица называется: Monthly_Dates_Table

Monthly_Dates_Table screenshot

Затем я добавил эту таблицу в модель данных и создал связь между полем Date в таблице источника данных и новой таблицей дат. Изображение этой взаимосвязи в модели данных Power Pivot можно увидеть ниже. Стрелка указывает в сторону от таблицы дат («Monthly_Dates_Table») и к таблице источника данных («US_Stocks_Monthly_Avg»). Это правильное направление для подключения? Я также приложил изображение представления данных Monthly_Dates_Table в модели данных.

Data Model Diagram View

Data Model Data View

Я пытался создать показатели, которыми я являюсьискал, но был озадачен тем, к какой таблице я должен обращаться в целях анализа времени сейчас, когда есть две таблицы с датами.

Я добавил поле Date из Monthly_Dates_Table в сводную таблицу и приступил к группировке датвместе по месяцам и годам и создайте тот же макет, что и раньше, который ссылается на даты в таблице Monthly_Dates_Table. Дайте мне знать, если этот шаг был преждевременным.

[Текущая сводная таблица v2] enter image description here

1 Ответ

0 голосов
/ 08 октября 2019

Jnash33 попробуйте это:

Для моего объяснения: я настроил таблицы следующим образом

enter image description here

1) В Power PivotЯ использовал функциональность таблицы дат:

enter image description here Примечание. Несмотря на то, что мой экран на испанском языке, вы можете легко найти способ создания таблицы дат

2)Затем я создал связь между полями дат: enter image description here

3) После этого я добавил среднюю меру:

5YearAverage:=CALCULATE(AVERAGE(US_Stocks[Total crude and petroleum products]),DATESINPERIOD(Calendario[Date],LASTDATE(Calendario[Date]),-5,MONTH))

enter image description here Примечание: см. Эту статью из блога Radacad: https://radacad.com/datesinperiod-vs-datesbetween-dax-time-intelligence-for-power-bi

4) Наконец я добавил сводную таблицу (не забывайте использовать таблицы модели данных)

enter image description here

enter image description here

Примечание: отрегулируйте меру и посмотрите, в этом случае я использовал «месяц» в качестве последнего аргумента, и он принимает предыдущие 5месяцев и текущего.

Дайте мне знать, если это поможет, и не забудьте пометить ответ, чтобы помочь другим.

...