Power Query 中常用的数据清洗、转换操作

news2024/11/18 23:50:48

(一)数据筛选、保留、删除、去重

1、数据筛选

操作步骤

选中列——点击列名右侧箭头——进行筛选

可选操作

  • 勾选
  • 文本筛选器:等于/不等于、开头是/开头不是、结尾是/结尾不是、包含/不包含
  • 数字筛选器:等于/不等于、大于/大于等于、小于/小于等于、介于
  • 日期筛选器:等于、早于、晚于、介于、接下来N个时间段/之前N个时间段、最早/最晚、非最早/非最晚、年/季/月/周/天/时/分/秒、自定义

图片示例

2、保留/删除列

操作步骤

选择列——勾选要保留的列:留下勾选的,删除未勾选的

选中一列或多列——删除列:删除选中的列

选中一列或多列——删除其他列:删除选中列之外的其他列

图片示例

3、保留/删除行

操作步骤

保留行

删除行

可选操作

  • 保留行:保留最前面几行/最后几行/一定范围内的行、保留重复项、保留错误行
  • 删除行:删除最前面几行/最后几行/一定范围内的行、删除重复项、删除空行、删除错误行

图片示例

(二)排序、移动列

1、排序

操作步骤

选中一列——主页——排序

可选操作

  • 升序 A to Z
  • 降序 Z to A

图片示例

2、移动列(列排序)

操作步骤

选中一列——右键——移动

可选操作

  • 向左移动/向右移动/移到开头/移到末尾

图片示例

(三)缺失/错误值处理:替换值、填充

1、替换值

操作步骤

选中一或多列——转换——任意列——替换值

可选操作

替换值:将 X 值替换为 Y 值

替换错误:将 错误 替换为 Y 值

图片示例

2、填充

操作步骤

选中一或多列——转换——任意列——填充

可选操作

向下:用最近的值向下填充空白单元格

向上:用最近的值向上填充空白单元格

图片示例

(四)文本处理:拆分列、合并列、字符串提取、格式修整

1、拆分列

操作步骤

  • 选中一列——转换列——文本列——拆分列

可选操作

  • 按分隔符:靠左/靠右拆分一次、每次出现分隔符拆分
  • 按字符数:靠左/靠右拆分一次、多次拆分
  • 按位置:按索引位置
  • 按大小写转换:小写到大写转换/大写到小写转换
  • 按数字非数字转换:数字到非数字转换/非数字到数字转换

图片示例

2、合并列

操作步骤

  • 选中要合并的多列——添加列——文本列——合并列

可选操作

  • 合并列——选择分隔符、合并后新列名

图片示例

3、文本提取

操作步骤

  • 选中一列——转换/添加列——文本列——提取

可选操作

  • 长度:获取文本长度
  • 按索引范围:首字符(从左开始N个字符)/结尾字符(从右开始N个字符)/范围(从X位置开始N个字符)
  • 按分隔符:分隔符之前/分隔符之后/分隔符之间

图片示例

4、文本格式修整

操作步骤

  • 选中一列——转换/添加列——文本列——格式

可选操作

  • 处理英文文本:小写(全部字母小写)/大写(全部字母大写)/每个单词首字母大写
  • 处理空格和非打印字符:修整(去除字符串首尾空格)/清除(去除所有非打印字符,如换行符等)
  • 添加前后缀:添加前缀/添加后缀

图片示例

(五)日期和时间处理

1、日期
  • Power Query 和 Power BI 中,对周的默认处理,均是以 星期日 作为一周的第1天,星期六 作为第7天,在计算“一周的第N天”,“一年中的第N周”,“一月中的第N周”时,均是如此。和中国的使用习惯不同。
  • 因此在遇到与周相关的数据处理时,要么使用自建的日期表,要么通过修改 M/DAX 函数的对应参数,将周的计算改成 星期一 是第1天,星期日 是第7天的逻辑。

操作步骤

转换/添加列——日期&时间——日期

