【Power Query】【M语言】【Excel】【Power BI】在展开包含Table表格的列前,对每个Table表格进行逆透视:

Power BI中的透视列和逆透视 Power BI中的透视和逆透视操作 阅读详情

用于在Power BI或Excel中处理数据。它的作用是在Power Query展开Content列前,对数据进行逆透视操作。

假设[Data]列中有以下数据,他们都是最常见的二维表:

单位部门2023-012023-022023-03
Aaa100200300
Bbb150250350
单位部门2024-012024-022024-03
Aaa100200300
Bbb150250350

适用场景:

假如后面又有25年26年的数据,那你展开之后有多少列了,如果你每列都需要(意思是你展开所有列,没做筛选),那还好说,数据完整。如果你已经这次展开已经做了列筛选(比如你筛选了“部门”、“2023-01”、“2023-02”、“2023-03”、“2024-01”、“2024-02”、“2024-03”)下次你增加了25年数据,你刷新就刷不出来25年数据,数据不完整,你还得改M语言代码。

所以你就需要在展开列前,对表格进行逆透视。下面是代码:

代码结构:

已添加自定义 = Table.AddColumn(筛选的行, "自定义", each Table.UnpivotOtherColumns(
        [Data],
        {"单位", "部门"},
        "报表周期","值"
    )),

介绍一下里面的几个函数:

1. Table.AddColumn

  • 作用: 在现有的表中添加一个新列。

  • 参数:

    • 筛选的行: 这是当前的表或查询结果,表示已经筛选过的数据。(上一个步骤的结果)

    • "自定义": 这是新列的名称。

    • each ...: 这是一个匿名函数,用于定义新列的值。

2. Table.UnpivotOtherColumns

  • 作用: 对表中的列进行逆透视操作,将多列转换为键值对的形式。

  • 参数:

    • [Data]: 这是当前行中的某个列(通常是一个嵌套的表),需要进行逆透视操作。

    • {"单位", "部门"}: 这是不需要逆透视的列名列表。这些列将保持不变。

    • "报表周期": 这是新生成的列名,用于存储原始列名(即被逆透视的列名,比如“2023-01”、“2023-02”、“2023-03”、“2024-01”、“2024-02”、“2024-03”)。

    • "值": 这是新生成的列名,用于存储原始列中的值(就是上表中的100/150/200等等)。

3. each

  • 作用: 这是一个匿名函数,用于对每一行进行操作。在这里,它表示对每一行中的[Data]列进行逆透视操作。

代码的整体作用

  1. 添加新列: 在筛选的行表中添加一个名为"自定义"的新列。

  2. 逆透视操作: 对每一行中的[Data]列进行逆透视操作,保留"单位",和"部门"列,将其他列转换为键值对的形式,并存储在"报表周期"和"值"列中。

代码的结果

逆透视后,表格是这样的。

单位部门报表周期值
Aaa2023-01100
A

aa

2023-02

200

Aaa2023-03300
Bbb2023-01150
Bbb2023-02

250

Bbb2023-03350
单位部门报表周期值
Aaa2024-01100
A

aa

2024-02

200

Aaa2024-03300
Bbb2024-01150
Bbb2024-02

250

Bbb2024-03350

然后你再把这个“自定义”列展开,就只有“单位”、“部门”、“报表周期”、“值”四列啦。

下面是实操:

1、同时复习知识点,使用 Excel.CurrentWorkbook() 函数来引用当前正在使用的 Excel 文件。

2、如果在展开前不做逆透视:很多列

3、插入逆透视的代码:增加一个自定义列(有一些变量根据你的情况做改变)

4、最后展开自定义列,我们看到要展开的列就没那么多了,就得到结果啦。

8.5 PowerBI系列之DAX函数专题-dax列转行vs矩阵列转行和逆透视 1.用power query实现:在power query-转换-逆透视列中将原始数据进行列销售数量,列销售金额进行逆透视。然后在报表页面将逆透视的列放到行上。1)创建一个辅助表,单一列,包含销售数量,销售金额两个值;3)拓展:矩阵中使列在行上显示。使度量值在行上呈现,如下图。 阅读详情

相关推荐

Power BI--数据清洗(清洁)

目录 Power BI--数据清洗(清洁) Step1:排序 Step2: 逆透视 Step3: 条件列 Step4: 索引列 Step5: 重复列 Step6: 数字计算 Step7: 日期 Step8: 示例中的列 Step9: 自定义列 Step10: 转置 Step11: 反转行 Step12: 对行进行计数 Step13: 分组依据 Step14: 复制 Power BI--数据清洗(清洁) Step1:排序 Step2: 逆透视...

