所以我有一个Excel文件,其中第一列是捐赠者,然后有成对的10年金额和日期列,如下所示:
Donor Name 2019 Amt 2019 Date 2018 Amt 2018 Date 2017 Amt 2017 Date
------------- -------- ---------- -------- ---------- -------- ----------
Someone Here 50 08/21/2019
Someone Else 150 06/15/2019 75 05/04/2018
Another One 125 03/03/2017
我正在寻找的是:
Donor Name Amount Date
------------ ------ ----------
Someone Here 50 08/21/2019
Someone Else 150 06/15/2019
Someone Else 75 05/04/2018
Another One 125 03/03/2017
当我只取消透视捐赠者名称以外的列时,我得到每个条目的成对记录。它更接近我要寻找的内容,但不确定如何将其转换为上面的内容。也许枢转不是答案?
您需要取消透视这些列,然后将其向后旋转。
1)取消枢纽 Donor Name
= Table.UnpivotOtherColumns(#"Changed Type", {"Donor Name "}, "Attribute", "Value")
2)Attribute
用空格分隔符或前4个字符分隔列(稍后需要年份值)。确保标题名称中没有开头或结尾空格。
= Table.SplitColumn(#"Unpivoted Other Columns", "Attribute",
Splitter.SplitTextByDelimiter(" ", QuoteStyle.Csv),
{"Attribute.1", "Attribute.2", "Attribute.3"})
3)删除Attribute.3
列,但是保留Attribute.1
列,以防万一同一捐赠者的数据跨越了数年(Someone Else
在此示例中)
= Table.RemoveColumns(#"Split Column by Delimiter",{"Attribute.3"})
4)旋转回来。枢轴Attribute.2
依据Value
= Table.Pivot(#"Removed Columns",
List.Distinct(#"Removed Columns"[Attribute.2]), "Attribute.2", "Value")
5)(可选)Attribute.1
列,其中包含年份信息,现在可以根据需要删除
= Table.RemoveColumns(#"Pivoted Column",{"Attribute.1"})
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句