<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: % Variation in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981815#M99971</link>
    <description>&lt;P&gt;hi&amp;nbsp;Anonymous&lt;/LI-USER&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;try to plot a table with this:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;VAR% =&lt;BR /&gt;VAR _minprice =&lt;BR /&gt;CALCULATE(&lt;BR /&gt;MIN(TableName[Value]),&lt;BR /&gt;ALL(TableName),&lt;BR /&gt;VALUES(TableName[Stock])&lt;BR /&gt;)&lt;BR /&gt;VAR _price = MIN(TableName[Value])&lt;BR /&gt;RETURN&lt;BR /&gt;DIVIDE(_price- _minprice , _minprice)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;i tried and it worked like this:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;img /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Wed, 21 Dec 2022 13:06:59 GMT</pubDate>
    <dc:creator>FreemanZ</dc:creator>
    <dc:date>2022-12-21T13:06:59Z</dc:date>
    <item>
      <title>% Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981744#M99968</link>
      <description>&lt;P&gt;Hey all,&lt;BR /&gt;&lt;BR /&gt;I want to calculate the % variation of a stock, but I am having trouble to lock it's earliest and lastest value to perform my calculation.&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Stock&lt;/TD&gt;&lt;TD&gt;MaxDate&lt;/TD&gt;&lt;TD&gt;year-month&lt;/TD&gt;&lt;TD&gt;Value&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;7/31/2022&lt;/TD&gt;&lt;TD&gt;Jul-22&lt;/TD&gt;&lt;TD&gt;14&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;8/31/2022&lt;/TD&gt;&lt;TD&gt;Aug-22&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;9/30/2022&lt;/TD&gt;&lt;TD&gt;Sep-22&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;10/31/2022&lt;/TD&gt;&lt;TD&gt;Oct-22&lt;/TD&gt;&lt;TD&gt;12&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;A&lt;/TD&gt;&lt;TD&gt;11/30/2022&lt;/TD&gt;&lt;TD&gt;Nov-22&lt;/TD&gt;&lt;TD&gt;16&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;7/31/2022&lt;/TD&gt;&lt;TD&gt;Jul-22&lt;/TD&gt;&lt;TD&gt;74&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;8/31/2022&lt;/TD&gt;&lt;TD&gt;Aug-22&lt;/TD&gt;&lt;TD&gt;65&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;9/30/2022&lt;/TD&gt;&lt;TD&gt;Sep-22&lt;/TD&gt;&lt;TD&gt;64&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;10/31/2022&lt;/TD&gt;&lt;TD&gt;Oct-22&lt;/TD&gt;&lt;TD&gt;67&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;B&lt;/TD&gt;&lt;TD&gt;11/30/2022&lt;/TD&gt;&lt;TD&gt;Nov-22&lt;/TD&gt;&lt;TD&gt;80&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;7/31/2022&lt;/TD&gt;&lt;TD&gt;Jul-22&lt;/TD&gt;&lt;TD&gt;110&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;8/31/2022&lt;/TD&gt;&lt;TD&gt;Aug-22&lt;/TD&gt;&lt;TD&gt;105&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;9/30/2022&lt;/TD&gt;&lt;TD&gt;Sep-22&lt;/TD&gt;&lt;TD&gt;90&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;10/31/2022&lt;/TD&gt;&lt;TD&gt;Oct-22&lt;/TD&gt;&lt;TD&gt;110&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C&lt;/TD&gt;&lt;TD&gt;11/30/2022&lt;/TD&gt;&lt;TD&gt;Nov-22&lt;/TD&gt;&lt;TD&gt;85&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Besides this table, there is also a Calendar table that is connect by a Date column.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For Stock A I always want to Initial Value to be = 14. Then, as the months go by I want to:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;August % = (15-14)/14&lt;/LI&gt;&lt;LI&gt;September =&amp;nbsp;(15-14)/14&lt;/LI&gt;&lt;LI&gt;October =&amp;nbsp;(12-14)/14&lt;/LI&gt;&lt;LI&gt;November =&amp;nbsp;(16-14)/14&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How can I do this? Thanks!&lt;/P&gt;</description>
      <pubDate>Thu, 22 Dec 2022 12:40:06 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981744#M99968</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-12-22T12:40:06Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981815#M99971</link>
      <description>&lt;P&gt;hi&amp;nbsp;Anonymous&lt;/LI-USER&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;try to plot a table with this:&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;VAR% =&lt;BR /&gt;VAR _minprice =&lt;BR /&gt;CALCULATE(&lt;BR /&gt;MIN(TableName[Value]),&lt;BR /&gt;ALL(TableName),&lt;BR /&gt;VALUES(TableName[Stock])&lt;BR /&gt;)&lt;BR /&gt;VAR _price = MIN(TableName[Value])&lt;BR /&gt;RETURN&lt;BR /&gt;DIVIDE(_price- _minprice , _minprice)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;i tried and it worked like this:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;img /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 21 Dec 2022 13:06:59 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981815#M99971</guid>
      <dc:creator>FreemanZ</dc:creator>
      <dc:date>2022-12-21T13:06:59Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981860#M99972</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="460868" data-lia-user-login="FreemanZ" class="lia-mention lia-mention-user"&gt;FreemanZ&lt;/a&gt;&amp;nbsp;!&lt;BR /&gt;&lt;BR /&gt;Thanks, that worked! Just need a small adjustment. How do I get rid of those date that don't have any values?&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 21 Dec 2022 13:16:59 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981860#M99972</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-12-21T13:16:59Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981877#M99974</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&amp;nbsp;try like:&lt;/P&gt;&lt;DIV&gt;VAR% =&lt;DIV&gt;VAR _minprice =&lt;DIV&gt;CALCULATE(&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MIN(TableName[Value]),&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ALL(TableName),&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;VALUES(TableName[Stock])&lt;DIV&gt;)&lt;DIV&gt;VAR _price = MIN(TableName[Value])&lt;DIV&gt;RETURN&lt;DIV&gt;IF(&lt;DIV&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;_price&amp;lt;&amp;gt;0,&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;DIVIDE(_price- _minprice ,&amp;nbsp;&amp;nbsp;_minprice)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;DIV&gt;)&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;Anonymous&lt;/a&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 21 Dec 2022 13:20:07 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2981877#M99974</guid>
      <dc:creator>FreemanZ</dc:creator>
      <dc:date>2022-12-21T13:20:07Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984205#M100100</link>
      <description>&lt;P&gt;&lt;A href="https://community.powerbi.com/t5/user/viewprofilepage/user-id/460868" target="_blank" rel="noopener"&gt;@FreemanZ&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;I had to rephrase the problem.&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The solution you present is fine, but it only takes in account that the values from the Value column are always growing. So, I changed the table and what I am looking for is the oldest value for a given Stock and not the minimum.&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Dec 2022 12:44:06 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984205#M100100</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-12-22T12:44:06Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984318#M100104</link>
      <description>&lt;P&gt;hi&amp;nbsp;Anonymous&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;try like:&lt;/P&gt;&lt;LI-CODE lang="python"&gt;VAR% = 