Ethan's Blog 6023

Power BI - 5分钟学习Power BI逆透视

逆透视就是把很多列数据逆变转换行数据

PowerBI工坊 1254

数据分析从入门到精通:Excel、SQL、Python、Power BI完整学习路径与实践指南

在业务迭代或日常工作中,你是否经常面对一堆杂乱的数据无从下手?无论是销售报表、用户行为日志,还是运营活动反馈,数据就在那里,但如何从中提炼出有价值的洞见,驱动决策,却让很多人感到头疼。网上资料虽多,但往往零散不成体系,Excel、Python、SQL、BI工具各自为战,初学者容易陷入“学了一堆,还是不会用”的困境。 本文旨在为你提供一套从入门到精通的 数据分析完整学习路径与实践指南 。我们不空谈理论,而是围绕数据分析的核心流程—— 数据获取、清洗、分析、可视化与报告 ,串联起Excel、Python、SQL

weixin_34121304的博客 462

[Power Query] 数据的透视与逆透视

本文主要讲解利用Power Query进行数据的透视与逆透视

Hudas的博客 7358

1.9 PowerBI数据准备-逆透视,将二维表或多维表转换为一维表

一维表的每个字段都是事物的属性,而不是属性的值,多个字段不能合并为一个字段,比如年月、客户;二维表的字段包含了展开的属性的值,至少有部分字段可以合并为一个字段,比如2024年1月、2024年2月这样的字段是年月属性的值,可以合并为一个字段年月。STEP 1 PowerQuery获取数据后,点击菜单栏添加列下的自定义列,把值以外的所有维度列合并成一列,列和列之间放上与内容不会产生重复的分隔符,比如“**”。STEP 2 保留合并的这一列,删除合并前的所有维度列,然后把合并的这一列拖动到第一列。

PowerBI自己学 2593

【PowerQuery专栏】Table.ExpandListColumn 函数展开内容

Table.ExpandListColumn函数用于展开表格中的列表数据。该函数接受两个参数:表数据(table类型)和要扩展的列名(text类型)。示例中,表1包含学生信息,其中"学习情况"列为多值列表。调用该函数后,会将列表数据展开为多行,每个成绩值单独成行,其他字段值保持不变。函数输出为展开后的新表,便于后续数据分析处理。

技术与管理的平衡木- 335

【Power Query】【M语言】【Excel】【Power BI】在展开[Data]列前,对 [Data] 列中的每个表格进行处理:在每个表格的列名前面加上序号。

Powerquery在展开[Data]列前,对 [Data] 列中的每个表格进行处理:在每个表格的列名前面加上序号。

Good_Hope的博客 1160

Power Query数据清洗实战:从M语言基础到多文件合并

在数据分析与报表开发中,数据清洗往往占据大量时间,而传统的手工处理方式难以应对重复、复杂且频繁变动的数据源。ETL(提取、转换、加载)作为数据管道的关键环节,直接影响后续建模与分析质量。Power Query作为内置于Excel与Power BI的数据获取与转换工具,通过记录操作步骤并在底层生成M语言脚本,让数据清洗流程可复用、可刷新、可追溯。它以图形化界面降低了入门门槛,同时通过M语言提供灵活的函数式编程能力,覆盖类型转换、行列过滤、拆分合并、逆透视、多文件合并与表关联等高频场景。无论是个人的月度报表整理

weixin_29271263的博客 74

2.2.1工具篇-Power Query——Power Query从入门到精通

Power Query彻底改变了数据分析师80%时间清洗数据、20%时间分析的困境。作为微软推出的数据准备工具,它通过可视化界面解决多源数据整合、脏数据处理和重复工作等痛点,极大提升效率。本文详细解析了Power Query的编辑环境,并通过零售销售数据案例,演示了数据清洗、格式转换、条件列添加等核心功能。特别介绍了处理多文件场景的高级技巧,包括合并Excel和CSV文件夹数据的完整M代码实现。掌握Power Query能帮助分析师将更多精力投入价值分析而非数据准备,实现真正的效率革命。(150字)

Sidney_chm的博客 3491

超详细!新手必看STM32-DMA配置与实验(串口使用DMA发送数据)

