前几日群里E友们出的题,我们就直接借用一下案例(偷懒),核心还是来熟悉一下PQ的分组及一些常用的函数
感受一下,PQ在数据处理方面的强大!讲解方式:动画演示,主要分解思路,适当函数讲解!演示版本:365,其他版本应该没有函数自动提示
不爱看分布讲解的直接拉到地步查看M函数代码!问题说明:按照列1,对于列2中连续的数值压缩

我们逐步分解思路:

1、按照第一列先分组,完成A和B各一大组

先完成最外层的处理,也就是按照列1分组,本案例中可以简化Table.Group(表,分组依据,{"新列名",分组处理}),实际有5个参数,目前只使用前3个。它的功能和SQL中GroupBy 或者Excel中的分组很类似!

2、对分组后的表添加索引

添加索引的后,我们主要使用列2-索引,如果是连续内容,那么他们的差异一定是相同的。

3、列2减去索引列算出差额

我们在上一步分组添加索引后的内容,进一步相减出差额,我们可以看到如果内容连续,那么和索引差额后肯定相等,因为连续的内容上下差1,索引也是如此,当然也可以是等差!

4、对索引差额后的s进一步分组

s列的相同数值就是连续的内容,也就是需要压缩的,我们先分好组,下一步来压缩

5、压缩分组内容

这里我们使用到一个技巧,就是我们书写M的过程中可以通过深化,观察一下多层包裹的内容,便于进步分析,这里主要使用List.Transform遍历
这个之前有讲过:

扩展学习:Transform函数

Text.Format和我们的工作表函数Text格式化函数有点类似!

6、最后合并压缩好的内容

使用Text.Combine可以合并把List中的文本按照固定分隔符合并起来!
有点瑕疵的就是一个内容也是使用了短线分割,可以优化一下

7、优化单值显示

使用List.Count判断一下列表中的元素个数,如果是1个就不压缩,不压缩我们也可以使用Text.From来代替上面的Text.Format,这里的if和一般的编程语言很像,但是不同于工作表函数if
以上就是我们这个数字压缩练习的全部内容,虽然看上去内容很多,但是只要你思路清晰,还是很简单的!
格式化后全部代码:

关于实际应用,比如连续打卡分组,这里的连续更好的表示是特定规律,比如我们都是要求间隔一天送货,那么我们1、3、5 我们也可以判断为连续!
这些道理都是一致的,快去动手试试吧!

powerquery分组_Power Query实现数据分组压缩的思路分享相关推荐

  1. powerquery分组_Power Query 神奇的分组统计1

    正文: 今天给大家分享一下,在PQ时分组的一些玩法. 案例一: 关于分组的玩法我收集了几个案例,往后会一个个写出来,今天会先来点简单的. 要求: 左表的数据转换成右表的结构. 这个问题如果写VBA来处 ...

  2. 33【数据的合并和分组聚合】03数据分组聚合

    例题 现在我们有一组关于全球星巴克店铺的统计数据,如果我想知道美国的星巴克数量和中国的哪个多,或者我想知道中国每个省份星巴克的数量的情况,那么应该怎么办? 数据来源: https://www.kagg ...

  3. list 分组_Power query 灵活处理员工特殊出勤问题(3)-TableGroup分组 amp; 合并查询

    断更了几天, 忙着别的事情去.....今天终于好好坐下, 继续写分享. 这一期主要内容是, 利用TableGroup分组 & 最终合并查询; 一. 数据反馈 前几天, 妹纸发来消息说数据不对, ...

  4. powerquery分组_Power Query系列 - 排序Ranking

    Power Query系列 - 排序Ranking 难度: ★★☆☆☆(1星) 适用范围: ★★★☆☆(3星) 概况: 在数据分析中,我们常常需要对数据进行排序,同时我们想知道某个项目或者产品的排名, ...

  5. powerquery分组_power query 分组合并展示

    一.需求:根据部门汇总业绩,并展示员工业绩明细(效果图如下) 二.实现步骤: 1.将原始数据加载至power query中处理 2.对数据进行基本处理,这里因一个员工有多条数据,事先进行员工业绩汇总 ...

  6. powerquery分组_power query 如何累计求和?如何分组分条件?

    Excel分组求和方法更新 =SUMIFS(D$2:D2,C$2:C2,C2) sumifs是条件求和(分组求和) sum(D$2:D2)下拉是累计求和 结合两个公式就可以做分组累计求和 ------ ...

  7. powerquery分组_Power Query中的Table.Group函数详细分析

    在我们操作过程中,使用分组依据进行汇总计算的操作应该是非常的多的,我们对于这个函数还是非常有必要深入了解下. Table.Group 按为每行指定的列 key 中的值对 table 的行进行分组. 对 ...

  8. 2021微信大数据挑战赛-初赛-NN思路分享

    总结 模型 该方案是基于Deepfm的baseline模型,线上加权在0.661左右.未进行调参,未进行多折,若后续想提分,可以从模型方面进行着手调试. 特征工程 主要是通过基础id做的embeddi ...

  9. 结构方程模型(SEM)高阶应用暨嵌套分层数据及数据分组分析

    说明:变量间非直线关系.变量间交互作用.数据或变量非正态及分类变量分析 结构方程模型(Structural Equation Modeling)是分析多变量间因果关系的利器,在众多学科领域具有巨大应用 ...

最新文章

  1. OpenCV中对图像数据进行64F和8U转换的方法
  2. 关于Advertising Campaign
  3. android app两种调试方法
  4. Codeforces Round #636 (Div. 3) F. Restore the Permutation by Sorted Segments 思维 + 暴力
  5. mysql5.7.12安装问题
  6. PRML-系列一之1.1
  7. Android 刘海屏来袭,全网最全适配技巧
  8. cus系统前台改版 beta1.1发布
  9. C++ 临时变量的常量性
  10. FreeSwitch视频会议,4路以上CPU占用暴增的原因
  11. 复旦大学:专硕没住宿?我们帮你建!还给补助!
  12. 十分钟看懂AlphaGo的核心算法
  13. 如何画出频谱图 matlab
  14. 计算机无steam服务,有了这个,或许以后都不用登录电脑的Steam了
  15. VMware虚拟机安装ubuntu后无法复制文件的解决办法
  16. 已知分布函数求概率密度例题_助力高考:吃透数学17个必考题型,必定可以考130!(内附解题技巧+例题解析)...
  17. 华为 任正非 2021年1月22日 最新内部电邮全文
  18. Python基础--步长
  19. 第16期高级转录组分析和R数据可视化培训(2022年1月)
  20. YOLO9000, Better, Faster, Stronger论文翻译——中英文对照

热门文章

  1. php框架里有模版引擎吗,Yii框架用模版引擎了吗?_PHP开发框架教程
  2. Rust 语言风靡学术界
  3. 生物信息学 Python 入门之源码安装
  4. BLAST引物或靶点特异性
  5. 调控微生物改善土壤,生物制剂能否开启农业新篇章?
  6. 不想被英文文献烧脑的时候, 如何轻松掌握行业最新进展?
  7. R语言一键批量完成差异统计和可视化
  8. Error: Aesthetics must be either length 1 or the same as the data (5): fill
  9. R语言使用ggplot2包使用geom_density()函数绘制分组密度图(分组拆分画板基于facet)实战(density plot)
  10. 机器学习数据预处理之缺失值:样本删除