2024年4月7日发(作者:)
powerquery if公式
PowerQuery是微软公司针对Excel推出的一款强大的
数据处理工具,可快速提取、转换、整理和清洗数据,提
高工作效率和准确性。在数据清洗操作中,if公式被广泛
应用,本文将对PowerQuery中的if公式进行详细介绍。
if公式的基础语法是:=if(条件,结果1,结果2)。如
果条件成立,则返回结果1,否则返回结果2。在
PowerQuery中,if公式的使用方法与Excel中的if公式
基本相同。PowerQuery中if公式的主要应用场景分为以下
两类。
一、条件筛选
在数据清洗过程中,经常需要根据条件筛选出符合特
定要求的数据行或列。例如,从一个包含所有学生的成绩
单中,筛选出数学成绩大于90的学生信息。此时,可以使
用if公式的条件判断功能,将符合条件的数据保留,不符
合条件的数据删除。
示例代码如下:
let Source =
tWorkbook(){[Name="Table1"]}[Content],
#"Filtered Rows" = Rows(Source, each
([MathGrade] > 90)) in #"Filtered Rows"
上述代码首先指定数据源对象为Excel中名为Table1
的数据表,然后使用Rows方法对数据进行筛
选操作。该方法接受一个函数作为参数,该函数中使用if
公式判断MathGrade列的值是否大于90,如果成立则保留
该行数据,否则删除。筛选结果将返回一个新的数据对
象。
二、条件衍生
在数据清洗过程中,还经常需要使用if公式对数据进
行衍生操作。例如,根据学生的数学成绩和语文成绩,衍
生出一个新的列“综合成绩”,公式如下:
=if([MathGrade]>90 and
[ChineseGrade]>80,[MathGrade]*0.6+[ChineseGrade]*0.
4,[MathGrade]*0.4+[ChineseGrade]*0.6)
上述公式表达的意思是,如果数学成绩大于90且语文
成绩大于80,则计算综合成绩为数学成绩占60%、语文成
绩占40%的加权平均分,否则计算综合成绩为数学成绩占
40%、语文成绩占60%的加权平均分。
在PowerQuery中,实现该公式的代码如下:
let Source =
tWorkbook(){[Name="Table1"]}[Content],
#"Added Custom" = umn(Source, "综合成绩
", each if [MathGrade]>90 and [ChineseGrade]>80
then [MathGrade]*0.6+[ChineseGrade]*0.4 else
[MathGrade]*0.4+[ChineseGrade]*0.6) in #"Added
Custom"
上述代码首先指定数据源对象为Excel中名为Table1
的数据表,然后使用umn方法添加一个新列
“综合成绩”。该方法接受三个参数:数据源对象、新列
名称和一个函数。该函数通过if公式计算每行数据的综合
成绩,并返回一个新值。最终的数据对象将包含原始数据
和新的综合成绩列。
总结
通过本文的学习,大家应该已经了解了PowerQuery中
if公式的基础用法和应用场景。在实际的数据清洗过程
中,if公式是必不可少的工具之一,可帮助我们快速筛
选、衍生、处理数据,提高工作效率和准确性。当然,随
着数据清洗的深入,我们还需要掌握更多的数据处理技巧
和优化方法,以更好地应对各种数据场景的挑战。
发布者:admin,转转请注明出处:http://www.yc00.com/news/1712460380a2063425.html
评论列表(0条)