DMA就是:直接存储器访问。DMA传输数据从一个地址空间复制到另一个地址空间,提供在外设和存储器或者存储器和存储器之间的高速数据传输。

qq_1033275663的博客 2万+

从永恒之蓝看内网安全:企业如何用Nmap+MSF快速检测445端口风险

本文探讨了企业如何利用Nmap和Metasploit快速检测445端口风险,防范永恒之蓝(MS17-010)漏洞攻击。通过分阶段检测流程和自动化工具组合,企业可高效识别内网风险主机,并实施紧急隔离与长效防护策略,提升整体网络安全防护能力。

weixin_30772105的博客 599

PowerQuery学习总结

Power Query 是微软开发的‌数据提取、转换与加载(ETL)引擎‌,内置于 Excel、Power BI、Azure Data Factory 等产品中。它提供图形化界面(Power Query 编辑器)与声明式编程语言 ‌M‌,允许用户无需编写代码即可连接、清洗、整合来自多种数据源的数据,最终加载至分析模型或工作表中。核心定位:Power Query 是‌面向业务分析师与数据初学者的轻量级 ETL 工具‌,其价值在于‌将繁琐、重复、易错的数据准备过程,转化为可视化、自动化、可复用的流程‌。它不是替

2402_84052010的博客 861

【Seurat绘图进阶】从参数调优到美学定制:解锁DimPlot与FeaturePlot的隐藏技巧

本文深入探讨了Seurat包中DimPlot与FeaturePlot的进阶使用技巧,旨在解决单细胞数据可视化中的常见痛点。通过参数调优(如order、shuffle、raster)、颜色美学定制(使用RColorBrewer、viridis配色)以及性能优化(栅格化处理),并结合scCustomize包与patchwork排版,帮助用户将基础图表提升为信息清晰、可直接用于论文发表的出版级可视化结果。

lake5的博客 629

Excel数据筛选进阶:从基础操作到动态查询与自动化流程

数据筛选是数据处理中的基础操作,其核心原理是根据指定条件从数据集中提取目标记录。在Excel中,这一过程从简单的视图级筛选,发展到函数驱动的动态查询,再到基于数据模型的自动化流程,技术价值在于将重复性手工操作转化为可复用、可验证的数据处理规则。通过FILTER函数、Power Query等工具,用户能够构建响应业务变化的动态报表,实现数据处理的流程化与自动化。本文结合Excel函数与Power Query应用,深入解析多条件筛选、模糊匹配及动态条件构建等进阶技巧,帮助读者掌握从临时筛选到可持续数据响应系统的

weixin_34185512的博客 391

从URDF到Gazebo:一个完整的ROS2机械臂仿真与运动控制实战指南

本文提供了一个完整的ROS2机械臂仿真与运动控制实战指南。详细讲解了从URDF建模、ROS2 Control配置到Gazebo物理仿真的全流程,重点介绍了如何利用MoveIt2快速搭建高级运动规划系统,并解决实际部署中的常见问题,帮助开发者高效、安全地进行机器人算法验证与开发。

red88的博客 574

BQ27220燃料计量芯片与Arduino库kode_bq27220实战指南

燃料计量(Fuel Gauge)是嵌入式电池管理系统的核心技术,通过电压、电流、温度多维建模实现荷电状态(SOC)与健康状态(SOH)的动态估算。其原理基于电化学阻抗补偿算法(如CEDV),区别于简单电压查表法,具备自学习与老化适应能力。该技术显著提升便携设备续航预测精度与低功耗可靠性,广泛应用于TWS耳机、可穿戴设备及医疗电子等场景。本文围绕TI BQ27220高精度燃料计量IC及其配套Arduino库kode_bq27220展开,覆盖硬件连接规范、I²C初始化要点、SOC/SOH实时读取、EDV阈值配置

weixin_35671843的博客 331

Excel从入门到精通:核心函数、数据透视表与高效数据处理实战指南

