Concept: Data Analysis with Worksheets Functions
Data analysis is an iterative process of collecting, cleaning, and shaping your data, followed by aggregation and analysis. Worksheets helps to make your workflow more efficient by enabling you to work with live Workday data, and to use Worksheets-unique functions that improve the analysis workflow.
As you do each of these steps, remember to keep your original data as a backup by creating new workbooks for the manipulated data.
Collect
Compile your data, gathering it from resources both outside and within Workday. Make sure that your raw data is complete. Here's a summary of actions that you might do during data collection:
- Select from Drive to create workbooks from data that exists outside Workday.
- Select to add live data from Workday reports into a workbook. The Data Wizard helps you identify the subset of data that you want to insert to the workbook.
- Keep your data current by creating a schedule to refresh the live data.
- Use the ARRAYAREA function to copy data from one unconstrained array to another, creating an organized set of raw data to manipulate in the Clean step. ARRAYAREA returns the containing range of the array formula, based on the cell address you specify. The array can originate either in a Workday report or an array formula.
Clean
Reduce your data to only the information you need by removing duplication, trimming empty workbook values, and more.
Keep these Worksheets-unique functions in mind:
Function | Notes |
|---|---|
DISTINCTROWS | Combines a set of ranges into a single range while removing any rows that are duplicates. DISTINCTROWS evaluates text and instance values as not distinct from each other. When the supplied range contains both an instance value and a text string that are the same, the function returns 1 row, the instance value. |
REMOVECOLUMNS | Removes one or more columns from the referenced area. The function removes the number_of_columns, starting at and including start_column. |
REMOVEROWS | Removes one or more rows from the referenced area. The function removes the number_of_rows following start_row , starting at and including start_row . Use REMOVEROWS without specifying any rows in order to remove the first (heading) row. |
TRIMCOLUMNS TRIMROWS | Removes trailing blank columns and rows from a range, when the data is a result of an unconstrained array formula. |
TRUNCATEMATRIX | Removes rows, columns, or both, from a matrix. |
UNIQUE | Returns a matrix whose rows are unique according to the specified keys. The function returns only unique rows, based on the values in the specified columns. This function is similar to DISTINCTROWS(), but UNIQUE() takes a single range and a set of columns. |
Shape
Arrange, convert, and organize your data to create consistency:
- Standardize your columns and create new ones if needed.
- Give each column a unique and descriptive header.
- Format each column consistently.
- Double-check for duplicate or missing rows.
- Make sure the wording and formatting for text data is consistent.
- Make sure that no cells are blank.
- Convert data values to the same unit where needed.
When shaping data, there are 2 main types of data manipulation:
- Value-specific: The action you want to take depends on the value in the cell.
- Data arrangement: The manipulation is value-agnostic and you're moving cells, columns, and rows to different locations.
For value-specific manipulation, these Worksheets-unique functions can be helpful:
Function | Notes |
|---|---|
CONVERT | Converts a number from 1 unit of measurement to another. |
DATESBETWEEN | Returns an array of dates that starts and ends on a particular date, with a step interval between each date. |
DATESFROM | Returns an array of dates that starts on a particular date and continues for the number of dates you specify, with a step interval between each date. |
IN | Determines whether a value or list of values that you specify is in another list of values. If so, returns True; otherwise, returns False. |
MATCHCOMPOSITE | A common use case for MATCHCOMPOSITE is to consolidate column data from 2 sheets into 1, where you have data on a sheet, along with notes about that same data in a column on a different sheet. MATCHCOMPOSITE copies values in one or more columns from the location to the right of a source array, and returns values to the right of a destination array. You use a composite key of columns to match copied data to the correct rows in the destination. |
MATCHEXACT | Looks up an exact match for the value in the sorted list (one-dimensional array) you specify, and returns the position of the value. You can use this function to match logical values, numeric values, or text strings. This function is similar to MATCH, but MATCHEXACT:
|
MHLOOKUP | We recommend this function as a replacement for HLOOKUP. MHLOOKUP performs a horizontal (row) lookup on a table and returns all matches. MHLOOKUP is similar to HLOOKUP, but:
|
MVLOOKUP | We recommend this function as a replacement for VLOOKUP, especially when you're working with live data. MVLOOKUP performs a vertical (column) lookup on a table and returns all matches. MVLOOKUP is similar to VLOOKUP, but:
|
REGEXFIND | Returns the position of the first character of a substring that matches the regular expression pattern. The position value is zero-based. |
REGEXPARSE | Extracts parts of a string by matching to a pattern. |
SETUNITS | Converts a number from its current unit of measurement to another. This function is similar to CONVERT(), but in CONVERT() you must specify both the original and the new unit values. |
SELECT | Valuable for value-based manipulation as well as data arrangement. The SELECT function is similar to an SQL SELECT statement. The basic format is: SELECT column1, [column2], ... FROM table where column is the data to return and table is the data source to select from. In the FROM clause you can specify, for example:
|
For data arrangement, these Worksheets-unique functions can be helpful:
Function | Notes |
|---|---|
WD.ARRANGECOLUMNS WD.ARRANGEROWS | Creates a new range from an existing range, with the columns or rows ordered according to the specified indexes. With WD.ARRANGECOLUMNS you can add an empty column by including a null index value. Example: =WD.ARRANGECOLUMNS([range],1,2,3,,4) inserts a blank column between the 3rd index value and the 4th index value. |
CORRELATE | Creates a new matrix by combining rows from the ranges you specify. This function is similar to a database join. |
FLATTEN | Returns an expanded range of data based on the hierarchical data that you specify. Typically you use this function to expand an organization's manager and employee information so that it displays all levels of the hierarchy. |
JOIN | Performs an inner left join on 2 ranges. |
MERGECOLUMNS | Merges columns by placing them side by side into a new range. |
MERGEROWS | Merges rows by placing them 1 below the other into a new range. |
MINUS | Returns all rows from a first range that don't appear in any of the other supplied ranges. |
SORT SORT2 SORT3 | Sorts an existing matrix and returns a new matrix. SORT accepts 1 sort direction and sorts all columns you specified based on that direction. SORT2 accepts pairs of parameters, which you use to specify the referenced column and the sort direction for that column. SORT3 assumes that the first row of the array to be sorted is a header and returns that row at the top of the results. |
VALUEAT | Returns the value at the intersection of a column header and row label. |
SELECT | Valuable for value-based manipulation as well as data arrangement. The SELECT function is similar to an SQL SELECT statement. The basic format is: SELECT column1, [column2], ... FROM table where column is the data to return and table is the data source to select from. In the FROM clause you can specify, for example:
|
Analyze
Now you're ready to aggregate and analyze the data you've prepared.
The most commonly used analysis tool is the pivot table, which enables you to summarize and analyze large amounts of data. The Pivot Table Wizard and details panel enable you to create and edit pivot tables interactively. You can also create charts to visually demonstrate data relationships.
Keep these Worksheets-unique data analysis functions in mind:
Function | Notes |
|---|---|
CAPPEDVALUES | Typically used for 401(k) deductions, ESPP deductions, or tax payments that have a regular value per period, but drop to zero (0) when the payment reaches the cap. Returns an array of values over a set of periods from an array of values that you provide, over the same periods, limited by a provided cap over the whole duration. |
FORECAST.WD.SEASONAL | Returns a predicted sequence of values using patterns in the historical linear and nonlinear data that you specify. |
GROUPBY | GROUPBY is a powerful function that can often replace COUNTIF(S), AVERAGEIF(S), and SUMIF(S). GROUPBY aggregates data, and orders the results based on the order that you specify. The grouping is based on a key that you can predefine in the table, or you can define it using columns in the workbook. The result looks similar to a sorted pivot table. This function is often useful as part of headcount planning. |
SELECT | The SELECT function is similar to an SQL SELECT statement. The basic format is: SELECT column1, [column2], ... FROM table where column is the data to return and table is the data source to select from. In the FROM clause you can specify, for example:
|
Other Notable Worksheets-Unique Functions
These functions aren't specific to data analysis but are very useful in all steps:
Function | Notes |
|---|---|
NOTIFYIF NOTIFYIFS | Sends notifications if a condition is met. You can send a notification to a user whether or not they have access to the workbook. |
ONCE | Calculates a formula exactly 1 time. Worksheets never re-evaluates the formula even if you request re-calculation using ; however, you can manually resubmit the formula. Example: Use this function when the volatile function NOW() places a timestamp in a workbook, and this timestamp must never change. |