Teradata Package for Python Function Reference - 17.00 - regr_syy - 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_syy = regr_syy(expression)
DESCRIPTION:
    Function returns the sum of the squares of the dependent variable
    expression for all non-null data pairs of dependent and an independent
    variable arguments over the specified window. When function is executed,
    "expression" is treated as an independent variable and dependent
    variable is:
        * a ColumnExpression when invoked using a window created on ColumnExpression.
        * all columns of the teradataml DataFrame which are valid for this function,
          when executed on a window created on teradataml DataFrame.
    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 sum of the squares of column 'gpa' for all
    #            non-null data pairs with dependent variable as 'admitted',
    #            in a Rolling window, partitioned over 'programming'.
    # Create a Rolling window on 'gpa'.
    >>> window = admissions_train.admitted.window(partition_columns="programming",
    ...                                           window_start_point=-2,
    ...                                           window_end_point=0)
    >>>
    # Execute regr_syy() 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_syy() along with count() window aggregate operations.
    >>> df = admissions_train.assign(regr_syy_admitted_gpa=window.regr_syy(admissions_train.gpa),
    ...                              count_gpa=window.count())
    >>> df
       masters   gpa     stats programming  admitted  count_gpa  regr_syy_admitted_gpa
    id
    15     yes  4.00  Advanced    Advanced         1          3               0.000000
    16      no  3.70  Advanced    Advanced         1          3               0.000000
    11      no  3.13  Advanced    Advanced         1          3               0.000000
    9       no  3.82  Advanced    Advanced         1          3               0.000000
    19     yes  1.98  Advanced    Advanced         0          3               0.666667
    27     yes  3.96  Advanced    Advanced         0          3               0.666667
    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 sum of the squares for all columns and
    #            'gpa' with independent variable as 'gpa',
    #            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_syy() on the Expanding window.
    >>> df = window.regr_syy(admissions_train.gpa)
    >>> df
       masters   gpa     stats programming  admitted  admitted_regr_syy  gpa_regr_syy  id_regr_syy
    id
    38     yes  2.65  Advanced    Beginner         1           0.666667  9.800000e-01     2.000000
    32     yes  3.46  Advanced    Beginner         0           0.800000  1.106480e+00    47.200000
    31     yes  3.50  Advanced    Beginner         1           1.333333  1.107333e+00    73.333333
    30     yes  3.79  Advanced      Novice         0           1.428571  1.166771e+00   100.857143
    27     yes  3.96  Advanced    Advanced         0           1.555556  1.436400e+00   176.000000
    26     yes  3.57  Advanced    Advanced         1           2.100000  1.443160e+00   224.400000
    37      no  3.52    Novice      Novice         1           0.000000 -4.891920e-16     0.000000
    36      no  3.00  Advanced      Novice         0           0.500000  1.352000e-01     0.500000
    35      no  3.68    Novice    Beginner         1           0.666667  2.528000e-01     2.000000
    33      no  3.55    Novice      Novice         1           0.750000  2.696750e-01     8.750000
    >>>
 
    # Example 3: Calculate the sum of the squares between all columns and independent
    #            variable 'gpa', 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_syy() on the Contracting window.
    >>> window.regr_syy(admissions_train.gpa)
      masters   gpa  gpa_regr_syy
    0      no  3.71      1.044400
    1      no  3.87      1.061200
    2      no  3.93      1.094018
    3      no  3.60      1.104567
    4      no  3.52      1.133143
    5      no  3.68      1.133333
    6     yes  3.76      3.115400
    7     yes  2.33      3.220400
    8     yes  3.81      3.725800
    9     yes  1.98      4.167600
    >>>