March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
I am trying to get the standard deviation to develop control charts. I was able to calculate the SUM and AVG using the below formulas and both work perfectly. The problem is my table is using a column called Number Of Issues Reported which always has a value of 1 in it. This is making it difficult to produce the Standard Deviation because it is coming up 0 because all the values are 1 in the column. Is there a way to get it to calculate the Standard Deviation properly similiar to what I did below for SUM and AVG? I would prefer this to changing the SQL query since everything else works. Below are the working formulas and the table layout.
Month | Major | Number of Issues Reported |
2020-1 | AAA | 1 |
2021-1 | BBB | 1 |
2019-2 | CCC | 1 |
2018-5 | AAA | 1 |
2020-2 | BBB | 1 |
2021-3 | CCC | 1 |
2022-3 | AAA | 1 |
2019-4 | BBB | 1 |
2018 | CCC | 1 |
Solved! Go to Solution.
Hi:
Please see file. You willl notice I have summary table in and have set up a date table. I made up the data points but results appear to work as intended. What do you think?
https://drive.google.com/file/d/1ibEFS6MXsidsA3ny7_KnDY-UAnJ0UOde/view?usp=sharing
Hi:
Please see file. You willl notice I have summary table in and have set up a date table. I made up the data points but results appear to work as intended. What do you think?
https://drive.google.com/file/d/1ibEFS6MXsidsA3ny7_KnDY-UAnJ0UOde/view?usp=sharing
That would work perfectly if I wasnt trying to insert the STDEV into every column of month that the end-user selects. I need that value in each column for month to develop the UCL and LCL. I went in an rewrote the query and it looks like it now works ok so I can close this out. Basically instead of having each row represent 1, I rewrote the query in SQL to group the totals. I then was able to calculate the STDEV properly and then the UCL and LCL to get this functioning. Thanks so much for taking the time to help me with this.
I'm happy it is working for you with your extra touch! You are welcome!
Hi:
You could make a summary table and then do STD.P on a column after the results have been aggregated. But do you want STD on number of observations or maybe some other column. Your STD will be more useful if everything is always the same.
New Table:
Summary_Tble =ADDCOLUMNS(
SUMMARIZE(Table1, Table1[Month], Table1[Major]),
"No. Issues", SUM(Table1[Number of Issues Reported] )
Issues STD = = STDEV.P(Summary_Tble,Summary_Tble[No. Issues])
It could help you to have a Date Table all set up and record your fact table entries by date.
* Note on STD below:
STDEV.P assumes that the column refers to the entire population. If your data represents a sample of the population, then compute the standard deviation by using STDEV.S
I hope I have answered your question. Thanks..
I am trying your code out now and getting that dreaded "The expression refers to multiple columns. Multiple columns cannot be converted to a scalar value." Assuming it is something in my setup of the table? I have this linked from a SQL database and it is a stored procedure connected to multiple tables. Probably not why this is happening but unsure. I mirrored exactly what you had written so it has to be something on my end.
Hi:
If the number of issues is always one/event than there can't be any STD becasuse everything is always one. Are you trying to get STD on monthly or weekly issues? Normally the STD would work something like this:
Test 1 - result 40
Test 2 - result 50
Test 3 - result 42
Sum = 132
Avg = 44
STD(pop) = 4.32
But when each result is one the STD = 0.
I hope my reply makes sense to you.
Thank you,
It does. What I was hoping was to get the standard deviation from the sum of each month selected in the slicer. So for instance if the end-user selects the below:
1-2020 with 1000
2-2020 with 2000
3-2020 with 1500
Then in simple form calculate the standard deviation of those three which would be STDEV(1000, 2000, 1500)
Hi:
Maybe your sample data isn't matching your latest example. I see 1 for Jan 2020 but you mention it is 1000? Do you have sample data to share? Just something to represent this issue so I can see those different totals. Thanks
Thanks for the response. I will try your solution and respond in the am. STDEV on Issues and have the STDEV calculate based off the end-users date selection. My average and Sum works this way but see why the STDEV doesnt. Again, will try what you suggested tomorrow morning. Thanks again.
Yes Sorry. I am doing a poor job at explaining. Below is a sample of the data layout and a quick pivot of what I want it to do.
LAYOUT SAMPLE
MONTH | MAJOR | ISSUES |
2022-2 | AAA | 1 |
2022-2 | BBB | 1 |
2022-3 | AAA | 1 |
2022-3 | BBB | 1 |
2022-4 | AAA | 1 |
2022-4 | BBB | 1 |
2022-5 | AAA | 1 |
2022-5 | BBB | 1 |
2022-2 | AAA | 1 |
2022-2 | BBB | 1 |
2022-3 | AAA | 1 |
LAYOUT AND CALC I need that Standard Dev to create Upper and Lower Control Limits for the chart.
MAJOR | 2022-2 | 2022-3 | 2022-4 | 2022-5 | Grand Total |
AAA | 2 | 5 | 5 | 7 | 19 |
BBB | 3 | 5 | 6 | 5 | 19 |
Grand Total | 5 | 10 | 11 | 12 | 38 |
STDEVIATION | |||||
AAA | 1.26 | ||||
BBB | 1.89 |
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
User | Count |
---|---|
26 | |
16 | |
15 | |
12 | |
11 |
User | Count |
---|---|
32 | |
26 | |
24 | |
20 | |
14 |