zoukankan      html  css  js  c++  java
  • 使用DAX将分隔行拆分为多行

    ​大家好,小悦这次给大家带来的案例是:我们如何使用DAX将单个分隔行拆分为多行数据?首先我们来看到我们的业务需求。

    业务需求

    假设有一个表有两列 -”学生”和”学科”,学科字段中的每个科目通过”,”号来分割,然而我们想要将我们的科目拆分为多行数据来分析。

    最终结果应该是:

    PART 01

    我们这里先用我们输入数据的方式创建一张原始表,当然你也可以通过其他的手段来得到这张表。

    PART 02

    创建完原始表之后。首先,第一步是获取每行”学科”字段的一个科目数。这里是通过分隔符的多少,来推断出科目数的多少。

    结果如下图:

    PART 

    03

    然后我们需要通过a表(2步骤得到的表)的最大科目数得到一份辅助表来帮助我计算下面的步骤,创建辅助表需要两个步骤:

    a.        获取最大科目数

    b.       创建辅助表

    结果如下图:

    PART

     04

    然后使用CrossJoin函数来得到B表(3步骤得到的表)和A表(2步骤得到的表)的叉积表C表:

    结果如下图:

    PART 

    05

    现在过滤C表(4步骤得到的表),拿【总科目数】和辅助表的【Value】来做对比,获得最终结果所需的确切行数。得到D表:

    结果如下图:

    PART 06

    剩下的就是将D表(5步骤得到的表)中的【学科】分成单个对应的科目。使用PATHITEM函数,通过【value】获取科目所处位置

    将结果如下图:

    PART 

    07

    最后需要做的就是选取需要的列。

    最终结果:

    然后这里再附上整体代码的截图:

    如果大家有其他的方法的话也可以在评论下方留言。

    技术交流

    1.Power BI免费下载:http://www.yeacer.com/

        Microsoft Power BI Desktop中文最新版:下载地址

    2.欢迎加入的Power BI技术群,目前正在学习阶段,有兴趣的朋友可以一起学习讨论。 

       Power Data技术交流群:702966126 (验证注明:博客园Power BI) 

       更多精彩内容请关注微信公众号:悦策PowerBI          


    如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,作者博客:https://www.cnblogs.com/yeacer/ 
    Fancy
  • 相关阅读:
    Myeclipse如何使用自带git工具向远程仓库提交代码
    myEclipse配置java版本(环境、项目、编译)
    新搭建项目时需要修改的内容
    干锅土豆
    SpringMVC MongoDB之“基本文档查询(Query、BasicQuery)”
    史上最全web.xml配置文件元素详解
    Web.xml配置详解之context-param
    史上最全的maven的pom.xml文件详解
    MongoDB 进阶模式设计
    备忘整理
  • 原文地址:https://www.cnblogs.com/yeacer/p/11264048.html
Copyright © 2011-2022 走看看