#powerbi #dax #powerbi-desktop #power-bi-report-server
Вопрос:
Привет, у меня есть такой набор данных, разница в датах между каждым спринтом составляет 14 дней.
Team DateBegin Sprint Points
Team1 1/2/2021 Sprint1 30
Team1 1/16/2021 Sprint2 40
Team1 1/30/2021 Sprint3 20
Team1 2/13/2021 Sprint4 70
Team1 2/27/2021 Sprint5 90
Team1 3/11/2021 Sprint6 55
Team1 3/25/2021 Sprint7 40
Team2 1/2/2021 Sprint1 30
Team2 1/16/2021 Sprint2 40
Team2 1/30/2021 Sprint3 20
Team2 2/13/2021 Sprint4 70
Team2 2/27/2021 Sprint5 90
Team2 3/11/2021 Sprint6 55
Team2 3/25/2021 Sprint7 40
Я хотел рассчитать среднюю сумму, используя последние 3 спринта.
например
for Sprint7- sum(Sprint6 Sprint5 Sprint4)/3
For Sprint6- sum(Sprint5 Sprint4 Sprint3)/3
Что-то вроде того, что для каждого спринта просматривайте последние 3 спринта, суммируйте их и берите среднее значение(меру).
Ответ №1:
Вы можете усреднить баллы за 3 предыдущих спринта следующим образом:
Last3Avg =
VAR ThisSprintStart = SELECTEDVALUE ( Sprints[DateBegin] )
VAR SprintsToDate =
FILTER ( ALLSELECTED ( Sprints ), Sprints[DateBegin] < ThisSprintStart )
RETURN
AVERAGEX ( TOPN ( 3, SprintsToDate, Sprints[DateBegin] ), [Points] )
Комментарии:
1. Спасибо, Алексис, формула делает то, что задумывалось, но я забыл упомянуть, что у меня есть еще один столбец, который я хотел использовать в качестве группы, по которой я добавил столбец «Команда». Вы можете помочь
2. Это означает, что я хочу рассчитать среднее значение в каждой команде и спринты, включенные в эту команду..всякий раз, когда я перехожу в другую команду, расчет должен начинаться заново.
3. Попробуйте ALLEXCEPT(Спринты, Спринты[Команда]) вместо ALLSELECTED(Спринты).
4. Использование ALLEXCEPT не принесло нужного результата. выбранный параметр отлично подходит для расчета. Единственное, что нужно, — это добавить группу по команде?
5. Привет, Алексис, есть какая-нибудь помощь по вышеуказанному вопросу? Я прошу прощения за то, что задаю простые вопросы, просто я новичок в powerbi и dax. Спасибо!!