VAR _price = MAX(TableName[Value])
VAR _stock = MAX(TableName[Stock])
VAR _earliestdate =     //earliest date for the current stock
MINX(
    FILTER(
        ALL(TableName),
        TableName[Stock] = _stock
    ),
    TableName[MaxDate]
)
VAR _earliestprice =    //value on the earliest date for the current stock
MINX(
    FILTER(
        ALL(TableName),
        TableName[Stock] = _stock
            &amp;amp;&amp;amp;TableName[MaxDate]=_earliestdate
    ),
    TableName[Value]
)
RETURN
IF(
    _price&amp;lt;&amp;gt;0,
    DIVIDE(_price- _earliestprice, _earliestprice)
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Dec 2022 13:19:55 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984318#M100104</guid>
      <dc:creator>FreemanZ</dc:creator>
      <dc:date>2022-12-22T13:19:55Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984396#M100107</link>
      <description>&lt;P&gt;this is with less codes and shall also work:&lt;/P&gt;&lt;LI-CODE lang="python"&gt;VAR%4 = 
VAR _price = MAX(TableName[Value])
VAR _earliestprice =
CALCULATE(
    MIN( TableName[Value]),
    TOPN(
        1,
        CALCULATETABLE(TableName, ALLEXCEPT( TableName, TableName[Stock])),
        TableName[MaxDate],
        ASC
    )
)
RETURN
IF(
    _price&amp;lt;&amp;gt;0,
    DIVIDE(_price- _earliestprice, _earliestprice)
)&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Dec 2022 13:52:33 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984396#M100107</guid>
      <dc:creator>FreemanZ</dc:creator>
      <dc:date>2022-12-22T13:52:33Z</dc:date>
    </item>
    <item>
      <title>Re: % Variation</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984780#M100128</link>
      <description>&lt;P&gt;Since the value of a stock can go to zero, I would just change _price &amp;lt;&amp;gt;0 to NOT(ISBLANK(_price))&lt;/P&gt;</description>
      <pubDate>Thu, 22 Dec 2022 16:13:01 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Variation/m-p/2984780#M100128</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2022-12-22T16:13:01Z</dc:date>
    </item>
  </channel>
</rss>

