Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Power BI is turning 10! Let’s celebrate together with dataviz contests, interactive sessions, and giveaways. Register now.

Reply
satkin
Advocate I
Advocate I

Standard Deviation as a column either in Power Query or DAX

Hi,

Below is a screen shot of a standard deviation calculation per variable for the prior 6 months observations.  Column E shows the Excel formula used in column D.

 

Screenshot 2024-06-05 at 17.10.40.png

 

My raw data is columns A-C, and I need to replicate the creation of column D in Power BI, either through Power Query or DAX.  I've made numerous attempts, but am clearly missing something as I just don't seem able to do it.  Is this possible?  If so any guidance on how would be appreciated.

 

Many thanks

2 ACCEPTED SOLUTIONS
rajendraongole1
Super User
Super User

Hi @satkin - I am assuming your table is named standardObservations and your columns are date, Variables, and Values

create a dax measure as follows and before that I hope you have a seperate date table created in your model. if not please create it.

Measure:

 

StdDevLast6Months =
VAR CurrentDate = MAX('standardObservations'[Date])
VAR StartDate = EDATE(CurrentDate, -6)
RETURN
CALCULATE(
STDEV.P('standardObservations'[Values]),
FILTER(
'standardObservations',
'standardObservations'[Date] >= StartDate &&
'standardObservations'[Date] <= CurrentDate &&
'standardObservations'[Variable] = MAX('Observations'[Variable])
)
)

 

 

Did I answer your question? Mark my post as a solution! This will help others on the forum!
Appreciate your Kudos!!





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!





View solution in original post

parry2k
Super User
Super User

@satkin although @rajendraongole1  has given the solution, as a best practice, add a date dimension in your model and use it for time intelligence calculations. Once the date dimension is added, mark it as a date table on table tools. Check the related videos on my YT channel

 

Add Date Dimension
Importance of Date Dimension
Mark date dimension as a date table - why and how?
Time Intelligence Playlist

 

and then I will write a DAX measure like this:

 

StdDevLast6Months =
CALCULATE(
STDEV.P('standardObservations'[Values]),
DATESINPERIOD ( 'Calendar'[Date], MAX ( 'Calendar'[Date] ), -6, MONTH )
)


Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

View solution in original post

2 REPLIES 2
parry2k
Super User
Super User

@satkin although @rajendraongole1  has given the solution, as a best practice, add a date dimension in your model and use it for time intelligence calculations. Once the date dimension is added, mark it as a date table on table tools. Check the related videos on my YT channel

 

Add Date Dimension
Importance of Date Dimension
Mark date dimension as a date table - why and how?
Time Intelligence Playlist

 

and then I will write a DAX measure like this:

 

StdDevLast6Months =
CALCULATE(
STDEV.P('standardObservations'[Values]),
DATESINPERIOD ( 'Calendar'[Date], MAX ( 'Calendar'[Date] ), -6, MONTH )
)


Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

rajendraongole1
Super User
Super User

Hi @satkin - I am assuming your table is named standardObservations and your columns are date, Variables, and Values

create a dax measure as follows and before that I hope you have a seperate date table created in your model. if not please create it.

Measure:

 

StdDevLast6Months =
VAR CurrentDate = MAX('standardObservations'[Date])
VAR StartDate = EDATE(CurrentDate, -6)
RETURN
CALCULATE(
STDEV.P('standardObservations'[Values]),
FILTER(
'standardObservations',
'standardObservations'[Date] >= StartDate &&
'standardObservations'[Date] <= CurrentDate &&
'standardObservations'[Variable] = MAX('Observations'[Variable])
)
)

 

 

Did I answer your question? Mark my post as a solution! This will help others on the forum!
Appreciate your Kudos!!





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!





Helpful resources

Announcements
May PBI 25 Carousel

Power BI Monthly Update - May 2025

Check out the May 2025 Power BI update to learn about new features.

May 2025 Monthly Update

Fabric Community Update - May 2025

Find out what's new and trending in the Fabric community.