每日一练表格制作


大家好,我是古老师。本周将公布PMC行业群第50周的“每日一练”题目及其答案解析。本次内容主要围绕数据分析中的筛选分析问题展开,旨在通过练习提升大家的相关技能,以更好地胜任PMC相关岗位的工作。

题目背景:

在数据处理过程中,有时无法直接更改或调整数据格式,此时最佳策略是使用函数将需要分析的数据筛选到其他区域或新的工作表进行单独分析。

考核点:

1. 数据分析基础。

2. 单条件筛选函数的应用。

参考答案:

核心公式是使用FILTER函数实现单条件筛选。其用法简单:第一个参数为要显示的数据区域,第二个参数为筛选条件。例如,FILTER(数据区域, 筛选条件)可以直接筛选出符合条件的数据。

还可以通过IF函数结合TOCOL和WRAPROWS函数进行数据筛选和整理。使用IF函数判断是否符合筛选条件,若符合则返回对应值;然后,使用TOCOL函数整理结果,并利用WRAPROWS函数对数据进行二次转换,以支持更大范围的数据动态扩展。

第三种方法是采用聚合函数(如GROUPBY),利用最后一个参数作为条件进行筛选和聚合分析。

题目背景:

单条件筛选是大多数PMC从业者已掌握的技能,但对于涉及多个条件的筛选,尤其是当条件数量较多时,需要更高级的技术和方法。本练习旨在提升大家应对复杂筛选条件的能力。

考核点:

1. 多条件下动态扩展筛选的应用。

2. 超多条件筛选方案的设计。

3. 公式中加号(+)与乘号()在逻辑判断中的应用。

参考答案:

答案1:使用FILTER函数的传统解法。利用符号“+”表示逻辑“或”关系,将多个筛选条件组合起来。例如,FILTER(数据区域, 条件1 + 条件2)表示只要满足条件1或条件2的数据都将被筛选出来。

答案2:基于IF函数的逻辑判断。用“+”号代表逻辑“或”,用“”号代表逻辑“与”。即,IF(条件1 + 条件2, 结果)表示如果条件1或条件2成立,则返回结果;IF(条件1 条件2, 结果)表示只有当条件1和条件2都成立时才返回结果。

答案3:结合垂直数组与水平数组进行批量判断。对于众多条件,可以创建一个逻辑值数组,每一列代表一个条件。通过BYROW函数对这个逻辑值数组按行运算,得到一个由0和1组成的垂直数组,用于FILTER函数的条件判断。

题目背景:

在实际场景中,常需根据特定条件筛选数据,例如筛选出1线体的数据后,进一步筛选出该线体中由特定个体负责的业务信息,并对这些信息进行汇总和排序。

考核点:

1. 多条件筛选。

2. 数据汇总。

3. 数据排序。

本题答案:

可采用GROUPBY函数进行聚合,因为需要聚合的行标签不在一起,需用HSTACK进行拼接。值标签为销售数据。函数用SUM进行汇总。后面的参数分别控制排序、筛选。这种方法能迅速解决包含多个需求的复杂业务场景:先筛选特定条件的数据,然后进行汇总,最后完成排序。

题目背景:

在生产计划中,常需为每组符合条件的数据独立创建标题,并在各组数据之间插入空行进行分隔。例如,创建类似工资条的表格。这不仅要使用筛选函数,还需用到高级函数REDUCE和LAMDA。

考核点:

1. 多条件判断筛选。

2. 空行数组的创建。

3. 高阶函数REDUCE的应用与堆叠逻辑。

本题答案:

一种直观的方法是使用UNIQUE函数对筛选条件(如姓名)进行去重处理,得到一个唯一的姓名数组。这个数组可作为REDUCE函数中的迭代值(Y),用于逐个处理每个唯一值。标题列则作为初始值(X)。配合筛选函数,我们可以根据Y值筛选出符合条件的数据,并使用VSTACK函数垂直合并这些数据,同时在每组数据之间添加空行。这种方法能处理复杂的业务场景,通过动态数组函数实现数据的筛选、标题的创建及空行的插入。

出题背景:

在处理数据时,面对非标准格式的数据(如存在合并单元格)且查询条件复杂、需要汇总多项指标并要将一维数据转换为二维表格结构时,情况变得更为棘手。针对这样的业务场景,建议使用辅助列结合函数处理。

本题考点:

1. 一个公式全动态扩展设计。

2. 复杂条件的筛选。

3. 合并单元格处理。

4. 表格数据结构的变换(一维到二维)。

本题答案: