请问两列,一列文本列,一列数值列,怎么转换为以文本列为标题的多列数据

Power Query 学呗 ⋅ 于 2019-08-02 15:58:22 ⋅ 最后回复由 学呗 2019-08-07 09:34:03 ⋅ 2380 阅读

题目:
姓名 性别 年龄 尺码1 尺码2 尺码3 尺码4 尺码5 颜色1 颜色2 颜色3 颜色4 颜色5 品类1 品类2 品类3 品类4 品类5
张三 男 24 1 2 3 4 5 7 7 4 4 2 11 11 140 140 11
李四 女 22 66 36 66 36 1 18 1 1 147 11 12 13
王五 男 23 54 1 4 8 40 142
file
结果表如下:
姓名 性别 年龄 尺码 颜色 品类
张三 男 24 1 7 11
张三 男 24 2 7 11
张三 男 24 3 4 140
张三 男 24 4 4 140
张三 男 24 5 2 11
file

第一次发贴,不知道怎么发图片和文件,请各位多多包含

最佳答案
  • 焦棚子 微软 MVP
    2019-08-02 22:51:36

    file

    let
        源 = Table.Buffer(Excel.CurrentWorkbook(){[Name="demo"]}[Content]),
        NL = List.Buffer(Table.ColumnNames(源)),
        RL = (N)=>{NL{2+N},NL{7+N},NL{12+N}},
        fx = (T as table,N as number)=> Table.ToRecords(Table.SelectColumns(T, RL(N)   )){0},
        TL = List.Transform({1..5},(F)=>Table.ExpandRecordColumn(Table.Group(源, {"姓名", "性别", "年龄"}, {{"TB", each  fx(_,F) }}), "TB", RL(F), {"尺码", "颜色", "品类"})),
        合并 = Table.Combine(TL),
        干掉null = Table.SelectRows(合并, each [尺码] <> null and [颜色] <> null and [品类] <> null)
    in
        干掉null

    测试了1万行,秒出,但是我觉得你逆透视就好了,为什么要这么做呢?

    file

回复数量: 2
  • 焦棚子 微软 MVP
    2019-08-02 22:51:36

    file

    let
        源 = Table.Buffer(Excel.CurrentWorkbook(){[Name="demo"]}[Content]),
        NL = List.Buffer(Table.ColumnNames(源)),
        RL = (N)=>{NL{2+N},NL{7+N},NL{12+N}},
        fx = (T as table,N as number)=> Table.ToRecords(Table.SelectColumns(T, RL(N)   )){0},
        TL = List.Transform({1..5},(F)=>Table.ExpandRecordColumn(Table.Group(源, {"姓名", "性别", "年龄"}, {{"TB", each  fx(_,F) }}), "TB", RL(F), {"尺码", "颜色", "品类"})),
        合并 = Table.Combine(TL),
        干掉null = Table.SelectRows(合并, each [尺码] <> null and [颜色] <> null and [品类] <> null)
    in
        干掉null

    测试了1万行,秒出,但是我觉得你逆透视就好了,为什么要这么做呢?

    file

  • 学呗
    2019-08-07 09:34:03

    谢谢你的回复,^_^,新手入门,在摸索阶段,

暂无评论~~
  • 请务必阅读并严格遵守《社区管理规范与使用说明》
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 发送表情,可用的 Emoji 见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板粘贴上传, 格式限制 - jpg, png, gif
  • 不支持上传附件,请尽可能用文字和图片将问题描述清楚,如实在需要上传附件,可上传到 共享网盘 后分享链接
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter