PowerQuery操作分类

本文详细介绍了如何从各种源导入数据,包括txt、csv、Access和Excel,并探讨了字符集设置。核心内容涵盖了数据转换技巧,如使用Query编辑器、调整分隔符,以及行和列操作,如删除、重复项处理和列选择。此外,还涉及数据整理、提取与转换,如修剪、拆分和合并列,以及删除重复项和排序。

数据菜单下——获取和转换

导入数据

从txt
从csv
从Access
从excel
	字符集
从网站
转换数据
	进入query编辑器
加载/加载到
	excel
分隔符,字符集

行操作

删除行
删除间隔航
删除重复
删除错误
删除空白行
保留行
	保留重复

列操作

选择列
	删除
转到列
	选中
删除列
	删除其他列
	删除列

提取和转换

整理数据
修剪
清除
拆分列
合并列
添加后缀
提取
	按字取
	按分隔符取

删除重复项

和排序一起使用有奇效
保留第一条
先排序后删除,保留想要的东西
注意排序后要检测

删除错误

可以制造错误
文本格式里面只能是文本
子主题 3

转置

行列互换
行标题会消失

反转行

上下颠倒

转置和反正行配合使用有奇效

PowerBI系列之Power Query专题1.  获取数据 数据源种类介绍和获取Excel数据源输入数据和拷贝数据:创建辅助解析Json/XML数据格式获取Web网页数据和URL添加动态参数连接数据的四种模式:Import、DirectQuery、Live Connection、Dual双 属于混合模式连接数据库:Sql server、 Mysql(直连但是必须先安装一个mysql插件)DirectQuery直连查询:Sql serverODBC方式获取数据关联或多个Sql或调用存储过程获取数据SQL中动态传参和自定义函数: sql中使用参数或数据库名称使用参数连接Sharepoint和OneDrive数据源连接Dataset和Dataflow 替换本地数据源为Sharepoint数据源并保留数据处理操作 终止当前数据刷新Loading:Cancel Query数据源设置-重置数据连接凭证PBIDS连接数据源创建和使用报模块(输入或值列)利用报模板和参数控制线下报数据权限DirectQuery启用自动页面刷新和更改检测管理聚合提高DirectQuery查询性能动态M查询参数提高DirectQuery查询性能添加数据刷新时间 DateTime.LocalNow()和Getdate()2.  数据清洗和M语言M语言和官方文档介绍PowerQuery中查阅M函数:=#shared, Ctrl+Space提示数据清洗之常用技能:提升标题、更改数据类型、保留删除错误或空删除重复项、选择列和删除列、填充单元格、合并列、拆分、提取、替换、条件替换、添加自定义列,添加条件列、添加索引列、分组、添加年月日列、追加和合并查询透视和逆透视以及转置合并单元格的Excel文件处理导入文件夹中多Excel文件并合并解决多文件合并中列顺序一致使用参数和函数批量导入文件 文本中提取中文、英文、数字等处理双引号转义 列拆分详解解决列名改变错误解决列丢失错误动态显示、排序和重命名列为所有列名添加前缀列名字母大写和分隔符调整Trim标题列中的多余空格如何处理load数据错误为什么load的Excel数据有null空为什么load的Excel数据标题在第二灵活添加占位符规范同类相似数据数据按多列排序为分组添加Index序号分组内值合并诊断工具分析数据处理过程PowerQuery小技巧分享 新冠病例活动轨迹地图标识 
Power Query 中编写条件判断达式,主要使用 `if...then...else` 逻辑结构。这种结构允许根据特定条件返回同的结果,适用于处理各种数据转换任务。以下是一些常见用法和示例: ### 基础语法 Power Query 的 M 语言支持标准的 `if...then...else` 达式,其基本格式如下: ```powerquery if 条件 then 结果1 else 结果2 ``` 例如,在查询中新增一列用于标记数值是否大于 10: ```powerquery if [数值] > 10 then "大于10" else "小于等于10" ``` 此达式会检查当前中的 `[数值]` 是否大于 10,并根据结果返回相应的字符串[^1]。 ### 多重判断 若需要进多重判断,可以在 `else if` 后续接更多条件分支。例如,对成绩进分类: ```powerquery if [分数] >= 90 then "优秀" else if [分数] >= 80 then "良好" else if [分数] >= 60 then "及格" else "及格" ``` 该达式依次判断 `[分数]` 所属的等级范围,并返回对应的评级。 ### 判断逻辑结合函数 可以将条件判断嵌套到函数中,实现更复杂的操作。例如,结合 `Table.AddColumn` 创建新列并应用条件逻辑: ```powerquery Table.AddColumn(源, "评价", each if [销售额] > 1000 then "高" else "低") ``` 此代码为 `源` 添加一个名为 `"评价"` 的列,根据 `[销售额]` 是否大于 1000 返回 `"高"` 或 `"低"`[^2]。 ### 正则达式与条件提取 对于文本处理,可以通过正则达式提取符合条件的部分内容。例如,从混合数据中提取 11 位手机号码: ```powerquery Text.Select([字段], {"0".."9"}) ``` 这段代码首先提取 `[字段]` 中的所有数字字符,然后结合其他步骤筛选出符合手机号规则的数据。如果需要精确匹配 11 位数字,则可使用 `\d{11}` 作为模式进一步筛选[^4]。 ### 示例:综合判断逻辑 假设需要对商品库存状态进标记,当库存数量大于 50 时显示“充足”,介于 10 和 50 之间时显示“正常”,小于 10 时显示“足”: ```powerquery if [库存] > 50 then "充足" else if [库存] > 10 then "正常" else "足" ``` 通过上述条件判断,可以动态生成库存状态信息,便于后续分析或可视化呈现。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值