zoukankan      html  css  js  c++  java
  • 数据可视化之DAX篇(七) Power BI中用DAX生成的表如何添加索引列?

    https://zhuanlan.zhihu.com/p/74732578

    来源于知识星球中一个星友的问题,使用DAX在PowerBI中新建了一个表,如何为这个表添加索引列呢?

    假如数据模型中只有一张订单表,需要从订单表中提取客户表,可以直接使用VALUES函数提取一个不重复客户表,

     

    如何为这个表添加索引列?

    因为DAX生成的表无法在PowerQuery中编辑,也就无法使用PQ的添加索引列的功能了,这里提供两个变通解决的方法。

    方法一:使用ADDCOLUMNS在原DAX的基础上增加排名列

    因为DAX中并没有索引函数,这里使用排名函数RANKX来代替,比如按客户姓名排序,使用排名作为索引列,

     

     

    使用RANKX计算排名时,排名依据的选取尽量不要有并列的情况,如果并列,RANKX排名相同,就不符合索引规则了,上面的姓名去重后,很可能不存在重复的情况。

    但如果按客户下单日期来排序,就很容易出现并列的情况,

     

     

    同一天购买的客户,排名相同

     

    方法二:复制表,在Powerquery中添加索引

    这种方法也很方便,不用写任何函数,点几下鼠标就添加好了,

     

    ↑ 右键>复制表

     

    ↑ 输入数据>粘贴>编辑

     

    ↑ 在Powerquery中添加索引列并上载

     

    总结

    • 使用ADDCOLUMNS直接生成,可动态刷新,但RANKX有可能有重复排名;
    • 在Powerquery中添加的是真正的索引列,但经过复制后,失去了动态性。

    大家如果有更好的方法,欢迎留言分享哦。

  • 相关阅读:
    C++之容器
    C++之复制控制
    TCP的3次握手/4次握手
    linux编程之多线程编程
    linux编程之信号
    linux编程之共享内存
    MySQL数据库优化
    MySQL存储引擎InnoDB与Myisam
    Redis--持久化
    Redis 请求应答模式和往返延时 Pipelining
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/12807796.html
Copyright © 2011-2022 走看看