获取一天最后一个条目的值
Get a value for the last entry of a day
我有一个值列表,每天有几个条目,跨越几天。我想每天获取最大值、最小值和最后一个值。我正在使用额外的列,因为我没有找到使用度量的方法。
这是一个数据样本:
date
marge
date (Day)
2/1/2021 9:31
832,95
01-févr
2/1/2021 9:54
670,95
01-févr
2/1/2021 10:15
815,65
01-févr
2/1/2021 10:36
890,65
01-févr
2/1/2021 10:57
836,9
01-févr
2/1/2021 11:18
912,4
01-févr
2/1/2021 11:40
1149,25
01-févr
2/1/2021 12:01
1339,15
01-févr
2/1/2021 12:22
1449,3
01-févr
2/1/2021 12:43
1659,2
01-févr
2/1/2021 13:04
1502,6
01-févr
2/1/2021 13:25
1357,3
01-févr
2/1/2021 13:46
1508,85
01-févr
2/1/2021 14:07
1427,65
01-févr
2/1/2021 14:29
1408,05
01-févr
2/1/2021 14:50
1421,1
01-févr
2/1/2021 15:37
1398,85
01-févr
2/1/2021 15:51
1410,85
01-févr
2/1/2021 16:11
1089,2
01-févr
2/1/2021 16:32
1130,55
01-févr
2/1/2021 16:54
1111,45
01-févr
2/1/2021 17:15
1134,9
01-févr
2/1/2021 17:36
1274,85
01-févr
2/1/2021 17:57
1384,75
01-févr
2/1/2021 18:18
1384,75
01-févr
2/2/2021 10:23
761,2
02-févr
2/2/2021 10:44
955,55
02-févr
2/2/2021 12:58
622,85
02-févr
2/2/2021 13:17
668,9
02-févr
2/2/2021 15:16
754,1
02-févr
2/2/2021 16:32
735,7
02-févr
2/2/2021 16:45
722,25
02-févr
2/2/2021 17:05
693,15
02-févr
2/2/2021 17:26
699,05
02-févr
2/2/2021 17:48
644,6
02-févr
2/2/2021 18:09
594,9
02-févr
2/2/2021 18:30
594,9
02-févr
2/3/2021 10:56
513,65
03-févr
2/3/2021 11:15
468,65
03-févr
2/3/2021 11:35
518,25
03-févr
2/3/2021 11:56
643
03-févr
2/3/2021 12:16
584
03-févr
2/3/2021 12:36
656,75
03-févr
2/3/2021 12:56
685,85
03-févr
2/3/2021 13:16
773,7
03-févr
2/3/2021 13:36
755,15
03-févr
2/3/2021 13:56
608,95
03-févr
2/3/2021 14:16
622,6
03-févr
2/3/2021 14:36
580,5
03-févr
2/3/2021 14:56
591,1
03-févr
2/3/2021 15:30
513,35
03-févr
2/3/2021 16:56
354,95
03-févr
2/3/2021 17:30
630,05
03-févr
2/3/2021 17:58
625,2
03-févr
2/4/2021 9:38
524,2
04-févr
2/4/2021 10:04
603,9
04-févr
2/4/2021 10:24
668,2
04-févr
2/4/2021 11:05
612,7
04-févr
2/4/2021 11:28
654,45
04-févr
所以对于最小值和最大值,我有以下公式:
CALCULATE(MAX(intradays[marge]); FILTER(intradays; intradays[date (Day)]=EARLIER(intradays[date (Day)]))
哪个工作正常(MIN 代表 min)
然而,每天获得最后一个是完全不同的故事。我不知道如何实现这一目标。
我正在寻找的值是:
最后 2 月 1 日:1384.75
第二名:595.9
最后第三名:652.2
P.S.: 使用 365.
我创建了这个 table 和一个额外的计算列
DateOnly = FORMAT(Table1[date],"yyyy-mm-dd")
然后创建了 3 个小节:
margeMax = MAX(Table1[marge])
margeMin = MIN(Table1[marge])
margeLast = CALCULATE(
VAR _maxDateTime = MAX(Table1[date])
RETURN MAXX(FILTER(Table1, Table1[date] = _maxDateTime), Table1[marge])
)
生成的 table 可视化:
由于您使用的模型由单个 table(没有维度)组成,因此您必须注意涉及的过滤列。
这是一个度量,首先找到最大日期保持过滤在intradays[date(Day)]上,然后找到对应的Marge,只过滤intradays[date]列。
MAX 用于避免出现两个相同时间戳的错误。
LastMarge =
VAR maxDate =
CALCULATE (
MAX ( intradays[date] ),
ALLEXCEPT ( intradays, intradays[date (Day)] )
)
RETURN
CALCULATE (
MAX ( 'intradays'[marge] ),
intradays[date] = maxDate,
REMOVEFILTERS ( intradays )
)
可以使用度量创建列,例如
LastMargin = [LastMarge]
我有一个值列表,每天有几个条目,跨越几天。我想每天获取最大值、最小值和最后一个值。我正在使用额外的列,因为我没有找到使用度量的方法。
这是一个数据样本:
date | marge | date (Day) |
---|---|---|
2/1/2021 9:31 | 832,95 | 01-févr |
2/1/2021 9:54 | 670,95 | 01-févr |
2/1/2021 10:15 | 815,65 | 01-févr |
2/1/2021 10:36 | 890,65 | 01-févr |
2/1/2021 10:57 | 836,9 | 01-févr |
2/1/2021 11:18 | 912,4 | 01-févr |
2/1/2021 11:40 | 1149,25 | 01-févr |
2/1/2021 12:01 | 1339,15 | 01-févr |
2/1/2021 12:22 | 1449,3 | 01-févr |
2/1/2021 12:43 | 1659,2 | 01-févr |
2/1/2021 13:04 | 1502,6 | 01-févr |
2/1/2021 13:25 | 1357,3 | 01-févr |
2/1/2021 13:46 | 1508,85 | 01-févr |
2/1/2021 14:07 | 1427,65 | 01-févr |
2/1/2021 14:29 | 1408,05 | 01-févr |
2/1/2021 14:50 | 1421,1 | 01-févr |
2/1/2021 15:37 | 1398,85 | 01-févr |
2/1/2021 15:51 | 1410,85 | 01-févr |
2/1/2021 16:11 | 1089,2 | 01-févr |
2/1/2021 16:32 | 1130,55 | 01-févr |
2/1/2021 16:54 | 1111,45 | 01-févr |
2/1/2021 17:15 | 1134,9 | 01-févr |
2/1/2021 17:36 | 1274,85 | 01-févr |
2/1/2021 17:57 | 1384,75 | 01-févr |
2/1/2021 18:18 | 1384,75 | 01-févr |
2/2/2021 10:23 | 761,2 | 02-févr |
2/2/2021 10:44 | 955,55 | 02-févr |
2/2/2021 12:58 | 622,85 | 02-févr |
2/2/2021 13:17 | 668,9 | 02-févr |
2/2/2021 15:16 | 754,1 | 02-févr |
2/2/2021 16:32 | 735,7 | 02-févr |
2/2/2021 16:45 | 722,25 | 02-févr |
2/2/2021 17:05 | 693,15 | 02-févr |
2/2/2021 17:26 | 699,05 | 02-févr |
2/2/2021 17:48 | 644,6 | 02-févr |
2/2/2021 18:09 | 594,9 | 02-févr |
2/2/2021 18:30 | 594,9 | 02-févr |
2/3/2021 10:56 | 513,65 | 03-févr |
2/3/2021 11:15 | 468,65 | 03-févr |
2/3/2021 11:35 | 518,25 | 03-févr |
2/3/2021 11:56 | 643 | 03-févr |
2/3/2021 12:16 | 584 | 03-févr |
2/3/2021 12:36 | 656,75 | 03-févr |
2/3/2021 12:56 | 685,85 | 03-févr |
2/3/2021 13:16 | 773,7 | 03-févr |
2/3/2021 13:36 | 755,15 | 03-févr |
2/3/2021 13:56 | 608,95 | 03-févr |
2/3/2021 14:16 | 622,6 | 03-févr |
2/3/2021 14:36 | 580,5 | 03-févr |
2/3/2021 14:56 | 591,1 | 03-févr |
2/3/2021 15:30 | 513,35 | 03-févr |
2/3/2021 16:56 | 354,95 | 03-févr |
2/3/2021 17:30 | 630,05 | 03-févr |
2/3/2021 17:58 | 625,2 | 03-févr |
2/4/2021 9:38 | 524,2 | 04-févr |
2/4/2021 10:04 | 603,9 | 04-févr |
2/4/2021 10:24 | 668,2 | 04-févr |
2/4/2021 11:05 | 612,7 | 04-févr |
2/4/2021 11:28 | 654,45 | 04-févr |
所以对于最小值和最大值,我有以下公式:
CALCULATE(MAX(intradays[marge]); FILTER(intradays; intradays[date (Day)]=EARLIER(intradays[date (Day)]))
哪个工作正常(MIN 代表 min)
然而,每天获得最后一个是完全不同的故事。我不知道如何实现这一目标。
我正在寻找的值是:
最后 2 月 1 日:1384.75
第二名:595.9
最后第三名:652.2
P.S.: 使用 365.
我创建了这个 table 和一个额外的计算列
DateOnly = FORMAT(Table1[date],"yyyy-mm-dd")
然后创建了 3 个小节:
margeMax = MAX(Table1[marge])
margeMin = MIN(Table1[marge])
margeLast = CALCULATE(
VAR _maxDateTime = MAX(Table1[date])
RETURN MAXX(FILTER(Table1, Table1[date] = _maxDateTime), Table1[marge])
)
生成的 table 可视化:
由于您使用的模型由单个 table(没有维度)组成,因此您必须注意涉及的过滤列。
这是一个度量,首先找到最大日期保持过滤在intradays[date(Day)]上,然后找到对应的Marge,只过滤intradays[date]列。
MAX 用于避免出现两个相同时间戳的错误。
LastMarge =
VAR maxDate =
CALCULATE (
MAX ( intradays[date] ),
ALLEXCEPT ( intradays, intradays[date (Day)] )
)
RETURN
CALCULATE (
MAX ( 'intradays'[marge] ),
intradays[date] = maxDate,
REMOVEFILTERS ( intradays )
)
可以使用度量创建列,例如
LastMargin = [LastMarge]