数据处理与分析是现代职场与数据分析领域的基础能力,其核心在于将原始数据转化为有价值的信息。从原理上讲,这涉及数据采集、清洗、转换、建模与可视化等一系列技术流程。掌握高效的数据处理工具能极大提升个人与组织的决策效率与准确性,具有显著的实践价值。在众多工具中,微软Excel因其普及性和强大的内置功能,成为最广泛应用的入门与进阶平台。其核心模块,如函数公式、数据透视表以及Power Query等数据处理组件,覆盖了从基础计算到复杂业务分析的主要应用场景。本文聚焦于Excel的核心功能,系统讲解如何利用函数(如VL

weixin_30386713的博客 310

ShardingSphere分库分表教程,java后端开发面试题

???? 简介:Java领域优质创作者????、优快云哪吒公众号作者✌ 、Java架构师奋斗者???? ???? 扫描主页左侧二维码,加入群聊,一起学习、一起进步 ???? 欢迎点赞 ???? 收藏 ⭐留言 ???? 目录 一、分库分表 二、分库分表的方式 1、垂直分表 2、垂直分库 3、水平分表 4、水平分库 三、分库分表带来的问题 1、学习成本问题 2、事务问题 3、跨节点join问题 4、跨节点的count、order by、group by以及聚合函数问题 5、数据迁移、容量规划、扩

m0_64205716的博客 3016

数据库查询(Query)核心原理、优化实战与性能调优指南

在数据驱动的时代,查询(Query)是连接用户需求与数据价值的核心桥梁。其本质是向数据系统提出明确请求,以从海量信息中高效提取、计算并返回结果。从原理层面看,查询处理主要遵循火山模型和向量化模型两种范式:火山模型通过运算符树逐条处理数据,实现简单且内存可控;而向量化模型则批量处理数据列,充分利用现代CPU的SIMD指令集,在分析型场景中性能卓越。理解这些原理有助于选择合适的数据处理技术。在工程实践中,编写高效查询的关键在于明确意图并减少系统工作量,例如通过只选取必要字段、合理利用索引(尤其是覆盖索引)以及优

weixin_33875839的博客 472

cursor AI代码编辑器IDE对接deepseek模型api;字节ai编辑器trae

参考: https://www.cursor.com/ https://platform.deepseek.com/https://www.cursor.com/下载安装后,注册账号登录即可 再高级里选择设置 再模型这注册模型: 模型名称一定要填正确,url地址填好,最后填上秘钥验证

weixin_42357472的博客 1万+

AI驱动芯片设计的端到端验证:AI应用架构师的全流程指南

想象你要建造一座1000层的超级摩天大楼,每个房间都有独特的功能,管道、电路、电梯系统交织如迷宫。传统的检查方式是派1000个工程师逐层逐房手动检查,耗时十年且仍可能遗漏火灾隐患。这就是今天芯片设计面临的困境:7nm芯片含百亿晶体管,相当于百亿个"房间",传统验证方法(人工编写测试用例、随机仿真)已难以应对。本文的目的,是为AI应用架构师提供一份"AI驱动芯片验证导航图",范围涵盖从验证需求分析到芯片签核的全流程,包括AI模型如何融入传统验证工具链、数据如何驱动验证效率提升、以及端到端闭环系统的构建方法。

2501_92132293的博客 1241

Power Query M语言表函数Table分类汇总,快速掌握

一、通过帮助找出所有的Table函数 通过在查询编辑输入”=#shared”调出帮助,然后提取列,筛选出所有的Table函数 二、Table函数分类 Table类函数:总共102个,可查基本信息查看、表操作、列操作、行操作、排序、表构建、表转换、包含关系、其他几类。 基本信息查看: 类型 函数名 分类 说明...

灰哥数据智能的专栏 1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

PowerQuery逆透视将二维表转换为一维表

因此在做数据可视化时,经常要将二维表转换为一维表。通过上面的步骤就实现了将二维表转为一维表。

BI瓶子的博客 834

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Power BI - 5分钟学习透视列

透视列就是把行数据转换成列数据,也就是大家在工作中常说的'行转列'

PowerBI工坊 2186

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

PowerQuery应用: 动态分列

今天在Power BI Community收到一个问题,其需求是根据产品列不同的的值来自动分列(下文提供图解),我很快想到只需定义个PowerQuery函数就可以解决,并且在此将这个小技巧分享给大家。 需求 如下图所示,根据ID列(产品号)对NUMBER列进行划分,由图可知,这并非透视,而且要求每当ID列增加新的产品号时,可以自动追加新的列,以此类推。 数据 打开PowerQuery编辑器,模拟一份示例数据: let DATA = Table.FromRecords( {

DAVIS的博客 2055
上一篇: 【Python】知识点:列表推导(List Comprehension)
下一篇: 【Excel】【Power Query】Powerquery实现自动更新的动态路径。(Powerquery查询文件或文件夹只支持绝对路径,不支持相对路径,当文件夹的位置改变后该怎么办?)
Good_Hope
博客等级 码龄4年 26粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值