Forum Discussion
viitama
8 years agoFrequent Visitor
Create column based on other columns
Hi,
I have following table and would like to recreate res column.
| id | time | val | res |
| A | 1 | 12 | 12 |
| A | 2 | 9 | 12 |
| A | 3 | 15 | 12 |
| B | 1 | 24 | 24 |
| B | 2 | 22 | 24 |
| B | 3 | 27 | 24 |
res column whould value from val column which equals minimum time column. What is easiest way to achieve this? This should be done for each id as a group.
If Min time can be other than 1, then this column
Res = VAR Mintime = CALCULATE ( MIN ( TableName[time] ), ALLEXCEPT ( TableName, TableName[id] ) ) RETURN CALCULATE ( MIN ( TableName[val] ), FILTER ( ALLEXCEPT ( TableName, TableName[id] ), TableName[time] = Mintime ) )
4 Replies
- Zubair_MuhammadCommunity Champion
If Min time is always 1, then you can use
Res = CALCULATE ( MIN ( TableName[val] ), FILTER ( ALLEXCEPT ( TableName, TableName[id] ), TableName[time] = 1 ) )- Zubair_MuhammadCommunity Champion
If Min time can be other than 1, then this column
Res = VAR Mintime = CALCULATE ( MIN ( TableName[time] ), ALLEXCEPT ( TableName, TableName[id] ) ) RETURN CALCULATE ( MIN ( TableName[val] ), FILTER ( ALLEXCEPT ( TableName, TableName[id] ), TableName[time] = Mintime ) ) - viitamaFrequent Visitor
Thanks. What about if Val column is text? What can be used instead of minimum to get that text to new column. This is just extra but would like to know.
- Zubair_MuhammadCommunity ChampionHi
You can also use
Selectedvalue or Values