g_cumprod(G;S;O;X)
Returns the cumulative product within a given group.
Function type
Vector only
Syntax
g_cumprod(G;S;O;X)
t_cumprod(X)
Input
Argument | Type | Description |
---|---|---|
G |
any | A space- or comma-separated list of column names Rows are in the same group
if their values for all of the columns listed in If If any of the columns listed in |
S |
integer | The name of a column in which every row evaluates to a 1 or 0, which determines
whether or not that row is selected to be included in the calculation If
If any of the values in
|
O |
integer | A space- or comma-separated list of column names that
determine the row order within a particular group If
If any of the values in |
X |
integer or decimal | A column name An N/A in |
Return Value
For every row in each group defined by G
and ordered by O
(and for those rows where S
=1, if specified),
g_cumprod
returns a decimal number corresponding to the product of
X
for all rows up to and including that row.
If no rows in a group have valid (non-N/A) values for X
, the result for
every row of the group is 1.
Sample Usage
<base table="pub.doc.samples.ref.func.g_func_time_series_sample_usage"/> <willbe name="g_cumprod_1" value="g_cumprod(state;include;order;value)"/> <willbe name="g_cumprod_2" value="g_cumprod(state city;include;order;value)"/>
In the image above, one of the returned values contains many digits after the decimal. The
system hides this long decimal number and displays a greater than symbol
(>). Display formatting can be used to change the number
of decimal places that the system shows. Adding format="dec:0"
to
g_cumprod_1
results in the following:
<base table="pub.doc.samples.ref.func.g_func_time_series_sample_usage"/> <willbe name="g_cumprod_1" value="g_cumprod(state;include;order;value)" format="dec:0"/> <willbe name="g_cumprod_2" value="g_cumprod(state city;include;order;value)"/>
Additional Information
- The
t_
version of this function defaults theG
argument and omits theS
argument. The default forG
is set at table load time based on the organization of the table.