Contents:
The row from which to extract a value is determined by the order in which the rows are organized at the time that the transform is executed. If you are working on a randomly generated sample of your dataset, the values that you see for this function might not correspond to the values that are generated on the full dataset during job execution.
- The function accepts a second Integer parameter because it is a
window
transform function. However, this parameter is not used. - You can use the
group
andorder
parameters to define the groups of records and the order of those records to which this transform is applied. - This function works with the following transforms:
Basic Usage
window value:FILL(myNumber) order:'Date'
Output: Generates a new column, which contains all values from the myNumber
column with any null cells filled by the most recent non-blank value, as determined by the Date
column.
Syntax and Arguments
window value:FILL(col_ref, [k_integer]) order: order_col [group: group_col]
Argument | Required? | Data Type | Description |
---|---|---|---|
col_ref | Y | string | Name of column whose values are applied to the function |
k_integer | N | integer (positive) | NOTE: Unused by this function. |
For more information on the order
and group
parameters, see Window Transform.
For more information on syntax standards, see Language Documentation Syntax Notes.
col_ref
Name of the column whose values are filled when null.
- Multiple columns and wildcards are not supported.
Usage Notes:
Required? | Data Type | Example Value |
---|---|---|
Yes | String (column reference) | myColumn |
k_integer
NOTE: While accepted by the function, this parameter is not used by the function. If specified, it must be a positive integer.
Usage Notes:
Required? | Data Type | Example Value |
---|---|---|
No. Unused. | Integer | 1 |
Tip: For additional examples, see Common Tasks.
Examples
Example - Fill with quarterly forecast values
Your monthly sales data includes amount sold for each month. However, the source system only provides the quarterly forecast as part of the data for the first month of each quarter. You can use the FILL
function to add the prior forecast to each month's data.
Source:
Date | Amount | Forecast_Qtr |
---|---|---|
1/31/15 | 523 | 1400 |
2/28/15 | 135 | |
3/31/15 | 824 | |
4/30/15 | 305 | 1500 |
5/31/15 | 763 | |
6/30/15 | 421 | |
7/31/15 | 606 | 1600 |
8/31/15 | 477 | |
9/30/15 | 785 | |
10/31/15 | 443 | 1700 |
11/30/15 | 622 | |
12/31/15 | 518 |
Transform:
You can use the following transform to fill the prior forecast value for each blank month in the Forecast_Qtr
column. Note that the order
parameter must be set to Date
to establish the proper sorting:
window value: FILL(Forecast_Qtr) order: Date
You can now drop the Forecast_Qtr
column and rename the generated window
column to the dropped name.
To see how you are progressing each month, you might use the following transform, which computes the average forecast for each month:
derive type:single value:NUMFORMAT((Forecast_Qtr/3),'####.##') as:'Forecast_Month_Avg'
You can then compare this value to the actual Amount
value for each month:
derive type:single value:NUMFORMAT(((Amount - Forecast_Month_Avg)/Forecast_Month_Avg)*100, '##.00') as:'MonthActualVForecast_Pct'
Results:
Date | Amount | Forecast_Qtr | Forecast_Month_Avg | MonthActualVForecast_Pct |
---|---|---|---|---|
1/31/15 | 523 | 1400 | 466.67 | 12.07 |
2/28/15 | 135 | 1400 | 466.67 | -71.07 |
3/31/15 | 824 | 1400 | 466.67 | 76.57 |
4/30/15 | 305 | 1500 | 500 | -39.00 |
5/31/15 | 763 | 1500 | 500 | 52.60 |
6/30/15 | 421 | 1500 | 500 | -15.80 |
7/31/15 | 606 | 1600 | 533.33 | 13.63 |
8/31/15 | 477 | 1600 | 533.33 | -10.56 |
9/30/15 | 785 | 1600 | 533.33 | 47.19 |
10/31/15 | 443 | 1700 | 566.67 | -21.82 |
11/30/15 | 622 | 1700 | 566.67 | 9.76 |
12/31/15 | 518 | 1700 | 566.67 | -8.59 |
This page has no comments.