Computes the rolling count of non-null values forward or backward of the current row within the specified column. |
The row from which to extract a value is determined by the order in which the rows are organized based on the order
parameter.
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.
-1
and 0
, which computes the rolling function from the current row back to the first row of the dataset.For more information on a non-rolling version of this function, see COUNTA Function.
Column example:
rollingcounta(myCol) |
Output: Returns rolling count of non-null values in the myCol
column.
Rows before example:
rollingocounta(myNumber, 3) |
Output: Returns the rolling count of non-null values of the current row and the three previous row values in the myNumber
column.
Rows before and after example:
rollingcounta(myNumber, 3, 2) |
Output: Returns the rolling count of non-nulls from the three previous row values, the current row value, and the two rows after the current one in the myNumber
column.
rollingcounta(col_ref, rowsBefore_integer, rowsAfter_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 |
rowsBefore_integer | N | integer | Number of rows before the current one to include in the computation |
rowsAfter_integer | N | integer | Number of rows after the current one to include in the computation |
For more information on the order
and group
parameters, see Window Transform.
Name of the column whose values are used to compute the function.
Required? | Data Type | Example Value |
---|---|---|
Yes | String (column reference to Integer or Decimal values) | myColumn |
Integers representing the number of rows before or after the current one from which to compute the rolling function, including the current row. For example, if the first value is 5
, the current row and the five rows before it are used in the computation. Negative values for rowsAfter_integer
compute the rolling function from rows preceding the current one.
rowBefore=0
generates the current row value only.rowBefore=-1
uses all rows preceding the current one.rowsAfter
is not specified, then the value 0
is applied.group
parameter is applied, then these parameter values should be no more than the maximum number of rows in the groups.Required? | Data Type | Example Value |
---|---|---|
No | Integer | 4 |
In the following example, messages are tabulated every 10 seconds from a system. If no message is generated, null values are returned.
Source:
Timestamp | msgType | msgDescription |
---|---|---|
15:10:00 PM | warning | Server restarted. |
15:10:10 PM | warning | Unable to locate patterns file. |
15:10:20 PM | ||
15:10:30 PM | ||
15:10:40 PM | error | Cannot connect to data source. |
15:10:50 PM | error | Cannot open dataset. |
15:11:00 PM | ||
15:11:10 PM | ||
15:11:20 PM | error | Insufficient permissions to write to target location. |
15:11:30 PM | ||
15:11:40 PM | warning | Server restarted. |
15:11:50 PM | warning | Unable to locate patterns file. |
15:12:00 PM | error | Data node offline. |
15:12:10 PM | ||
15:12:20 PM | ||
15:12:30 PM | warning | Invalid statement in recipe. |
15:12:40 PM | ||
15:12:50 PM |
Transformation:
You are interested in counting the number of entries for the preceding minute for each row. You add the following:
Results:
Timestamp | msgType | msgDescription | rollingcounta_msgType |
---|---|---|---|
15:10:00 PM | warning | Server restarted. | 1 |
15:10:10 PM | warning | Unable to locate patterns file. | 2 |
15:10:20 PM | 2 | ||
15:10:30 PM | 2 | ||
15:10:40 PM | error | Cannot connect to data source. | 3 |
15:10:50 PM | error | Cannot open dataset. | 4 |
15:11:00 PM | 3 | ||
15:11:10 PM | 2 | ||
15:11:20 PM | error | Insufficient permissions to write to target location. | 3 |
15:11:30 PM | 3 | ||
15:11:40 PM | warning | Server restarted. | 3 |
15:11:50 PM | warning | Unable to locate patterns file. | 3 |
15:12:00 PM | error | Data node offline. | 4 |
15:12:10 PM | 4 | ||
15:12:20 PM | 3 | ||
15:12:30 PM | warning | Invalid statement in recipe. | 4 |
15:12:40 PM | 3 | ||
15:12:50 PM | 2 |