Forum Discussion
yogeshk77
2 years agoHelper I
Conditional Rolling Average
I have below mentioned Power BI table structure Table WeightedVel table contains below columns “Team_10202” as a String Data type “Reporting Sprint ID” as an Integer Data type “Story_Point...
- Anonymous2 years ago
Hi yogeshk77 ,
Here are the steps you can follow:
1. Create calculated column.
rank = RANKX( FILTER(ALL(Expected), 'Expected'[Team]=EARLIER('Expected'[Team])),[Reporting Sprint ID],,DESC)Sum of Six Period Average = IF( [rank] <=6, AVERAGEX( FILTER(ALL('Expected'), 'Expected'[Team]=EARLIER('Expected'[Team])&& 'Expected'[rank]>=EARLIER('Expected'[rank])&&'Expected'[rank]<=EARLIER('Expected'[rank])+5),[Story_Points]) )2. Result:
Best Regards,
Liu Yang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
Greg_Deckler
2 years agoCommunity Champion
yogeshk77 Should be:
Column =
VAR __Team = [Learnosity_Team_10202]
VAR __Sprint = [Reporting Sprint ID]
VAR __Sprints = SELECTCOLUMNS(FILTER('Table', [Learnosity_Team_10202] = __Team && [Reporting Sprint ID] <= __Sprint), "__SprintID", [Reporting Sprint ID])
VAR __SprintsText = CONCATENATEX( __Sprints, [__SprintID], "|", [__SprintID], DESC)
VAR __Table =
ADDCOLUMNS(
GENERATESERIES( 1, COUNTROWS(__Sprints), 1 ),
"__SprintID", PATHITEM(__SprintsText, [Value])
)
VAR __FinalSprints = FILTER(__Table, [Value] <= 6)
VAR __Result = AVERAGEX( FILTER('Table', [Reporting Sprint ID] IN __FinalSprints), [Sum of Story_Points_10004)
RETURN
__Result
Quite possible that you will get some kind of error complaining about text vs. number. Also, couldn't test this so the probability of a syntax error is fairly high. If you provide your sample data as text, could test this in a PBIX file and provide the PBIX file to you.