DAX PowerBI SUM средних значений с пользовательским вводом - PullRequest
0 голосов
/ 26 сентября 2019

Я новичок в DAX и мне нужна ваша помощь, пожалуйста.Вот моя проблема: мне нужно рассчитать сумму средних продаж продуктов за годы, выбранные пользователем.Позвольте мне объяснить, вот мой источник:

Table1

Product Year    SalesAM SalesPM State
Pants   2015    6477    5787    California
Pants   2015    9675    7967    NewYork
Pants   2016    4577    5785    California
Pants   2016    6467    9357    NewYork
Pants   2017    2524    9679    California
Pants   2017    5745    4674    NewYork
Pants   2018    3532    6585    California
Pants   2018    6746    9575    NewYork
Shirts  2015    3452    9577    California
Shirts  2015    3464    6896    NewYork
Shirts  2016    2452    5785    California
Shirts  2016    5685    9679    NewYork
Shirts  2017    3635    4674    California
Shirts  2017    3435    9457    NewYork
Shirts  2018    5745    5688    California
Shirts  2018    2355    7585    NewYork
Shoes   2015    6653    9657    California
Shoes   2015    6766    9678    NewYork
Shoes   2016    5684    5788    California
Shoes   2016    5745    9577    NewYork
Shoes   2017    6887    7976    California
Shoes   2017    2454    4746    NewYork
Shoes   2018    4674    3567    California
Shoes   2018    6744    9686    NewYork

Пользователь выбирает с 2016 по 2018 год:

Выбор года

Для каждого штата,Мне нужны средние продажи по продуктам по годам, выбранным пользователем, а затем суммировать эти средние по продуктам.Вот что я воспроизвел в Excel:

Средние продажи по продуктам и по штатам в соответствии с выбранными годами

Мне удалось усреднить с помощью вкладки Визуализация, но она вычисляетсреднее значение средних и мне нужна сумма средних значений (моенна = среднее значение):

среднее значение PowerBI

У кого-нибудь есть идеи, как это сделатьв DAX?

Спасибо и всего наилучшего,

1 Ответ

0 голосов
/ 27 сентября 2019

Вам нужно будет разбить это на меры, а не использовать визуальные.Замените «Таблица» на имя вашей таблицы.Один для продажи AM ниже.Сначала создайте СРЕДНЮЮ меру

AVG AM = AVERAGE('Table'[SalesAM])

, которая затем используется ниже

Measure = CALCULATE(SUMX(SUMMARIZE('Table', 'Table'[product], 'Table'[State],"avg",[AVG AM]), [avg]), ALLEXCEPT('Table', 'Table'[Year], 'Table'[Product]))

Я разбил ее на части

SUMMARIZE('Table', 'Table'[product], 'Table'[State],"avg", [AVG AM], [avg])

Это создаст таблицуэто работает в среднем.Затем вы используете эту таблицу для использования в расчете SUMX

CALCULATE(SUMX(

. Затем в следующем разделе определяется контекст фильтра, к которому он будет применяться, поэтому вы можете выбрать и разбить его только по продукту и году.,

ALLEXCEPT('Table', 'Table'[Year], 'Table'[Product])

Вы можете сделать все это за одну меру, если хотите.

CALCULATE(SUMX(SUMMARIZE('Table', 'Table'[product], 'Table'[State], "avg", AVERAGE('Table'[SalesAM])), [avg]), ALLEXCEPT('Table', 'Table'[Year], 'Table'[Product]))

enter image description here

Если вы новичокв DAX, попробуйте книгу Робота Колли «Power Pivot и Power Bi: руководство пользователя Excel по Dax, Power Query, Power Bi и Power Pivot в Excel 2010-2016», она дает хорошее представление о DAX

...