如何使PowerQuery到达:
生成缺少的日期
使用先前的最新值填充缺少的日期
所需的输入和输出概述如下:
输入
.astype(np.float)
输出
+------------+------+-------+
|DATE | CUR | RATE |
+------------+------+-------+
| 01-01-2019 | EUR | 0.7 |
| 01-01-2019 | USD | 0.8 |
| 03-01-2019 | EUR | 0.71 |
| 03-01-2019 | USD | 0.81 |
答案 0 :(得分:0)
尝试以下
(a)透视原始数据(b)创建从原始列表的最小值到最大值的所有日期(c)删除重复项(d)将缺失的日期附加到原始表中(e)使用fill ... down填充(f)毫无疑问
let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"DATE", type number}, {"CUR", type text}, {"RATE", Int64.Type}}),
#"Pivoted Column" = Table.Pivot(#"Changed Type", List.Distinct(#"Changed Type"[CUR]), "CUR", "RATE", List.Sum),
List = Table.FromList(List.Difference({List.Min(#"Changed Type"[DATE]) .. List.Max(#"Changed Type"[DATE])},#"Changed Type"[DATE]), Splitter.SplitByNothing(), null,null),
#"Renamed Columns" = Table.RenameColumns(List,{{"Column1", "DATE"}}),
Combined= #"Pivoted Column" & #"Renamed Columns",
#"Sorted Rows" = Table.Sort(Combined,{{"DATE", Order.Ascending}}),
#"Filled Down" = Table.FillDown(#"Sorted Rows",{"EUR", "USD"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Filled Down",{{"DATE", type date}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type1", {"DATE"}, "Attribute", "Value")
in #"Unpivoted Columns"