可选操作

  • 年限:当前日期时间 - 该日期时间列 的差值
  • 仅日期:从日期时间列中提取日期
  • 分析:将不规范的日期格式转换为统一规范的格式
  • :年(从日期中提取出年)、年份开始值(提取出这一年的第一天)、年份结束值(提取出这一年的最后一天)
  • :月(从日期中提取出月)、月份开始值(提取出这一月的第一天)、月份结束值(提取出这一月的最后一天)、一个月的某些日(提取出这一月总共有多少天)、月份名称(月份对应的中文名)
  • :一年的某一季度(提取出日期是这一年的哪一季度)、季度开始值(提取出这一季度的第一天)、季度结束值(提取出这一季度的最后一天)
  • :一年的某一周(提取出日期是这一年的第几周)、一个月的某一周(提取出日期是这一月的第几周)、星期开始值(提取出这一周的第一天)、星期结束值(提取出这一周的最后一天)
  • :天(从日期中提取出天)、每周的某一日(提取出日期是这一周的第几天)、一年的某一日(提取出日期是这一年的第几天)、一天开始值(提取出这一天开始的日期时间)、一天结束值(提取出这一天结束的日期时间)、星期几(提取出这一天对应的星期的中文名)
  • 合并日期和时间:选中日期列和时间列,合并为日期时间
  • 最早:提取出日期列中最早的日期(只有一个值)
  • 最新(最晚):提取出日期列中最晚的日期(只有一个值)

图片示例

2、时间

操作步骤

转换/添加列——日期&时间——时间

可选操作

  • 仅时间:从日期时间列中提取时间
  • 本地时间
  • 分析:将不规范的时间格式转换为统一规范的格式
  • 小时:小时(从时间列中提取出小时)、小时开头(提取出这一小时开始的时间)、小时结尾(提取出这一小时结束的时间)
  • 分钟:从时间列中提取出分
  • :从时间列中提取出秒
  • 合并日期和时间:选中日期列和时间列,合并为日期时间
  • 最早:提取出时间列中最早的时间(只有一个值)
  • 最新(最晚):提取出时间列中最晚的时间(只有一个值)

图片示例

3、持续时间

操作步骤

转换/添加列——日期&时间——持续时间

可选操作

图片示例

(六)数据类型转换

操作步骤

  • 数据类型

可选操作

  • 数值:小数、定点小数、整数、百分比
  • 日期时间:日期/时间、日期、时间、日期/时间/时区、持续时间
  • 文本
  • 布尔值
  • 二进制

图片示例

(七)数据整合:合并查询、追加查询

1、合并查询(左右合并)

操作步骤

主页——组合——合并查询

可选操作

  • 合并查询:在当前选中查询上合并新查询
  • 将查询合并为新查询:新建一个查询,进行合并查询

图片示例

2、追加查询(上下合并)

操作步骤

主页——组合——追加查询

可选操作

  • 追加查询:在当前选中查询上追加新查询
  • 将查询追加为新查询:新建一个查询,进行追加查询

图片示例

(八)分组汇总

操作步骤

转换——表格——分组依据

图片示例

(1)选择用来分组的字段,如日期、产品

(2)选择用来汇总的数据字段、汇总方式,设置新列名

(3)获得汇总之后新的数据表

(九)透视列和逆透视列

1、透视列

将一维表转换为透视表(但不太好用,实际做数据透视,还是用分组比较多)

操作步骤

转换——任意列——透视列

可选操作

透视列:

图片示例

2、逆透视列

把多维表转换为一维表

操作步骤

转换——任意列——逆透视列

可选操作

  • 逆透视列:
  • 逆透视其他列:
  • 仅逆透视选定列:

图片示例

(十)添加列

1、复制列

操作步骤

选中列——添加列——常规——重复列

可选操作

将选中列复制一份

图片示例

2、添加条件列

操作步骤

添加列——常规——条件列

可选操作

IF ... THEN ... ELSE 

图片示例

3、添加索引列

操作步骤

添加列——常规——索引列

可选操作

  • 索引从0开始
  • 索引从1开始
  • 自定义:自定义起始索引和每一步的增量(需要将几份数据交叉合并的时候很有用)

图片示例

4、添加自定义列

操作步骤

添加列——常规——自定义列

可选操作

使用 M 函数和公式自定义列

图片示例

(十一)查看数据统计信息和数据异常

1、列分布

操作步骤

