我有一个这样的表(只有一列,所有日期都写在一个单元格中,由定界符分隔)。如何从这些值中列出日期,并计算特定行中的MAX
和MIN
值?
values
1. 01. 2019;5. 07. 2016;3. 05. 2014;1. 04. 2019;7. 04. 2016
2. 01. 2019;6. 07. 2016;2. 01. 2019;3. 01. 2019;8. 04. 2016
3. 01. 2019;7. 07. 2016;4. 01. 2019;9. 07. 2016
8. 07. 2016;8. 07. 2016;9. 07. 2016;4. 01. 2019;10. 04. 2016
5. 01. 2019;3. 04. 2019;8. 04. 2016;11. 04. 2016
6. 01. 2019;2. 04. 2019;6. 01. 2019;6. 07. 2016
我尝试做List.Max([values])
,但这不起作用。
答案 0 :(得分:1)
您可以将单个列的每条记录Transform
添加到list
的日期中,然后为Min
和Max
值添加列:
let
Source = YourTable
#"Listed Dates" = Table.TransformColumns(Source, {{"Column1", each List.Transform(Text.Split(_,";"), each Date.FromText(_))}}),
#"Added Min" = Table.AddColumn(#"Listed Dates", "Min Date", each List.Min([Column1]), type date),
#"Added Max" = Table.AddColumn(#"Added Min", "Max Date", each List.Max([Column1]), type date)
in
#"Added Max"
有关工作示例,请参见https://pwrbi.com/so_56333087/
答案 1 :(得分:0)
我首先添加一个Index列(以保留行上下文),然后将 values 列(按定界符)拆分为Rows(高级选项)。这将为每个分隔的子字符串(日期)产生一行。
然后,我将使用“使用区域设置更改类型”将结果 values 列转换为Date数据类型。它可能首先需要一些字符串操作,例如用空字符串替换空格。
最后,我将汇总值列的最大值和最小值,并按索引列(在上面添加)进行分组。