在PMC的专业工作环境中,数据可视化大多采用二维结构来呈现,这种策略极为有效,因为它不仅确保了数据的直观性,还极大程度上促进了对复杂信息的多角度、深层次探索,为洞察数据间的微妙联系和趋势规律提供了直观途径。
不过,当面临数据引用的挑战时,特别是当数据集蕴含复杂的多维度特性,传统二维展示方式的局限性便显现出来,给精确引用与对比分析带来了一定困扰。
因此,采取一种创新策略,即通过精心设计的数据转换过程,将原本错综的二维数据精炼整合为一维序列,无疑将成为破局关键。这不仅能极大地简化引用步骤,提高工作效率,同时也保证了数据引用的准确性和一致性,进一步推动了数据分析的深度与广度。
转换二维数据为一维数据的方法众多,涵盖了VBA编程、Power Query(PQ)工具及复杂函数组合等途径,这些技术往往要求较高的学习理解和应用能力,特别是函数方法,常需多个函数嵌套使用,对初学者来说可能较为繁琐。那么,是否存在一种更为简便易懂的解决方案呢?确实有一个新选项:随着WPS的最新更新,引入了GBY(GROUPBY)函数,为用户提供了相对直观且易掌握的转换手段。
聚合转换
以上图案例中的一个经典的二维数据来作为案例。其中垂直方向(行)的数据为姓名,水平方向(列)是各个月份的销售数量。此时可以录入以下函数来把二维数据快速转换成一维数据:
G3=GROUPBY(B2:B6,C2:E6,IF({1,0},N,TOCOL(C2:E2)),,0)
效果如下图所示:
函数解释:
GROUPBY函数的参数包括:
第一个参数:B2:B6,代表行字段,即姓名列表。这一列数据用于作为分组的依据。在数据透视表中,相当于将此字段拖动到行标签区域。
第二个参数:C2:E6,是值字段,包含了每位姓名对应的销售数量,涵盖1月到3月的数据。相当于将此字段拖动到值标签区域。
若使用数据透视表展现这两个字段的关系,其效果可直观理解为:姓名在行方向上分散排列,而相应的1月至3月销售数量则展示在各姓名下方,正如下图所示。
第三个参数设定为 IF({1,0}, N, TOCOL(C2:E2)),旨在根据GROUPBY第三参数的函数参数的需求构建一个条件逻辑。这里,数组常量 {1,0} 作为判断条件,引导生成两种可能的结果。其中,N 代指与GROUPBY中姓名相对应的值,即按姓名分组后的数据。而 TOCOL(C2:E2) 的作用是将范围 C2 到 E2 的单元格内容纵向堆叠成一列,实现从横跨1月至3月的数据到垂直方向的转换。因此,该 IF 语句通过条件判断重组了一个新的一维数组,以便适应后续处理需求
传统转换
对比传统的转换公式:
G3=HSTACK(TOCOL(IF(C3:E6>0,B3:B6)),TOCOL(IF(C3:E6>0,C2:E2)),TOCOL(C3:E6))
不仅显著缩减了公式字符的数量,而且还降低了运算的复杂度,从而提升了计算效率。更重要的是,GROUPBY函数的最终参数设计允许对转换结果进行直接筛选,这一特性进一步增强了其功能性和实用性。
函数释义:
G3=: 表示结果将放置在单元格G3中。
HSTACK:用于水平堆叠多个数组或范围。它将几个垂直数组合并成一个更宽的数组,每个输入数组成为结果数组中的一列。
接下来是三个TOCOL函数的应用,TOCOL用于将一个范围内的数据转换为一维垂直数组(列向量)。
第一个数组:TOCOL(IF(C3:E6>0, B3:B6)):
IF(C3:E6>0, B3:B6): 这是一个条件判断,检查C3到E6区域中的每个单元格是否大于0。如果是,就取B3到B6对应行的值。这意味着我们只选择那些在C3至E6范围内销售数量大于0的行对应的姓名(假设B列是姓名列)。TOCOL(...): 将上述条件判断后得到的值姓名转换为一维垂直数组。
第二个数组:TOCOL(IF(C3:E6>0, C2:E2)):
同样的逻辑,但是这次选择的是C2至E2行上的值(月份)。对符合条件的月份数据进行筛选并转换为列。TOCOL(...): 将上述条件判断后得到的值月份转换为一维垂直数组
第三个数组:TOCOL(C3:E6):
直接将C3到E6的整个范围转换为一维垂直数组,包含所有月份的销售数量,不论是否大于0。
增加筛选
把GBY生成的结果中,增加筛选条件,把最后一个参数更改为以下:
G3=GROUPBY(B2:B6,C2:E6,IF({1,0},N,TOCOL(C2:E2)),,0,,B2:B6=B4)
可以发现最一个参数筛选数组“B2:B6=B4”和筛选函数的第二参数的用法一样,均采用了比较操作符来定义筛选标准,即判断区域中的单元格是否符合给定条件。如果需要表示逻辑或(OR)关系,例如同时满足两个不同条件,应当采用加号(+)连接两个比较表达式,格式为:(区域1=条件1) + (区域2=条件2)。
增加条件
在传统的方法中,如果二维转一维还需要增加一列字段的话是非常复杂的,此时用GBY的方法增加字段就显示较为简单,如姓名边上增加一列垂直字段部门,此时只需要把GBY函数的第一参数行字段参数的引用范围扩展一列就可以快速转换。
H3=GROUPBY(B2:C6,D2:F6,IF({1,0},N,TOCOL(D2:F2)),,0)
最后总结:
总而言之,面对大数据时代下日益增长的数据复杂度与分析需求,创新的数据处理技术,特别是像WPS的GBY函数这样的工具,为数据工作者提供了一条高效且直观的路径,以应对传统二维数据展示和引用的局限。GBY函数通过其简洁的语法结构与强大的数据聚合能力,实现了从二维到一维数据的无缝转换,不仅大幅提升了工作效率,也确保了数据处理的准确性与一致性。
与传统的转换方法相比,GBY函数的优势在于其集成的筛选与条件逻辑应用,这不仅简化了公式编写,还赋予了数据处理更高的灵活性与定制化可能。用户无需掌握复杂的编程技能或深入学习多层函数嵌套,即可轻松完成对多维度数据的整合与分析,降低了数据分析的门槛,使得更多非技术背景的工作者也能参与到数据驱动的决策过程中。
此外,GBY函数在处理动态数据增加或筛选条件变化时所展现出的简便性,更是体现了其在实际工作场景中的强大适应力。通过简单的参数调整,即可实现对新增字段的整合或特定条件下的数据筛选,这在快节奏的工厂环境和不断变化的数据分析需求中显得尤为宝贵。
转载此文是出于传递更多信息目的。若来源标注错误或侵犯了您的合法权益,请与本站联系,我们将及时更正、删除、谢谢。
https://www.414w.com/read/362238.html