概念:使用 Worksheets 函数进行数据分析
数据分析是一个不断迭代的过程,涵盖数据收集、清理和构形,以及之后的聚合及分析。Worksheets 可让您处理 Workday 动态数据,并使用 Worksheets 特有的函数来改进分析工作流,从而提高工作流效率。
在您执行上述每个步骤时,请务必为所操作的数据新建工作簿,以便保留原始数据备份。
收集
从 Workday 外部和内部的资源中收集数据,将数据汇集起来。请确保原始数据完整无缺。下面汇总了可在数据收集期间执行的操作:
- 在云盘中选择,以根据 Workday 外部的数据创建工作簿。
- 选择,将 Workday 报告中的动态数据添加到工作簿中。数据向导可帮助您确定要插入工作簿中的数据子集。
- 通过创建动态数据的刷新时间表,使数据保持最新状态。
- 使用 ARRAYAREA 函数将数据从一个无约束数组复制到另一个,从而创建一组有序的原始数据,以便在“清理”步骤中进行操作。ARRAYAREA 会根据您指定的单元格地址,返回数组公式的包含范围。数组可以源自 Workday 报告或数组公式。
清理
通过移除重复项、去除空工作簿值等方式缩减数据,使其仅包含您所需的信息。
请注意以下 Worksheets 特有的函数:
函数 | 注释 |
|---|---|
DISTINCTROWS | 将一组范围组合为一个范围,同时移除所有重复的行。DISTINCTROWS 会将文本值和实例值的计算结果视为彼此没有区别。当提供的范围同时包含实例值和文本字符串,且两者相同时,此函数会返回 1 行(即实例值)。 |
REMOVECOLUMNS | 从引用区域中移除一列或多列。此函数会移除 number_of_columns 列(从 start_column 开始并包括该列)。 |
REMOVEROWS | 从引用区域中移除一行或多行。此函数会移除 start_row 后的 number_of_rows 行(从 start_row 开始并包括该行)。如果在不指定任何行的情况下使用 REMOVEROWS,则会移除第一行(标题行)。 |
TRIMCOLUMNS TRIMROWS | 当数据是无约束的数组公式的结果时,此函数会从范围中去除尾部的空白列和空白行。 |
TRUNCATEMATRIX | 从矩阵中移除行和/或列。 |
UNIQUE | 返回一个矩阵,其中包含的行根据指定键确定是唯一的。此函数根据指定列中的值仅返回唯一的行。UNIQUE() 函数类似于 DISTINCTROWS(),但前者接受单个范围和一组列。 |
构形
排列、转换和整理数据以创造一致性:
- 对列进行标准化处理,并根据需要创建新列。
- 为每列指定唯一的描述性标题。
- 以一致的方式设置每列的格式。
- 仔细检查是否存在重复行或是否缺失行。
- 确保文本数据的措辞和格式一致。
- 确保没有空白单元格。
- 根据需要转换数据值,使它们都采用相同的单位。
对数据进行构形时,数据操作主要有以下两种:
- 特定于值:您希望执行的操作取决于单元格中的值。
- 数据排列:这种操作与值无关,并且您要将单元格、列和行移到不同的位置。
对于特定于值的操作,以下 Worksheets 特有的函数会很有帮助:
函数 | 注释 |
|---|---|
CONVERT | 将数字从一种计量单位转换为另一种计量单位。 |
DATESBETWEEN | 返回在特定日期开始和结束的日期数组,每个日期之间具有指定的时间间隔。 |
DATESFROM | 返回一个日期数组,这些日期从特定日期开始,并按您指定的日期数量持续出现,每个日期之间具有指定的时间间隔。 |
IN | 确定您指定的某个值或值列表是否位于另一个值列表中。如果是,则返回 True,否则返回 False。 |
MATCHCOMPOSITE | MATCHCOMPOSITE 函数的一个常见用例是:如果有 2 个工作表,其中一个包含数据,另一个的一列中包含这些数据的相关注释,则可以使用此函数将这 2 个工作表中的列数据合并到 1 个工作表。MATCHCOMPOSITE 从源数组右侧的位置复制一列或多列中的值,然后将值返回至目标数组的右侧。您使用列的复合键,将复制的数据匹配到目标数组的正确行中。 |
MATCHEXACT | 在您指定的已排序列表(一维数组)中查找值的完全匹配项,并返回值的位置。您可以使用此函数来匹配逻辑值、数值或文本字符串。MATCHEXACT 函数类似于 MATCH,但此函数:
|
MHLOOKUP | 我们建议使用此函数替代 HLOOKUP。MHLOOKUP 对表格执行水平(行)查询,并返回所有匹配项。MHLOOKUP 类似于 HLOOKUP,但是:
|
MVLOOKUP | 我们建议使用此函数替代 VLOOKUP,尤其是在您处理动态数据时。MVLOOKUP 对表格执行垂直(列)查询,并返回所有匹配项。MVLOOKUP 类似于 VLOOKUP,但是:
|
REGEXFIND | 对于与正则表达式模式匹配的子字符串,返回其第一个字符的位置。位置值从零开始。 |
REGEXPARSE | 通过与模式进行匹配来提取字符串的各个部分。 |
SETUNITS | 将数字从其当前计量单位转换为另一种计量单位。此函数类似于 CONVERT(),但在 CONVERT() 中,您必须同时指定原始单位值和新单位值。 |
SELECT | 对基于值的操作和数据排列很有用。SELECT 函数类似于 SQL SELECT 语句。基本格式为:"SELECT column1, [column2], ...FROM table",其中 column 是要返回的数据,table 是要从中选择数据的数据源。在 FROM 子句中,您可以指定不同的内容,例如:
|
对于数据排列,以下 Worksheets 特有的函数很有用:
函数 | 注释 |
|---|---|
WD.ARRANGECOLUMNS WD.ARRANGEROWS | 根据现有范围新建一个范围,并按照指定的索引对列或行进行排序。通过使用 WD.ARRANGECOLUMNS,您可以通过包含空的索引值来添加空列。示例:=WD.ARRANGECOLUMNS([range],1,2,3,,4) 会在第三个索引值与第四个索引值之间插入一个空白列。 |
CORRELATE | 通过组合指定范围内的行来新建一个矩阵。此函数类似于数据库联接 (JOIN)。 |
FLATTEN | 根据您指定的分层数据,返回一个展开后的数据范围。通常,您可以使用此函数展开组织的经理和员工信息,使其显示层次结构的所有级别。 |
JOIN | 对 2 个范围执行左内联接。 |
MERGECOLUMNS | 通过将列以并排方式插入新范围来合并列。 |
MERGEROWS | 通过将行以叠放方式放入新范围来合并行。 |
MINUS | 返回第一个范围内未出现在提供的任何其他范围内的所有行。 |
SORT SORT2 SORT3 | 对现有矩阵进行排序并返回一个新矩阵。SORT 接受一个排序方向,并根据该方向对您指定的所有列进行排序。SORT2 接受成对的参数,可用于指定引用的列以及该列的排序方向。SORT3 会假定要排序的数组的第一行是标题,并在结果的顶部返回该行。 |
VALUEAT | 返回列标题与行标签相交处的值。 |
SELECT | 对基于值的操作和数据排列很有用。SELECT 函数类似于 SQL SELECT 语句。基本格式为:"SELECT column1, [column2], ...FROM table",其中 column 是要返回的数据,table 是要从中选择数据的数据源。在 FROM 子句中,您可以指定不同的内容,例如:
|
分析
现在,您可以对准备好的数据进行聚合和分析。
数据透视表是最常用的分析工具,可用于汇总和分析大量数据。通过数据透视表向导和详细信息面板,您能够以交互方式创建和编辑数据透视表。您还可以创建图表,直观地呈现数据关系。
请注意以下 Worksheets 特有的数据分析函数:
函数 | 注释 |
|---|---|
CAPPEDVALUES | 通常用于 401(k) 扣减或 ESPP 扣减,或者在每个期间具有常规值但当付款达到上限时降至零 (0) 的税款支付。此函数根据您为一组期间提供的值数组,返回该组期间内的一个值数组,而且返回的值不会超过您为整组期间提供的最大值。 |
FORECAST.WD.SEASONAL | 使用您指定的历史线性和非线性数据中的模式,返回预测的值序列。 |
GROUPBY | GROUPBY 是一个功能强大的函数,通常可以替代 COUNTIF(S)、AVERAGEIF(S) 和 SUMIF(S)。GROUPBY 会聚合数据,并根据您指定的顺序对结果进行排序。您可以根据在表格中预定义的键进行分组;也可以使用工作簿中的列定义分组。此函数的结果类似于已排序的数据透视表。在人员编制规划中,此函数通常很有用。 |
SELECT | SELECT 函数类似于 SQL SELECT 语句。基本格式为:"SELECT column1, [column2], ...FROM table",其中 column 是要返回的数据,table 是要从中选择数据的数据源。在 FROM 子句中,您可以指定不同的内容,例如:
|
其他重要的 Worksheets 特有函数
以下函数并非数据分析专用,而是在所有步骤中都非常有用:
函数 | 注释 |
|---|---|
NOTIFYIF NOTIFYIFS | 在符合某个条件时发送通知。无论用户是否有权访问工作簿,您都可以向他们发送通知。 |
ONCE | 仅计算某个公式一次。即使您使用请求重新计算,Worksheets 也不会重新计算公式。但是,您可以手动重新提交公式。示例:当易变函数 NOW() 在工作簿中放置时间戳,并且此时间戳绝不能发生变更时,请使用此函数。 |