Расчет (прогноз) будущих дат в Power Pivot - PullRequest
0 голосов
/ 12 июля 2020

С 1 июля по 9 июля это факт, на основании которого я делаю свой прогноз. Значение каждой прогнозируемой даты (10 июля и позже) зависит от предыдущих 7 дней. Как это можно сделать в Power Pivot

https://gofile.io/d/6qnnx2

Как выполняется расчет: How Calculation is done

Desired result: Желаемый результат

Это пока то, что я сделал. Он делает свое дело, но такой беспорядок и размер файла чертовски увеличиваются, когда создается 60 столбцов (два - это два месяца). Этот конкретный код для дня = 30. Вы можете указать лучшее решение?

=IF(ISNUMBER([29]);[29];IF([report_date]<=CALCULATE(MAX('query'[report_date]);FILTER('query';[days_until_churn]>0))+30;(
CALCULATE(MIN([29]);FILTER('query';[report_date]+1=EARLIER([report_date]));FILTER('query';[churn_date]+1=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))+
CALCULATE(MIN([29]);FILTER('query';[report_date]+2=EARLIER([report_date]));FILTER('query';[churn_date]+2=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))+
CALCULATE(MIN([29]);FILTER('query';[report_date]+3=EARLIER([report_date]));FILTER('query';[churn_date]+3=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))+
CALCULATE(MIN([29]);FILTER('query';[report_date]+4=EARLIER([report_date]));FILTER('query';[churn_date]+4=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))+
CALCULATE(MIN([29]);FILTER('query';[report_date]+5=EARLIER([report_date]));FILTER('query';[churn_date]+5=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))+
CALCULATE(MIN([29]);FILTER('query';[report_date]+6=EARLIER([report_date]));FILTER('query';[churn_date]+6=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))+
CALCULATE(MIN([29]);FILTER('query';[report_date]+7=EARLIER([report_date]));FILTER('query';[churn_date]+7=EARLIER([churn_date]));FILTER('query';[TP]=EARLIER([TP])))
)/7))
...