Teradata Package for Python Function Reference | 17.10 - regr_avgx - Teradata Package for Python - Look here for syntax, methods and examples for the functions included in the Teradata Package for Python.
Teradata® Package for Python Function Reference
- Product
- Teradata Package for Python
- Release Number
- 17.10
- Published
- April 2022
- Language
- English (United States)
- Last Update
- 2022-08-19
- lifecycle
- previous
- Product Category
- Teradata Vantage
- teradataml.dataframe.window.regr_avgx = regr_avgx(expression)
- DESCRIPTION:
Function returns the mean of the independent variable for all
non-null data pairs of the dependent and an independent variable arguments
over the specified window. The function considers ColumnExpression as a
dependent variable and "expression" as an independent variable.
Note:
When there are fewer than two non-null data point pairs in the
data used for the computation, the function returns None.
PARAMETERS:
expression:
Required Argument.
Specifies a ColumnExpression of a column or name of the column or a
literal representing an independent variable for the regression.
An independent variable is a treatment: something that is varied under
your control to test the behavior of another variable.
Types: ColumnExpression OR int OR float OR str
RETURNS:
* teradataml DataFrame - When aggregate is executed using window created
on teradataml DataFrame.
* ColumnExpression, also known as, teradataml DataFrameColumn - When aggregate is
executed using window created on ColumnExpression.
RAISES:
RuntimeError - If column does not support the aggregate operation.
EXAMPLES:
# Load the data to run the example.
>>> load_example_data("dataframe", "admissions_train")
>>>
# Create a DataFrame on 'admissions_train' table.
>>> admissions_train = DataFrame("admissions_train")
>>> admissions_train
masters gpa stats programming admitted
id
22 yes 3.46 Novice Beginner 0
36 no 3.00 Advanced Novice 0
15 yes 4.00 Advanced Advanced 1
38 yes 2.65 Advanced Beginner 1
5 no 3.44 Novice Novice 0
17 no 3.83 Advanced Advanced 1
34 yes 3.85 Advanced Beginner 0
13 no 4.00 Advanced Novice 1
26 yes 3.57 Advanced Advanced 1
19 yes 1.98 Advanced Advanced 0
>>>
# Note:
# In the examples here, ColumnExpression is passed as input. User can
# choose to pass column name instead of the ColumnExpression.
# Example 1: Calculate the mean of the column 'admitted' for all
# non-null data pairs with dependent variable as 'gpa',
# in a Rolling window, partitioned over 'programming'.
# Create a Rolling window on 'gpa'.
>>> window = admissions_train.gpa.window(partition_columns="programming",
... window_start_point=-2,
... window_end_point=0)
>>>
# Execute regr_avgx() on the Rolling window and attach it to the DataFrame.
# Note: DataFrame.assign() allows combining multiple window aggregate
# operations in one single call. In this example, we are executing
# regr_avgx() along with count() window aggregate operations.
>>> df = admissions_train.assign(regr_avgx_gpa=window.regr_avgx(admissions_train.admitted),
... count_gpa=window.count())
>>> df
masters gpa stats programming admitted count_gpa regr_avgx_gpa
id
15 yes 4.00 Advanced Advanced 1 3 1.000000
16 no 3.70 Advanced Advanced 1 3 1.000000
11 no 3.13 Advanced Advanced 1 3 1.000000
9 no 3.82 Advanced Advanced 1 3 1.000000
19 yes 1.98 Advanced Advanced 0 3 0.666667
27 yes 3.96 Advanced Advanced 0 3 0.333333
1 yes 3.95 Beginner Beginner 0 1 0.000000
34 yes 3.85 Advanced Beginner 0 2 0.000000
32 yes 3.46 Advanced Beginner 0 3 0.000000
40 yes 3.95 Novice Beginner 0 3 0.000000
>>>
# Example 2: Calculate the mean of the column 'admitted' for all non-null
# data pairs with dependent variable as all other columns,
# in an Expanding window, partitioned over 'programming',
# and order by 'id' in descending order.
# Create an Expanding window on DataFrame.
>>> window = admissions_train.window(partition_columns="masters",
... order_columns="id",
... sort_ascending=False,
... window_start_point=None,
... window_end_point=0)
>>>
# Execute regr_avgx() on the Expanding window.
>>> df = window.regr_avgx(admissions_train.admitted)
>>> df
masters gpa stats programming admitted admitted_regr_avgx gpa_regr_avgx id_regr_avgx
id
38 yes 2.65 Advanced Beginner 1 0.333333 0.333333 0.333333
32 yes 3.46 Advanced Beginner 0 0.200000 0.200000 0.200000
31 yes 3.50 Advanced Beginner 1 0.333333 0.333333 0.333333
30 yes 3.79 Advanced Novice 0 0.285714 0.285714 0.285714
27 yes 3.96 Advanced Advanced 0 0.222222 0.222222 0.222222
26 yes 3.57 Advanced Advanced 1 0.300000 0.300000 0.300000
37 no 3.52 Novice Novice 1 1.000000 1.000000 1.000000
36 no 3.00 Advanced Novice 0 0.500000 0.500000 0.500000
35 no 3.68 Novice Beginner 1 0.666667 0.666667 0.666667
33 no 3.55 Novice Novice 1 0.750000 0.750000 0.750000
>>>
# Example 3: Calculate the mean of the column 'gpa' for all non-null
# data pairs with dependent variable as all other columns,
# which are grouped by 'masters' and 'gpa' in a Contracting
# window, partitioned over 'masters' and order by 'masters'
# with nulls listed last.
# Perform group_by() operation on teradataml DataFrame.
>>> group_by_df = admissions_train.groupby(["masters", "gpa"])
# Create a Contracting window on teradataml DataFrameGroupBy object.
>>> window = group_by_df.window(partition_columns="masters",
... order_columns="masters",
... nulls_first=False,
... window_start_point=-5,
... window_end_point=None)
# Execute regr_avgx() on the Contracting window.
>>> window.regr_avgx(admissions_train.gpa)
masters gpa gpa_regr_avgx
0 yes 3.79 3.632500
1 yes 3.50 3.529000
2 yes 3.96 3.554545
3 yes 4.00 3.579167
4 yes 3.90 3.464286
5 yes 2.33 3.464000
6 no 3.52 3.265000
7 no 3.83 3.320000
8 no 3.82 3.405000
9 no 3.55 3.438889
>>>