Forum Discussion
Calculating the Average Days Difference
I have a table called 'Put Away headers' and two fields Called 'Assignment Date' and 'Complete Date'. I would like to calculate an overall average of the days difference between these, excluding weekends. Please explain simply I'm new to this.
- Anonymous9 years ago
The easiest way to do this is to create a calculated column in combination with a date table. You will need a date table because you will need all dates in the specific period. You can either create a date table in your database, import it (and create it in Excel) or dynamically using DAX. For the last one, see for example: https://www.agilebi.com.au/blog/power-bi-date-dimension.
You will need to create a column (For exampe 'Workingday' in this date table where you specify for each day if it's a weekday. The column should contain a 0 or a 1 (1 for weekdays and 0 for weekenddays).
Then, your create a calculated column with the following formula:
Workingdays = calculate( sum(DimDate[Workingday]); DATESBETWEEN( DimDate[Date]; PutAwayHeaders[AssignmentDate]; PutAwayHeaders[CompleteDate])))As you can see I named my date table DimDate.
The last step is to create a measure with an average over this calculated column:
Average Workingdays = AVERAGE(Workingdays)
10 Replies
- AnonymousNot applicable
The easiest way to do this is to create a calculated column in combination with a date table. You will need a date table because you will need all dates in the specific period. You can either create a date table in your database, import it (and create it in Excel) or dynamically using DAX. For the last one, see for example: https://www.agilebi.com.au/blog/power-bi-date-dimension.
You will need to create a column (For exampe 'Workingday' in this date table where you specify for each day if it's a weekday. The column should contain a 0 or a 1 (1 for weekdays and 0 for weekenddays).
Then, your create a calculated column with the following formula:
Workingdays = calculate( sum(DimDate[Workingday]); DATESBETWEEN( DimDate[Date]; PutAwayHeaders[AssignmentDate]; PutAwayHeaders[CompleteDate])))As you can see I named my date table DimDate.
The last step is to create a measure with an average over this calculated column:
Average Workingdays = AVERAGE(Workingdays)
- LewisHHelper II
So I have the table which specifies day of the week, how would i write a new column to do the 1 for weekday and 0 for weekend
- LewisHHelper II
Workingdayss = CALCULATE(sum('Invoked Function'[WorkingDays]), DATESBETWEEN('Invoked Function'[Date], 'Put Away Headers'[Assignment_Date],'Put Away Headers'[Complete_Date]))
I've tried this but i'm getting this error
- AnonymousNot applicable
I think you accidentally created a measure instead of a column. Try again with a column using the same syntax (so right click on the table > new column). Then, create a measure with for Average Workingdays = AVERAGE(Workingdayss).