Teradata Package for Python Function Reference - 17.00 - regr_avgx - Teradata Package for Python

Teradata® Package for Python Function Reference

Product
Teradata Package for Python
Release Number
17.00
Release Date
November 2021
Content Type
Programming Reference
Publication ID
B700-4008-070K
Language
English (United States)
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
    >>>