数据分析-PowerBI数据处理
数据导入、数据清洗、数据抽取、数据合并、数据转换、数据计算
数据导入
导入文本
获取数据-导入文本/CSV-浏览选择对应的文件-转换数据-关闭并应用,可以在旁边的表格视图查看导入的数据

导入Excel
获取数据-导入Excel工作簿-浏览选择对应的文件-转换数据-关闭并应用
导入Mysql
获取数据-更多-Mysql数据库-连接-输入服务器和数据库名称-第一次连接可能还需要输入用户名和密码-连接成功选择数据-转换数据-关闭并应用
如果显示没有连接成功,点击了解详细信息,下载对应的插件。

如果下载了还是没有连接成果,可以选择获取数据-更多-其他-ODBC,下载ODBC插件,再连接Mysql。

数据清洗
数据排序
按照age字段升序、birthdate字段降序,对数据进行排序。

点击age旁边的按钮选择升序,birthdate选择降序。

重复数据处理
数据去重

方法一:主页-删除行-删除重复项
方法二:主页-分组依据-高级-添加所有字段-删除计数列

空格数据处理
去除name中的空格

转换-格式-修整,这样只能去除字符前后的空格,再选择替换值-替换值-要查找的值输入空格,替换为不输入。

缺失数据处理
知识点
缺失数据的概念
缺失数据,是指由于系统BUG或人为等原因,造成数据表中某些字段缺少的情况。
缺失数据常见的表现形式有NULL和空值两种。
PowerBI的PowerQuery中,空值显示为空,NULL显示为NULL,容易识别。

案例1
新增一列name_new,空值显示为"无名氏"

添加列-条件列,ELSE选择列

案例2

转换-任意列-填充-向下
数据抽取
字段拆分&分组字段拆分
按位置拆分
基于表user_1,从card_num中提取出生日期

添加列-提取-范围,powerbi索引从0开始。

按分隔符拆分
基于表list_4,提取name和age

选中name, 添加列-重复列,转换-文本列-拆分列-按分隔符

时间属性抽取
基于表user_1,提取year、month、day
选中reg_date,添加列-从日期和时间-日期-分别选择年、月、日
分组字段拆分
转换-文本列-拆分列-高级选项-行

记录抽取
抽取上线日期大于或等于2018年1月10日、小于或等于2018年1月25日,且出版社不包含“文艺”、价格大于100元的商品数据记录。

日期筛选器

文本筛选器

数字筛选器

数据合并
记录合并
工作簿多表同构合并

主页-新建源-Excel工作簿-选择对应的文件-勾选需要的表格-确定,如果是一个文件夹里的excel工作簿就选择导入文件夹。
主页-组合-追加查询-将查询添加为新查询
字段合并&分组字段合并
字段合并

添加列-从文本-提取-范围(6-4)添加年份列,添加列-从文本-提取-范围(10-2)添加月份列
再选中年份和月份两列,转换-文本列-合并列。

分组字段合并

主页-转换-分组依据

添加列-自定义列

这时生成类型为list的列,再点击小齿轮,用Text.Combine函数。

字段匹配
PowerQuery中的六种连接

主页-合并查询-将查询追加为新查询,在连接种类选择要连接的类型

点击table旁边的展开按钮,勾选Cost。

单条件匹配

主页-合并查询-将查询追加为新查询,选择左外部,展开之后选择reg_date
多条件匹配

主页-合并查询-将查询追加为新查询,选择左外部,多条件匹配需要选择多列(Ctrl)

数据转换
数据类型转换
数值转文本:直接点击字段旁边的按钮,选择文本
文本转数值:直接点击字段旁边的按钮,选择整数或小数
文本转日期:直接点击字段旁边的按钮,选择日期
知识点
日期转文本,就是将日期型数据转换为文本型数据。
PowerBI中的PowerQuery会用到M函数Date.ToText(),相应的公式如下:
year_month:Date.ToText([reg_date],"yyyy-MM")
yyyymmdd:Date.ToText([reg_date],"yyyyMMdd")
备注:MM为大写

添加列-自定义列


数据形式转换
一维表转二维表

选中年份,转换-任意列-透视列-值列选择GDP

二维表转一维表

选择地区,右键逆透视其他列
如何处理2X1层级结构表格(逆透视)

取消提升的标题-选中整个列表-转换-表格-转置-主页-转换-将第一行用作标题-转换-任意列-填充-向下,选中部门、职称两列,右键逆透视其他列。
数据计算
简单计算&日期计算&数据标准化
简单计算
添加列-自定义列-输入公式“=[price]*0.5”
日期计算
基于表user_1计算用户截止到“2023/12/31”时的年龄

添加列-自定义列-输入公式“2023/12/31”,列名为截止日期,再提取出出生日期,添加自定义列输入公式=([截止日期]-[出生日期])/365,将数据转换为小数,转换-编号列-舍入-向下舍入。
0-1标准化

点击成绩表,右键引用,在引用的表格上添加自定义列,输入公式“=源[成绩]”,“源”指的是原来的表格,就是成绩表,如果没有引用,直接在成绩表上面操作,源是整个文件夹内的所有表格,可以修改公式为“=源{[Item="成绩表",Kind="Table"]}[Data][成绩]”。

这样可以得到新的一列,类型为list,每一个单元格是成绩表的成绩列,再修改函数“=List.Min(源[成绩])”取出成绩的最小值,“=List.Max(源[成绩])”取出成绩的最大值。最后添加自定义列,输入公式“([成绩]-[min])/([max]-[min])”。

数据分组
基于表item,新增字段labels,对“price”字段进行以50元、100元为区间临界值的价格段分组操作。

添加条件列

为得分匹配等级

选择成绩表-添加自定义列-输入公式“=评分标准”-添加了新的列,类型是table,每一个分数对应一个评分标准表,点击展开按钮,选择阈值、等级、分数,再添加自定义列-输入公式“=得分>=阈值”,由于得分一定大于等于阈值的最大值,所以只有TRUE是满足条件的,筛选出是TRUE的数据。

再点击分组依据,根据得分分组,取阈值的最大值。

再点击合并查询-合并查询,选择评分标准表格匹配,展开选择等级,删除最大值列,完成。

更多推荐
所有评论(0)