我有一个excel power查询(也添加到powerpivot数据表),有两个字段:Location和OpenedTime。位置列有许多重复项,例如:
Location OpenedTime
LOC_1 9/25/2016 1:48:56 AM
LOC_2 9/30/2016 2:01:00 PM
LOC_1 10/10/2016 12:08:00 PM
LOC_3 9/17/2016 9:35:43 PM
LOC_1 10/15/2016 11:14:21 AM
LOC_2 10/16/2016 8:27:34 PM
LOC_3 10/18/2016 11:52:27 AM
LOC_2 10/22/2016 9:09:00 AM
我正在寻找的是计算3个地点的开放时间差异的方法。
因此,对于LOC_1,新列将显示10/10/2016 12:08:00 PM和9/25/2016 1:48:56 AM之间的差异。
由于有多个时间戳来计算差异,我想是否有可能将所有差异平均为每个LOC的一个平均差异
谢谢!
答案 0 :(得分:0)
您可以采取以下措施来获得所需的结果:
使用此DAX表达式向PowerPivot表添加新列:
Previous Date=
CALCULATE (
MAX ( [OpenedTime] ),
FILTER (
TableName,
EARLIER ( TableName[OpenedTime] ) > [OpenedTime]
&& EARLIER ( TableName[Location] ) = [Location]
)
)
这个表达式得到上一个针对你的日期应该计算每一行的差异,请注意,如果没有前一个日期,它就会留下BLANK。
然后将第二个计算列添加到PowerPivot表中以计算Minutes
中的差异:
Diff (Min)=DATEDIFF([Previous Date],[OpenedTime],MINUTE)
如果你想计算小时差异,只需用HOUR或DAY或SECONDS等替换MINUTE
它会为您提供一个有差异的列,然后您可以通过创建一个度量来轻松计算平均值:
Avg OpenedTime (Min) := AVERAGE(TablaName[Diff (Min)])
如果有帮助,请告诉我。