Normal Distribution (Gauss Curve) in Power BI (Part I)

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • In this video I explain how to create a normal distribution curve from a given data.
    Next videos will explain more details about how to create the probability and the number of population needed for certain error.
    To download the file: 1drv.ms/f/s!Ar...

Комментарии • 94

  • @rudnickj
    @rudnickj 5 лет назад +1

    Hi Josep, thank you so much for the excellent tutorial! One thing I added was a wrapper to the f(x) measure: IF(HASONEVALUE('Normal Distribution'[X]),,BLANK()). This protects against the crossfilter error, so you don't have to turn off the totals in the chart.

    • @josepromero1452
      @josepromero1452  5 лет назад +1

      Hi Joseph.
      GREAT!! thanks a lot for your contribution!!

    • @shanc77
      @shanc77 5 лет назад +1

      You can also use the FIRSTNONBLANK('NormDist'[X],1) function instead of VALUES(), combined with the NORM.DIST() function to get at your f(x) value.

  • @nadersheikh00
    @nadersheikh00 6 месяцев назад +1

    Thanks for sharing your knowledge. Very good video and illustration.

  • @lenzypetty1097
    @lenzypetty1097 5 лет назад

    Excellent!!! Thanks very much for a great demonstration of Power BI capabilities.

  • @ElBarbie23
    @ElBarbie23 Год назад

    Fantastic video, this helped me deliver insights on our truck turn times to our CIO. Muchas Gracias!

  • @erickboczar678
    @erickboczar678 3 года назад +5

    I was facing problems because my bucking values were not small enough and the normal distribution (bell) curve was quite "square". I solved this using the formula for X:
    NORMAL DISTRIBUTION =
    VAR MinValue=FLOOR([X-3σ],1)
    VAR MaxValue=CEILING([X+3σ],1)
    RETURN
    GENERATESERIES(MinValue,MaxValue,0.01)

    • @josepromero1452
      @josepromero1452  3 года назад +2

      Great!!
      Thanks for sharing.

    • @meghk5147
      @meghk5147 2 года назад +1

      thank you so much!!!

    • @ssergi0
      @ssergi0 Год назад

      Thank you for sharing your input! Very helpfull

  • @gm.7458
    @gm.7458 5 лет назад +7

    Hello Joseph, your youtube video is very helpful. i was trying to follow your path to create a Gauss curve but got stuck at f(x).. my calculation is f(x) =
    EXP((VALUES('NORMAL DISTRIBUTION'[X])-[MEAN]^2/(2*[STANDAR DEV.]^2)*-1)/SQRT((2*PI())*[STANDAR DEV.])) however i got an error message saying 'MdxScrip(Model) (8,6) Calculation error in measure 'NORMAL DISTRIBUTION'[f(x): A table of multiple values was supplied where a single value was expected.' I was under impression that multiple values should be displayed as there are multiple rolls? Also i turned off 'total' on x and z---Are you able to help?

    • @josepromero1452
      @josepromero1452  4 года назад

      Thanks a lot FNLN
      Do you creat a column or a mesure?
      Check this...

    • @thierryfischer207
      @thierryfischer207 3 года назад +4

      I have the same problem but I use another formula to correct it: f(x) = NORM.DIST(AVERAGE('NORMAL DISTRIBUTION'[X]), [MEAN (µ)], [STANDAR DEV. (σ)],FALSE())
      Maybe this could help you. And thank you very much for the video which really helped me to draw the normal distribution.

  • @stevensonvas
    @stevensonvas 4 года назад

    Great tutorial, Josep - very helpful - thanks for posting!

  • @InconsistentBastard
    @InconsistentBastard 4 года назад

    Excellent work, very useful! Much appreciated! Thank you!

    • @josepromero1452
      @josepromero1452  4 года назад

      I'm glad to read this!!
      Thanks a lot Ciprian!!!

  • @alejandroproano3260
    @alejandroproano3260 5 лет назад

    Great Job!! and thank you for your help. From Ecuador.

  • @mohammedaminelachhabe2087
    @mohammedaminelachhabe2087 6 лет назад

    Thank you so much . It is what I was looking for.

  • @davidt21
    @davidt21 Год назад +8

    Hola Josep,
    No se si quizas sea que la version de PowerBI ha cambiado (trabajo con el programa en ingles en USA - los formats a lo mejor son distintos) pero la ultima formula me da un error que se soluciona con la funcion FIRSTNONBLANK(x,1) de esta forma:
    f(x) =
    EXP((FIRSTNONBLANK('NORMAL DISTRIBUTION - CHK'[X],1)-[Mean])^2/(2*[Standard Dev]^2)*-1)/(SQRT(2*PI())*[Standard Dev])
    Ojala le sirva a alguien. Muchisimas gracias por el contenido.

    • @nilmuriasfalgas3602
      @nilmuriasfalgas3602 Год назад

      Thanks ! that helped me a ton!!

    • @davidt21
      @davidt21 Год назад +1

      @@nilmuriasfalgas3602 glad to hear of my friend!

    • @kikesaavedra1316
      @kikesaavedra1316 4 месяца назад

      Muchas gracias por el aporte. A mi también me salía error.

    • @davidt21
      @davidt21 4 месяца назад

      @@kikesaavedra1316 me alegro haber ayudado!

  • @TheAlbinoApple
    @TheAlbinoApple 3 года назад

    Great video, super helpful! Thanks!

  • @haroudcuriel9431
    @haroudcuriel9431 3 года назад

    i really love this, THANKS!! for sharing

  • @ashim2019
    @ashim2019 6 лет назад

    Thanks a lot. Highly appreciated.

  • @yannkitson116
    @yannkitson116 Год назад

    Excellent video, thanks for sharing.

  • @tinylittleanj2
    @tinylittleanj2 4 года назад

    This is awesome, thanks so much!!!

  • @johndavidlearoyd3920
    @johndavidlearoyd3920 6 лет назад +1

    Hi Josep - love the video! However, I have one question for you. Is there a way to have the 'Normal Distribution" table that calculates values for X +/- 3 standard deviations be dynamic based on an underlying filter? For instance, the table works as described in your video when I am looking at the entire data set that I have, which spans 5 years. However, when I apply a slicer to only look at 1 year of data (instead of 5 years) the Normal Distribution table does not adjust accordingly, and thus the mean and +/- 1 standard deviation bars do not reflect properly in the graph. This is because the Normal Distribution table is simply taking the max and min from the data set regardless of any dates, etc. I can get all the measures to reflect properly using the slicer, with exception of the bars for the mean and +/-1 1 standard deviation on the chart. Any insight you have on this would be appreciated!

    • @josepromero1452
      @josepromero1452  6 лет назад

      Hi John, sorry for delay!!
      I understand the problem, but still not know how to solve it!
      The problem appears when X is calculated by the formula:
      NORMAL DISTRIBUTION =
      VAR MInValue=FLOOR([X-3σ];1)
      VAR MaxValue=CEILING([X+3σ];1)
      RETURN
      SELECTCOLUMNS(CALENDAR(MInValue;MaxValue);"X";INT([Date]))
      This formula does not take in mind the filters, probably because it is a formula to create calendars, not other kind of columns.
      I will investigate about this for an alternative solution.
      Thanks a lot!
      Josep.

    • @ophelietab5112
      @ophelietab5112 5 лет назад

      @@josepromero1452 Hello Josep ! Thank you for the video ! I really loved it! It helped me a lot. But as mentionned John, it is not dynamic. Did you find an answer about that problem ? I imagined to change calendar to something else (values or sample for examples) but it didn't work.
      Also, on the version of August, NORM.DIST can be used. But still X need to be created (or I am really not good in Power BI). DId you tried this formula ?
      Thanks again and hope you can help me again !
      Ophélie

    • @ophelietab5112
      @ophelietab5112 5 лет назад

      @@josepromero1452 Hello ! In my company, we found a solution to this problem ! in fact it is on the writing of NORMAL Z VALUE. the formula to use is : round(([slicer value]-[average (µ)])/[standard dev. (σ)];2)
      Then if you want also µ, µ-1 and µ+1 dynamic. You have to create them as measure like this : µ=if('NORMAL DISTRIBUTION'[X]=floor(Average(µ)];1);[f(x)];blank())
      µ-1=if(selectdvalue('normal distribution'[X])=floor([X-1σ];1);[f(x)];blank())

    • @steefcreemers6079
      @steefcreemers6079 5 лет назад

      @@ophelietab5112 I have the same problem. I saw your code, but have some trouble understanding it. How did you define the [slicer value] to put in the calculation of Z? And does Z need to be a measurement or a column? Is it possible that you sent me an example file?

    • @ophelietab5112
      @ophelietab5112 5 лет назад

      @@steefcreemers6079 Hello Steef, I don't remember exactly. I left that company and I am not using power BI anymore. But I did exactly like in the video instead what I just described

  • @feng3625
    @feng3625 3 года назад

    excellent video! Thank you so much!

  • @andrekroker420
    @andrekroker420 2 года назад

    Thanks for these valuabes insights!

  • @becker1030
    @becker1030 2 года назад

    Hello, I adapted this normal distribution to a data separated by date, but the Z value only calculates the whole set, so when I select a year, it doesnt change, but the f(x) change, and all other parameters change, like the average and standard deviation. Since the Z value depends on X, average and standard deviation, it should change too, but it doesnt happen. Can you help me fix this?

  • @jgeorge-jx1gj
    @jgeorge-jx1gj Год назад +1

    Enjoyed your video!
    Would it be possible to re-share your pbix file?

  • @feng3625
    @feng3625 3 года назад +1

    Josep, I don't understand why there is Date involve on the table Distribution Normal ? I don't see you have Date table as well.

    • @josepromero1452
      @josepromero1452  3 года назад +1

      Hi Feng,
      it is the only way I found to abtain a table with consecutive values where minimum and maximum are known. As you can see, nothing involved with dates...

    • @dobrodziej
      @dobrodziej 3 года назад

      Hi @@josepromero1452, there is GENERATESERIES for the purpose, but your way does the trick : )

  • @_Jay4109
    @_Jay4109 4 года назад

    Great video.

  • @lape36
    @lape36 3 года назад +1

    Hi Josep, Thanks for sharing this very helpful tutorial.
    However I also have the same problem as Gloria M below, when I'm trying to print the F(x) in the table, I get the "MdxScript(Model) (16, 41) Calculation error in measure 'Normal distribution'[f(x)]: A table of multiple values was supplied where a single value was expected" error message. I did check if I use the new Measure or Colum method.. and I do use Measure. Can you advice?

    • @josepromero1452
      @josepromero1452  3 года назад +4

      Hello Lars,
      thanks a lot!.
      Try to disable totals in the table format painter.
      This error is very common, mostly times solved with this solution.
      Regards!
      Josep.

    • @lape36
      @lape36 3 года назад

      @@josepromero1452 That worked, Thanks

    • @meghk5147
      @meghk5147 2 года назад

      This worked for me too! Should have read the comments before wasting 30 mins in google :(

    • @meghk5147
      @meghk5147 2 года назад

      Also, could have just kept playing your tutorial...

  • @kimdunbar6632
    @kimdunbar6632 4 года назад

    I am receiving the following error "An argument of function "CEILING' has the wrong data type or the result is too large or too small"
    NormalDistribution =
    VAR Minvalue = FLOOR([X-3dev],1)
    VAR Maxvalue = CEILING([X+3dev],1)
    RETURN
    SELECTCOLUMNS(CALENDAR(Minvalue,maxvalue),"A",INT([fldCallDate]))
    Please steer me in the right direction
    Thanks

  • @ashleyzhang8869
    @ashleyzhang8869 3 года назад

    Hi Josep, thanks for sharing this! it's helpful! Question: when creating your normal distribution in a new table, why do you use Calendar function? What do I do if my real data value has decimal?

    • @josepromero1452
      @josepromero1452  3 года назад

      Hello Ashley,
      The only way to create a table with the unique values of the data is with the function CALENDAR, at least, is the only way I found.
      If you have decimal values on your data, transform them into integer values multiplying them by a multiple of 10 on your query (e.g. if you have 3 decimals, multiply by 1000), and to show in the dashboard, divide the result of the formulas by the same multiplier.
      I hope it helps you.
      Regards,
      Josep.

    • @krisvandeurzen5507
      @krisvandeurzen5507 3 года назад

      @@josepromero1452 : You can use the what if parameter. It uses the generateseries function. (Parameter = GENERATESERIES(-20, 20, 1))It also creates a special kind of slicer

    • @josepromero1452
      @josepromero1452  3 года назад

      @@krisvandeurzen5507 Thanks for sharing!!

  • @arturogonzalezgoni711
    @arturogonzalezgoni711 3 года назад +1

    GRacias Josep. Muy buen video.
    Quería hacerte una pregunta.
    Cuando pongo la fórmula para f(x), me da un error en ´NORMAL DISTRIBUTION´[x]-[MEAN (u)]. Pongo u porque no sé poner en el teclado el símbolo correcto, pero tengo bien escrita esa parte.
    Me sale un error que doce que no se puede determinar un valor único para la columna ´x´y dice que esto puede suceder cuando una fórmula de medida hace referencia a una columna con muchos valores sin especificar mínimo, máximo...
    Los datos ´X´de mi tabla realmente van del 18000 al 50000 pero entiendo que esto no debiera influir.
    ¿Podrías ayudarme o indicarme algún correo o similar para contactar contigo?
    GRacias de nuevo¡¡¡

    • @josepromero1452
      @josepromero1452  3 года назад +1

      Hola Arturo, la letra µ se escribe como ALT+230
      En la fórmula, debes añadir VALUES antes de la columna [X]. Comprueba que en la columna [X] tienes valores únicos, enteros y sucesivos. Comprueba también que todos los paréntesis están en su posición correcta. Si la fórmula está bien escrita, no debería darte problemas.
      Un saludo,
      Josep.

    • @arturogonzalezgoni711
      @arturogonzalezgoni711 3 года назад +1

      @@josepromero1452 "Correcto, gracias de nuevo, y más si cabe por la rapidez. Ya lo he hecho, y me acepta la fórmula, pero aunque he desactivado TOTALES, no se me incluyen esos valores en la nueva tabla. Me dice que "un argumento de la función POWER tiene un tipo de datos incorrecto, o el resultado es demasiado grande o demasiado pequeño"

    • @arturogonzalezgoni711
      @arturogonzalezgoni711 3 года назад +1

      nada¡¡¡ ya he visto el fallo. me faltaba un ( y por eso daba un valor que no reconocía. lo voy a comprobar

  • @alessandrocanova363
    @alessandrocanova363 4 года назад

    This is so awesome ! congrats. Could you please share the excel files ?

  • @olegkazanskyi9752
    @olegkazanskyi9752 4 года назад

    Thanks for the video! Could you share how to do Standard deviation with not integer numbers with 1 digit after the decimal?

  • @gonzalorovito-operationsdi3921
    @gonzalorovito-operationsdi3921 2 года назад +1

    Me indica este error al formular F(x)
    A table of multiple values was supplied where a single value was expected.
    La fórmula es correcta:
    F(x) =
    EXP((VALUES('Normal Distribution_Lines'[X])-[AVG_Lineas])^2/(2* Medidas[Desv.Lineas]^2)*-1)/(SQRT(2*PI())* Medidas[Desv.Lineas])

  • @prsmem
    @prsmem 3 года назад

    Hello, where can we find the word document you showed detailing the bell curve?

    • @josepromero1452
      @josepromero1452  3 года назад

      Hello Paul.
      Here it is:
      es.slideshare.net/EdgardoMolinaOchoa/distribucion-normal-modelos-de-probabilidad-continuos
      Thanks for watching!!

  • @joshschaffer3142
    @joshschaffer3142 4 года назад

    Nice!

  • @RenatoQuinzio
    @RenatoQuinzio 4 года назад

    Great!

  • @Nabb01
    @Nabb01 5 лет назад

    sir when table for NORMAL DISTRIBUTION IS CREATED,IT SHOWS SYNTAX ERRORS WHEN I TRIED TO WRITE "VAR"

    • @josepromero1452
      @josepromero1452  5 лет назад

      Hi Nabb,
      please, download my file on the description link and check if it works, if so, compare with yours.
      The sentence VAR should work always and it is pretty useful for many DAX instructions.
      Have a nice New Year!!!

  • @josejulianvalles2381
    @josejulianvalles2381 4 года назад

    Cordial saludo Josep, hasta ahora estoy aprendiendo sobre power BI, que pagina en español, me puede recomendar para aprender mas sobre este gran tema.
    gracias,

    • @josepromero1452
      @josepromero1452  4 года назад

      Hola José Julián,
      desgraciadamente hay pocas publicaciones decentes sobre este tema en español...
      Un saludo,
      Josep.

  • @Nabb01
    @Nabb01 5 лет назад

    The syntax for ';' is incorrect. (DAX(VAR MInValue=FLOOR([X-3σ];1)VAR MaxValue=CEILING([X+3σ];1)RETURNSELECTCOLUMNS(CALENDAR( ...this is showing error when i tried creating the new table of normal distribution

    • @josepromero1452
      @josepromero1452  5 лет назад +2

      Hi Nabb!
      Probably you are using an English version of PBI. Please, try to change the ";" for ","
      Hope it helps you.
      Please let me know if this solves the error.
      Josep.

    • @ekadwa
      @ekadwa 5 лет назад

      ​@@josepromero1452​Doing this solves the issue. Thanks for the tutorial.

  • @Extjac
    @Extjac 5 лет назад +1

    another way maybe: f(x) = NORM.DIST('NORMAL DISTRIBUTION'[X],[MEAN (μ) ],[STD.DEV (σ) ],0)

  • @sidneycavalcant
    @sidneycavalcant 4 года назад

    O excel baixado, não está igual ao exibido no vídeo, pode atualizar ?

    • @josepromero1452
      @josepromero1452  4 года назад +1

      Hi Sidney,
      Follow Parts II and III videos.
      Regards!!

  • @felipebrondani2270
    @felipebrondani2270 4 года назад

    I can t find the file with the colestoral data, somebody can help me?

    • @josepromero1452
      @josepromero1452  4 года назад

      Hello Felipe, you can find both files in the link below description.

    • @thetpaingmyo9077
      @thetpaingmyo9077 3 года назад

      @@josepromero1452 Hello Sir , when I check OneDrive folder , I found only 'Distribution normal' excel file, not included 'Diabetes' file that needed to input as you teach. Kindly let me know where can I find that file. Thanks for sharing and sorry for disturbing you.

    • @josepromero1452
      @josepromero1452  3 года назад

      @@thetpaingmyo9077 Hello
      Thet Paing Myo, now it is ready to download. Thanks for the info!

  • @emmanuelzavaleta5794
    @emmanuelzavaleta5794 4 года назад +1

    Sería de mucha ayuda si subes el tutorial en español

    • @josepromero1452
      @josepromero1452  4 года назад

      Gracias por tu comentario, lo tendré en cuenta para próximos videos.

  • @vilayan5573
    @vilayan5573 4 года назад

    Thanks for the video!Will u do a further video to explain how to draw two samples t test?