Context:我从考勤系统中提取原始数据,它向我显示人们进出办公室的时间.我需要转换数据,以便计算一些统计数据和图表.
Input:我的Power查询的最后一步看起来是这样的:
Name | DateIn | AM_PM | TimeMin | TimeMax | AM_In_raw | AM_Out_raw | PM_In_raw | PM_Out_raw |
---|---|---|---|---|---|---|---|---|
Pablo | 29/4/2024 | AM | 08:27:21 | 12:22:01 | 08:27:21 | 12:22:01 | 00:00:00 | 00:00:00 |
Pablo | 29/4/2024 | PM | 14:13:02 | 19:16:00 | 00:00:00 | 00:00:00 | 14:13:02 | 19:16:00 |
Pablo | 30/4/2024 | AM | 08:09:15 | 12:17:24 | 08:09:15 | 12:17:24 | 00:00:00 | 00:00:00 |
Pablo | 30/4/2024 | PM | 14:17:28 | 18:06:04 | 00:00:00 | 00:00:00 | 14:17:28 | 18:06:04 |
Desired Output:我想按名称和日期对行进行分组,并对时间列进行总和,因此每个名称和日期的进出时间都在一行中.它应该看起来像这样:
Name | DateIn | AM_In | AM_Out | PM_In | PM_Out |
---|---|---|---|---|---|
Pablo | 29/4/2024 | 08:27:21 | 12:22:01 | 14:13:02 | 19:16:00 |
Pablo | 30/4/2024 | 08:09:15 | 12:17:24 | 14:17:28 | 18:06:04 |
Problem:当我try 对日期进行总和(聚合)时,大多数单元格都会出现"错误".
= Table.Group(#"Filtered Pablo", {"Name", "Date"},
{{"AM_In", each List.Sum([AM_In_raw]), type any},
{"AM_Out", each List.Sum([AM_Out_raw]), type any},
{"PM_In", each List.Sum([PM_In_raw]), type any},
{"PM_Out", each List.Sum([PM_Out_raw]), type any}})
Question:使用Excel中的Power Query将多行合并为仅包含所有有效值的行的好方法是什么?
提前感谢您提供的任何线索,以找到有效的解决方案.如果有最佳实践或技术来解决不同场景下的此类问题,我们将不胜感激.
SQL或Python解决方案也受到欢迎.