美文网首页PowerQueryPowerQuery
PowerQuery中为动态列重命名的方法

PowerQuery中为动态列重命名的方法

作者: PowerQuery | 来源:发表于2018-02-27 18:17 被阅读103次

注:本文和之前的PowerQuery中列名动态化方法有关联,只不过本例处理的是特定一个单列的重命名问题。
【需求】对下图中的动态列进行列名重命名(图中“海伦堡地产.csv”是动态列名)。

需重命名的列
这个动态列产生的原因在于合并文件夹下多个文件时带来。由于不知道该文件下哪一个文件会排在最前面,从而导致该列是动态的。在实际应用中我们需要将其命名为一个有意义的名称,如“客户”。

最直观的思路是确保该列排在第一(一般情况下确实如此),这样可以用

  = Table.RenameColumns(#"Promoted Headers",{{List.First(Table.ColumnNames( #"Promoted Headers"), "客户"}})

来实现我们的目标。

但是万一这一列因为某种原因不是排在第一列了,上面的方法会出错。因此有了第二种办法。

第二种办法是寻找动态列的共性。在本例中无论动态列内容怎么变化,该列列名都有“.csv”这个文件后缀。因此,可以从这里入手。

用List.Select()函数来筛选包含“.csv”字符的元素,这样可以得到一个包含一个元素的list,再用list{index}的方法(其实用List.First()函数也可以)获取到这个元素本身,接下来依然是常规的重命名列的方式:

= Table.RenameColumns(#"Promoted Headers",{{List.Select(Table.ColumnNames( #"Promoted Headers"),each Text.Contains(_,"csv")){0}, "客户"}})

相关文章

  • PowerQuery中为动态列重命名的方法

    注:本文和之前的PowerQuery中列名动态化方法有关联,只不过本例处理的是特定一个单列的重命名问题。【需求】对...

  • PowerQuery中动态改变列值的几种方法

    在PowerQuery中,我们经常需要动态改变一列的值。我知道的有两种情形:1.在不涉及表格中的其他列的情况下改变...

  • PowerQuery中列名动态化方法

    先来个题外话:我个人感觉天朝无论是政府还是普通民众还是企业,规范意识都相当糟糕。 这个题外话和这篇帖子的主题有什么...

  • Power Query新建列,这个方法很便捷

    ​ PowerQuery中,对两列或者多列的计算一般通过添加自定义列来实现,以下表为例, 如果需要1月和2月数据的...

  • powerquery合并列空值不合并问题

    在使用powerquery进行数据处理时,需要合并动态数量的列,且列中值会有空的情况; 一开始使用的是如下代码: ...

  • PowerBI基础:理解计算列

    计算列是用在模型中使用DAX创建的新列,而不是从数据源或者PowerQuery中加载的。 计算列与表中的任何其他列...

  • R语言对全部或者某一列名重命名

    对全部列重命名: 对某一列重命名: 常用:colnames(data)[colnames(data)=="gene...

  • Hive 修改table、column

    表 1、重命名表重命名表的语句如下: 2、修改表属性: 3、修改表注释 列 1、添加列 2、修改列 分区 1、增加...

  • Mysql 命令行

    Mysql 命令行 Alter使用 主键 增加一个新列 删除列 重命名列 改变列的类型 重命名表 加索引 加主关键...

  • mysql 表操作

    创建数据库: 新建表: 设置主键: 设置id为自增列: 表重命名: 列操作

网友评论

  • 脂砚主人:这篇对我实际业务太有用了,谢谢楼主!

本文标题:PowerQuery中为动态列重命名的方法

本文链接:https://www.haomeiwen.com/subject/navmxftx.html