NORM.INV DAX Function (Statistical)

Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation.

Syntax

NORM.INV ( <Probability>, <Mean>, <Standard_dev> )
Parameter Attributes Description
Probability

A probability corresponding to the normal distribution.

Mean

The arithmetic mean of the distribution.

Standard_dev

The standard deviation of the distribution.

Return values

Scalar A single decimal value.

Returns the inverse of the normal cumulative distribution for the specified mean and standard deviation.

» 3 related functions

Examples

--  NORM.INV returns the inverse of the normal distribution 
--  for the specified mean and standard deviation
--
--  NORM.S.INV returns the inverse of the standard normal distribution 
--  (has a mean of zero and a standar deviation of one)
--
--  https://en.wikipedia.org/wiki/Normal_distribution
DEFINE
    TABLE SampleData    = { 2, 4, 4, 4, 5, 5, 7, 9 }
    VAR Mean            = AVERAGE ( SampleData[Value] )
    VAR StandardDev     = STDEV.S ( SampleData[Value] )
    VAR Percs           = GENERATESERIES ( 0.05, 0.99, 0.05 )
    VAR CumulativeTrue  = TRUE   -- Cumulative distribution function
    VAR CumulativeFalse = FALSE  -- Probability density function
EVALUATE
SELECTCOLUMNS (
    Percs,
    "Probability %", [Value],
    "Inv. Normal Distr.",          -- Probability density function
        FORMAT (
            NORM.INV ( [Value], Mean, StandardDev ),
            "#,0.00000"
        ),
    "Inv. Standard Normal Distr.", -- Probability density function
        FORMAT (
            NORM.S.INV ( [Value] ),
            "#,0.00000"
        )
)
Probability % Inv. Normal Distr. Inv. Standard Normal Distr.
5.00% 1.48316 -1.64485
10.00% 2.25993 -1.28155
15.00% 2.78401 -1.03643
20.00% 3.20054 -0.84162
25.00% 3.55788 -0.67449
30.00% 3.87878 -0.52440
35.00% 4.17615 -0.38532
40.00% 4.45832 -0.25335
45.00% 4.73132 -0.12566
50.00% 5.00000 0.00000
55.00% 5.26868 0.12566
60.00% 5.54168 0.25335
65.00% 5.82385 0.38532
70.00% 6.12122 0.52440
75.00% 6.44212 0.67449
80.00% 6.79946 0.84162
85.00% 7.21599 1.03643
90.00% 7.74007 1.28155
95.00% 8.51684 1.64485
--  Example of how to use NORM.INV with RAND to generate Gaussian 
--  (normally distributed) random samples
DEFINE
    -- Mean
    VAR mu = 10 
    -- Standard deviation
    VAR sigma = 3 
    -- Amount of samples
    VAR N = 1000
    -- Table containing normally distributed random samples with the given parameters
    TABLE RawData =
        ADDCOLUMNS (
            GENERATESERIES ( 1, N ),
            "Random data", ROUND ( NORM.INV ( RAND (), mu, sigma ), 0 )
        )
    -- Table containing the "bins" which are used to summarize the random data
    TABLE SummaryTable =
        GENERATESERIES ( 1, 20 )

EVALUATE
ADDCOLUMNS (
    SummaryTable,
    "Count of occurrences",
        -- Caculate the amount of samples per category of the summarize table
        CALCULATE (
            COUNTROWS ( RawData ),
            FILTER ( RawData, RawData[Random data] = SummaryTable[Value] )
        ),
    "Histogram",
        -- Form a visual histogram of the results
        CONCATENATEX (
            -- Form a temporary table for creating the histogram via string concatenation
            ADDCOLUMNS (
                FILTER ( RawData, RawData[Random data] = SummaryTable[Value] ),
                "|", "|"
            ),
            "|"
        )
)
SummaryTable[Value] Count of occurrences Histogram
1 (Blank) (Blank)
2 4 ||||
3 8 ||||||||
4 16 ||||||||||||||||
5 32 ||||||||||||||||||||||||||||||||
6 50 ||||||||||||||||||||||||||||||||||||||||||||||||||
7 81 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
8 116 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
9 130 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10 140 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
11 126 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
12 87 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
13 78 ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
14 65 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15 29 |||||||||||||||||||||||||||||
16 21 |||||||||||||||||||||
17 12 ||||||||||||
18 3 |||
19 1 |
20 (Blank) (Blank)

Related functions

Other related functions are:

Last update: Nov 14, 2024   » Contribute   » Show contributors

Contributors: Alberto Ferrari, Marco Russo, Ville-Pietari Louhiala

Microsoft documentation: https://docs.microsoft.com/en-us/dax/norm-inv-dax

2018-2024 © SQLBI. All rights are reserved. Information coming from Microsoft documentation is property of Microsoft Corp. » Contact us   » Privacy Policy & Cookies

Context Transition

This function performs a Context Transition if called in a Row Context. Click to read more.

Row Context

This expression is executed in a Row Context. Click to read more.

Iterator

Not recommended

The use of this function is not recommended. See Remarks and Related functions for alternatives.

Not recommended

The use of this parameter is not recommended.

Deprecated

This function is deprecated. Jump to the Alternatives section to see the function to use.

Volatile

A volatile function may return a different result every time you call it, even if you provide the same arguments. Click to read more.

Deprecated

This parameter is deprecated and its use is not recommended.

DirectQuery compatibility

Limitations are placed on DAX expressions allowed in measures and calculated columns.
The state below shows the DirectQuery compatibility of the DAX function.

Contribute

Want to improve the content of NORM.INV? Did you find any issue?
Please, report it us! All submissions will be evaluated for possible updates of the content.


This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.