Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Difference between MIN and current value for filtered incremental values

The dataset looks something like this and is only downloaded for a given month:

data.energylocation.circuitreceived
24026total10/08/2019 00:59
23906total09/08/2019 21:50
22589total09/08/2019 04:45
10258socket10/08/2019 00:30
10134socket09/08/2019 13:56
9945socket07/08/2019 23:34
2458light09/08/2019 14:45
2223light05/08/2019 23:47
2046light02/08/2019 15:29

I am interested in the energy consumption per circuit for that month. As the energy values constantly increase, I would like to calculate the difference with the MIN for that month at each point in time (i.e. keep it incremental, but remove the offset). As the energy data mixes all the different circuits together, I need to figure out the MIN for each circuit and substract accordingly (presumably using filters).
I tried something like the below, but to no success:

 

 

EnergyUsed = 
CALCULATE(
    SUM(August[data.energy]),
    FILTER(
        ALLEXCEPT(August, August[location.circuit]),
        August[data.energy] = MIN(August[data.energy])
    )
)

 

 

So assuming the MIN for total was 22000, for socket the MIN was 9900 and for light the MIN was 2000, I would expect the results to look like this:

data.energylocation.circuitreceived
2026total10/08/2019 00:59
1906total09/08/2019 21:50
589total09/08/2019 04:45
358socket10/08/2019 00:30
234socket09/08/2019 13:56
45socket07/08/2019 23:34
458light09/08/2019 14:45
223light05/08/2019 23:47
46light02/08/2019 15:29
1 ACCEPTED SOLUTION
v-yuta-msft
Community Support
Community Support

@Anonymous ,

 

Create a calculate column using dax below:

EnergyUsed = SWITCH(August[location.circuit], "total", August[data.energy] - 22000, "socket", August[data.energy] - 9900, "light", August[data.energy] - 2000)

Capture.PNG 

 

Community Support Team _ Jimmy Tao

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

View solution in original post

2 REPLIES 2
v-yuta-msft
Community Support
Community Support

@Anonymous ,

 

Create a calculate column using dax below:

EnergyUsed = SWITCH(August[location.circuit], "total", August[data.energy] - 22000, "socket", August[data.energy] - 9900, "light", August[data.energy] - 2000)

Capture.PNG 

 

Community Support Team _ Jimmy Tao

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

Anonymous
Not applicable

Thanks @v-yuta-msft for picking this up. (Original this post was refused, so I had to submit it again and got an answer, see here: https://community.powerbi.com/t5/Desktop/Difference-between-MIN-and-current-values-based-on-filter-o...)

 

However, your solution would work, too (so I'll mark it), but it would be quite labour intensive, i.e. every month when I download a new dataset, I would need to manually figure out the mininmum for each location.circuit....

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.