Power Query —— 视图 —— 数据预览 —— 列分发(列分布)

图片示例

说明

勾选后,在每一列上方显示此列数据的分布图,以及非重复值(Distinct   value,包含重复值和NULL)和唯一值(Unique value,不包含重复值和NULL,只出现一次的值)的数量

2、列质量

操作步骤

Power Query —— 视图 —— 数据预览 —— 列质量

图片示例

说明

勾选后,在每一列上方显示此列数据的质量数据:有效、错误和空数据的百分比

3、列属性

操作步骤

Power Query —— 视图 —— 数据预览 —— 列配置文件(列属性)

可选操作

图片示例

勾选后,选中某一列时,就在下方显示这一列的统计信息和取值分布。包括计数:计数、错误值计数、空值计数、非重复值计数、唯一值计数、NaN值计数、零值计数;统计信息:最大值、最小值、平均值、标准差

(十二)数学运算

操作步骤

转换/添加列——数字

可选操作

图片示例

(十三)数据转置、反转

操作步骤

转换——表格——转置

转换——表格——反转行

可选操作

  • 转置:行列转置
  • 反转行:所有行前后调换顺序

图片示例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1389920.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

harbor https

harbor https部署 准备docker-compose安装https 证书harbor安装访问harbor推镜像到harbor 准备 192.168.112.99,harbor,centos7 192.168.112.3,测试机,centos7 docker版本:docker-ce 20.10.16(部署参考&a…

主流浏览器设置代理IP之搜狗浏览器

给浏览器设置代理IP是目前代理IP的主流使用场景之一,接下来小编就手把手教你如何对搜狗浏览器进行代理IP设置 注:本次使用IP来源于携趣代理平台 搜狗浏览器内设置IP代理 1、首先需要进入浏览器【设置】 2.点击【代理设置】选择【代理服务器设置】然后进…

ITE IT6801FNBX HDMI接收器 芯片

一、物料概述 IT6801FN是一款单端口HDMI接收器,可在HDMI1.4和MHL2.1双模式下工作,完全兼容MHL2.1、HDMI 1.4a、HDMI 1.4a3D和HDCP1.4,还可向后兼容DVI 1.0规格。IT6801FN具有深彩色功能(高达36位),可确保接…

腾讯开源AI工具PhotoMaker,无需训练模型就能保持脸部一致随意换装。

腾讯开源AI工具PhotoMaker,无需训练模型就能保持脸部一致随意换装。 最近,AI文本到图像生成领域取得了显著进展,然而,现有的个性化生成方法已经无法同时满足用户的需求,这次腾讯发布了PhotoMaker框架,可以在…

IaC基础设施即代码:Terraform 通过后端使用 alicloud的OSS 实现资源管理

目录 一、实验 1.环境 2.Windows创建Terraform后端项目 3.Windows实例化Terraform后端项目 3.Windows给Terraform项目添加alicloud阿里云OSS (实现代码与资源分离) 4.Windows给Terraform项目添加封装的模块 5.Terraform通过后端使用 alicloud阿里…

价值7500的在线授权网站源码支持IP+域名+双向授权全开源

PHP授权验证更新系统完整版,一键更新系统,一键卡密生成自助授权功能,域名ip双重验证功能等等 修复盗版检测,确保实时查看盗版 修复在线加密系统,一键加密 授权系统几乎所有的程序都能整合使用,包括您的app和计算机程序…

el-table右固定最后一列显示不全或者是倒数第二列无边框线

问题图片: 解决方式1: >>>.el-table__row td:not(.is-hidden):last-child { border-left:1px solid #EBEEF5; } >>>.el-table__header th:not(.is-hidden):last-child{ border-left:1px solid #EBEEF5; } >>>.el-table__head…

文件压缩完还是过大怎么办?这些参数你设置了吗?

不同的压缩算法对不同类型的文件可能有不同的效果。尝试使用不同的压缩算法、压缩模式、调整压缩工具的参数或者设置输出的文件格式等方法解决问题。下面以嗨格式压缩大师作为操作示范。 方法一:对文件进行分类压缩 将文件按照视频、图片、pdf、word、PPT分类压缩…

uni-app的项目创建和环境搭建

uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。 第一步…

Linux内核架构和工作原理详解(二)

Linux内核体系结构简析简析 图1 Linux系统层次结构 最上面是用户(或应用程序)空间。这是用户应用程序执行的地方。用户空间之下是内核空间,Linux 内核正是位于这里。GNU C Library (glibc)也在这里。它提供了连接内核…

游戏素材永不缺,免费在线AI工具Scenario功能齐全,简单易用

Scenario是一个在线的AI驱动的工具,主要用于游戏艺术创作。它提供了一套全面的功能,旨在帮助游戏开发者创建与其独特风格和艺术方向相符的独特、高质量的游戏艺术。Scenario的突出特点之一是它的微调能力,允许用户根据独特的风格和艺术方向训…

Linux 内核被冬季风暴 “封印“

Linus Torvalds在内核邮件列表上宣布,由于他所在的美国俄勒冈州波特兰地区受到严重冬季风暴的影响,导致网络和电力中断。波特兰及其周边地区气温急降至零下 -10C,因此他不得不临时中断对Linux 6.8内核的合并窗口操作。 Linus于1月7日发布了Li…

最优订单执行算法相关论文介绍

数量技术宅团队在CSDN学院推出了量化投资系列课程 欢迎有兴趣系统学习量化投资的同学,点击下方链接报名: 量化投资速成营(入门课程) Python股票量化投资 Python期货量化投资 Python数字货币量化投资 C语言CTP期货交易系统开…

Resemble Enhance音频失真损坏修复AI工具:一个开源语音超分辨率AI模型

Resemble Enhance是一款强大的音频处理工具,可以将嘈杂的录音转化为清晰而有力的声音,为用户提供更优质的听觉体验。这个工具不仅可以有效去除录音中的各种噪声和杂音,还能够恢复音频失真并扩展音频带宽,使原本的声音听起来更加清…

迈向未来的求职征程:广州大学全职特聘讲师入职经历

迈向未来的求职征程:我的广州大学全职特聘讲师入职经历 2023博士毕业求职经验贴 在人生的职业旅程中,每一次求职都是一个新的冒险,而我最近的一次求职经历,是迈向教育领域的激动人心的一步。成为广州大学全职特聘讲师的入职之路…

QT 绘图与重绘事件

代码实现仪表盘 .cpp #include "widget.h" #include "ui_widget.h"#include <QPainter> #include <QPen> #include <QBrush>#include <QDebug> Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->…

[ PyQt入门教程 ] Qt Designer工具的使用

Qt Designer是PyQt程序UI界面的实现工具&#xff0c;使用Qt Designer可以拖拽、点击完成GUI界面设计&#xff0c;并且设计完成的.ui程序可以转换成.py文件供python程序调用。本文主要通过用户登录需求描述Qt Designer工具开发界面的使用方法。 主要内容 1、Qt Designer程序主界…

【C++】vector的使用及模拟实现

目录 一、vector的介绍及使用1.1 介绍vector1.2 vector的使用1.2.1 构造1.2.2 遍历访问1.2.3 容量空间1.2.4 增删查改 二、vector的模拟实现2.1 成员变量2.2 迭代器相关函数2.3 构造-析构-赋值重载2.3.1 无参构造2.3.2 有参构造12.3.3 有参构造22.3.4 拷贝构造2.3.5 赋值重载2.…

IIC学习之SHT30温湿度传感器(基于STM32)

简介 附上SHT30资料和逻辑分析仪源文件&#xff0c;点击下载 关于IIC的介绍网上已经非常详尽&#xff0c;这里只说重点&#xff1a; 双线&#xff08;SDA&#xff0c;SCL&#xff09;&#xff0c;半双工采用主从结构&#xff0c;支持一主多从&#xff0c;通过地址寻址&#…

最新的AIGC相关技术更新

1.腾讯发布PhotoMaker 《PhotoMaker: Customizing Realistic Human Photos via Stacked ID Embedding》 作者机构&#xff1a;南开大学&腾讯 PCG ARC 实验室&东京大学 相关链接 [Paper] [Code] [Demo] [Model Card] [BibTeX] 摘要 文本到图像生成的最新进展在根据给…