如何用 Table.TransformRows 和 Text.Upper 把表中的某一行变成大写字母

Power Query 鸡尾酒 ⋅ 于 2019-09-08 18:36:22 ⋅ 最后回复由 鸡尾酒 2019-09-08 20:47:02 ⋅ 2392 阅读

处理一些数据,数据来源第一行有的是大写,有的是小写,为了后续处理方便,需要把第一行(标题行)都变成大写。
之前的做法是把Table 转置,第一行(Row)就变成第一列(Column),然后把第一列变成大写,再转置回去,提升第一行作为标题行,总觉得这样做太繁琐,逻辑上讲可以把第一行直接变成大写,再提升其作为标题行。
之前转置方法的code如下(用Table.TransformColumns):

let
    Source = Csv.Document(#"Sample File Parameter1",[Delimiter=",", Columns=27, Encoding=65001, QuoteStyle=QuoteStyle.None]),
    #"Transposed Table" = Table.Transpose(Source),//转置
    #"Uppercased Text" = Table.TransformColumns(#"Transposed Table",{{"Column1", Text.Upper, type text}}),//把第一行改成大写
    #"Transposed Table1" = Table.Transpose(#"Uppercased Text"),//转置回去
    #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table1", [PromoteAllScalars=true]),//把第一行作为标题
    #"Added Index" = Table.AddIndexColumn(#"Promoted Headers", "Index", 2, 1),
    #"Renamed Columns" = Table.RenameColumns(#"Added Index",{{"Index", "Row_No"}})
in
    #"Renamed Columns"
成为第一个点赞的人吧 :bowtie:
最佳答案
  • deadzlq 无我,亦无期
    2019-09-08 20:11:22

    PQ参考解法

    file

回复数量: 3
  • deadzlq 无我,亦无期
    2019-09-08 20:11:22

    PQ参考解法

    file

  • deadzlq 无我,亦无期
    2019-09-08 20:17:16

    若是第一行 直接 Table.PromoteHeaders + Table.TransformColumnNames

  • 鸡尾酒 一个初学者
    2019-09-08 20:47:02

    谢谢,问题解决了。对PQ不熟,以后还得多学习。

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