Forum Discussion

AAbdelkader's avatar
AAbdelkader
Helper I
9 years ago
Solved

Dax or M Language

Hello there,

 

I need to ask which the effective language that should I deep dive into, which language is worthy to rely on my data analysis. I'm still a newbie in BI but I'm familiar with creating the desired report and chart based on a little knowledge of BI. And I need to start deep dive into data analysis through the provided BI language, but the question here Dax or M Language or both of t them? I'm relly messy.

 

thanks a lot.

  • You emphasized Data Analysis twice in your post so I'll say DAX first!

    DAX stands for Data Analysis Expressions after all :smileyhappy:

    That said inevitably you WILL need some knowledge of M

    However the User Interface in the Query Editor is extremely helpful so you can delay having to learn M indefinitely :smileywink:

    Don't let ImkeF and MarcelBeug see this post :smileyvery-happy:

  • Check out this article fresh from the press: http://radacad.com/m-or-dax-that-is-the-question

     

    Agree with Sean : Make use of the wonderful user interface in the query editor which let's you glide into the language with minimal efford, if you start to read the code that has been created with your interactions:

     

    1) Make sure that the Formula Bar is visible (2)

    3) Click on each stepname and see what code has been generated (2)

     

    It's a bit like the Macro-recorder in Excel. It's a painless excercise at the beginning and you will develop a feeling for the syntax of the language and in no time you might start to twitch the code a bit and explore coding :-)

  • Anonymous's avatar
    Anonymous
    9 years ago

    Hi AAbdelkader

     

    I totally agree with ImkeF and Sean.

     

    My advise to my team is simple:

    - import and massage data by using Power Query aka M in Power BI.

    - Create your calculation with DAX.

     

    By learning Dax and M you will learn to find the nuances and intersections in the two languages.

     

12 Replies

  • Sean's avatar
    Sean
    Community Champion

    You emphasized Data Analysis twice in your post so I'll say DAX first!

    DAX stands for Data Analysis Expressions after all :smileyhappy:

    That said inevitably you WILL need some knowledge of M

    However the User Interface in the Query Editor is extremely helpful so you can delay having to learn M indefinitely :smileywink:

    Don't let ImkeF and MarcelBeug see this post :smileyvery-happy:

    • ImkeF's avatar
      ImkeF
      Community Champion

      Check out this article fresh from the press: http://radacad.com/m-or-dax-that-is-the-question

       

      Agree with Sean : Make use of the wonderful user interface in the query editor which let's you glide into the language with minimal efford, if you start to read the code that has been created with your interactions:

       

      1) Make sure that the Formula Bar is visible (2)

      3) Click on each stepname and see what code has been generated (2)

       

      It's a bit like the Macro-recorder in Excel. It's a painless excercise at the beginning and you will develop a feeling for the syntax of the language and in no time you might start to twitch the code a bit and explore coding :-)

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi AAbdelkader

     

    I totally agree with ImkeF and Sean.

     

    My advise to my team is simple:

    - import and massage data by using Power Query aka M in Power BI.

    - Create your calculation with DAX.

     

    By learning Dax and M you will learn to find the nuances and intersections in the two languages.

     

    • jmdh's avatar
      jmdh
      Advocate IV

      If i may add something: i think PowerBI has done a great job at hiding the intricacies of M for the beginner, but has still a lot to improve to do the same for DaX  with mux more power in the UI and better Table and Matrix Visuals, plus imrpoved exports.
      This is especially important since many of these new users will come with their user experience and frankly, sometimes, using Dax is like learning to walk , while you felt you were a champion runner in Excel...

    • MarcelBeug's avatar
      MarcelBeug
      Community Champion

      Not much to add from my side.

      The general rules when to use M or DAX are clearly explained, but in my opinion there are still grey areas where both M and DAX can be used.

       

       

      • Phil_Seamark's avatar
        Phil_Seamark
        Microsoft Employee

        I reckon where there is overlap and it can be done both in DAX or M, then do it in M.  

         

        The less computing the published model has to do the better.  

  • I would add there is a concern we're running into given the Analyze in Excel feature in O365. Amounts/Values with a sigma next to them in your Fields list are not valid candidates for the Values section of the pivot table once you're in Excel. Only Measures with a calculator icon next to them in your Fields list are. So, what might be a valid candidate for aggregations in Power BI might not be available for the Analyze in Excel experience as you might imagine.

  • much replies with great useful points of view. I decided to learn both, but I will start with DAX language. Hope if it will be the best decision.

     

    thanks a lot for every reply. 

    • DoubleJ's avatar
      DoubleJ
      Solution Supplier

      A scenario that might not be a common one but still worth considering: If you plan to transfer your Power BI Model into SSAS Tabular mode in a later stage you should not use Power Query (M) functionality as it is not supported in SSAS. 

       

       

      • Anonymous's avatar
        Anonymous
        Not applicable

        .. Your answer is correct. At the moment.

        But please consider SQL vNExt, which is in CTP and will be released this year.

        SQL vNExt supports Power Query!

         

        Cheers!