Teradata Package for Python Function Reference | 17.10 - sum - 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.sum = sum(distinct=False)
DESCRIPTION:
    Function returns the sum of values in a teradataml
    DataFrame or ColumnExpression over the specified window.
 
PARAMETERS:
    distinct:
        Optional Argument.
        Specifies a flag that decides whether to consider duplicate values in
        a column or not.
        Default Values: False
        Types: bool
 
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
    >>>
 
    # Example 1: Calculate the sum of values for the 'gpa' column
    #            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 sum() on the Rolling window and attach it to the teradataml DataFrame.
    # Note: DataFrame.assign() allows combining multiple window aggregate operations
    #       in one single call. In this example, we are executing sum() along with
    #       max() window aggregate operations.
    >>> df = admissions_train.assign(sum_gpa=window.sum(), max_gpa=window.max())
    >>> df
       masters   gpa     stats programming  admitted  max_gpa  sum_gpa
    id
    15     yes  4.00  Advanced    Advanced         1     4.00    11.41
    16      no  3.70  Advanced    Advanced         1     4.00    11.66
    11      no  3.13  Advanced    Advanced         1     3.96    10.79
    9       no  3.82  Advanced    Advanced         1     3.82    10.65
    19     yes  1.98  Advanced    Advanced         0     3.82     9.30
    27     yes  3.96  Advanced    Advanced         0     3.96     9.44
    1      yes  3.95  Beginner    Beginner         0     3.95     3.95
    34     yes  3.85  Advanced    Beginner         0     3.95     7.80
    32     yes  3.46  Advanced    Beginner         0     3.95    11.26
    40     yes  3.95    Novice    Beginner         0     3.95    11.26
    >>>
 
    # Example 2: Calculate the sum of values for all the valid columns in
    #            teradataml DataFrame, in an Expanding window, partitioned
    #            over 'programming', and order by 'id'.
    # Create an Expanding window on teradataml DataFrame.
    >>> window = admissions_train.window(partition_columns="masters",
    ...                                  order_columns="id",
    ...                                  window_start_point=None,
    ...                                  window_end_point=0)
    >>>
    # Execute sum() on the Expanding window.
    >>> df = window.sum()
    >>> df
       masters   gpa     stats programming  admitted  admitted_sum  gpa_sum  id_sum
    id
    4      yes  3.50  Beginner      Novice         1             1    11.21       7
    7      yes  2.33    Novice      Novice         1             3    17.04      20
    14     yes  3.45  Advanced    Advanced         0             3    20.49      34
    15     yes  4.00  Advanced    Advanced         1             4    24.49      49
    19     yes  1.98  Advanced    Advanced         0             5    30.28      86
    20     yes  3.90  Advanced    Advanced         1             6    34.18     106
    3       no  3.70    Novice    Beginner         1             1     3.70       3
    5       no  3.44    Novice      Novice         0             1     7.14       8
    8       no  3.60  Beginner    Advanced         1             2    10.74      16
    9       no  3.82  Advanced    Advanced         1             3    14.56      25
    >>>
 
    # Example 3: Calculate the sum of values for all the valid columns in
    #            teradataml DataFrame, which are grouped by 'masters' and
    #            'gpa' in a Contracting window, partitioned over 'masters'.
    # 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",
    ...                             window_start_point=-5,
    ...                             window_end_point=None)
    # Execute sum() on the Contracting window.
    >>> window.sum()
      masters   gpa  gpa_sum
    0     yes  3.79    29.06
    1     yes  3.50    35.29
    2     yes  3.96    39.10
    3     yes  4.00    42.95
    4     yes  3.90    48.50
    5     yes  2.33    51.96
    6      no  3.52    19.59
    7      no  3.83    23.24
    8      no  3.82    27.24
    9      no  3.55    30.95
    >>>