Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago
Solved

Segregating two outcomes based on a distinct value

Dear community,

hope you are fine.

 

I'm trying to segregate rows with common Year but with different values on Priority scale, to use on another table.

 

The rule should be: for a specific ID, if a certain Year has just Priority #1, then average its prices; if the Year has both Priorities #1 and #4, then exclude Priority #1 rows, and pick the price of Priority #4; if the Year just has Priority #4, then pick the price of Priority #4.

 

So my data sample is something like this below:

IDYEARPRIORITYPRICE
1202315
1202313
1202411
1202412
1202441
1202544
1202641

 

And the desired outcome would be:

IDYEARPRIORITYPRICE
1202314
1202441
1202544
1202641

 

Note: There will be several different IDs in the data model.

 

 

Any help, please?

 

Thanks a lot!

 

Regards

  • Hello Anonymous 

     

    The solution is attached for your reference.

    I have created couple of measures and a table using dax based on the condition when 

    -Priority = 4 -> keep the price same for the year.

    -Prioirty = 1 -> average the price for the year.

     

    https://drive.google.com/file/d/17Vjx0hbq_wJltpGuZKuAhkmZ_QQv0Gn4/view?usp=sharing

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and I would love to see your like.

     

    Regards

    Kumail Raza

     

8 Replies

  • Kumail's avatar
    Kumail
    Impactful Individual

    Hello Anonymous 

     

    The solution is attached for your reference.

    I have created couple of measures and a table using dax based on the condition when 

    -Priority = 4 -> keep the price same for the year.

    -Prioirty = 1 -> average the price for the year.

     

    https://drive.google.com/file/d/17Vjx0hbq_wJltpGuZKuAhkmZ_QQv0Gn4/view?usp=sharing

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and I would love to see your like.

     

    Regards

    Kumail Raza

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      Kumail Thanks for your help!

      I can take as good your suggestion. 

       

      Best regards

  • Anonymous , Try a measure like


    averageX(summarize(Table, Table[year], "_1", calculate(average(Table[PRICE]), Table[PRIORITY] =1), "_2", calculate(average(Table[PRICE]), Table[PRIORITY] =4)), if(not(isblank(_2)) && not(isblank(_1)), [_2],if(not(isblank(_2)),[_2],[_1] )))

     

    take max for PRIORITY

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi amitchandak! thanks for your tip. 

      First, I forget to add the ID column in the sample tables, which may make any differences.

       

      Don't know if it's related with that point that I mentioned above, but unfortunately your solution didn't work.

       

      Do you have any clue on that?

  • Kumail's avatar
    Kumail
    Impactful Individual

    Hello Anonymous 

     

    If you could provide sample .pbix file, that would greatly help writing you a solution quickly.

     

    Regards

    Kumail Raza

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi Kumail! thanks for your interest!

      Unforntunately this is a company reserved data model, I can not share the file, but the tables that I posted have the data I need.

       

      Cheers

      • Kumail's avatar
        Kumail
        Impactful Individual

        Anonymous You can just send the .pbix with the current table and I will get back to you. 

         

        Regards

        Kumail Raza

  • Kumail's avatar
    Kumail
    Impactful Individual

    Hello Anonymous 

     

    The solution is attached for your reference.

    I have created couple of measures and a table using dax based on the condition when 

    -Priority = 4 -> keep the price same for the year.

    -Prioirty = 1 -> average the price for the year.

     

    https://drive.google.com/file/d/17Vjx0hbq_wJltpGuZKuAhkmZ_QQv0Gn4/view?usp=sharing

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly and I would love to see your like.

     

    Regards

    Kumail Raza