| |
- index(string_column_expression1, string_column_expression2)
- DESCRIPTION:
Function returns the position in string1 (string_column_expression1)
where string2 (string_column_expression2) starts.
The following rules apply to the value that INDEX returns:
1. If string2 is not found in string_expression_1, then the result is zero.
2. If string2 is null, then the result is null.
3. If the arguments are character types, INDEX returns a logical character position,
not a byte position, except when the server character set of the arguments is KANJI1
and the session client character set is KanjiEBCDIC.
PARAMETERS:
string_column_expression1:
Required Argument.
Specifies a ColumnExpression of a string column or a string literal
to be searched.
Format of a ColumnExpression of a string column: '<dataframe>.<dataframe_column>.expression'.
Supported column types are:
1. Character
2. Byte - If argument is of type BYTE, then string_column_expression2 must be of type BYTE.
3. Numeric - If argument is numeric, then it is converted implicitly to CHARACTER type.
string_column_expression2:
Required Argument.
Specifies a ColumnExpression of a string column or a string literal
which is used as a substring to be searched for its position within the
full string in "string_column_expression1"
Format of a ColumnExpression of a string column: '<dataframe>.<dataframe_column>.expression'.
Supported column types are:
1. Character
2. Byte - If argument is of type BYTE, then string_column_expression1 must be of type BYTE.
3. Numeric - If argument is numeric, then it is converted implicitly to CHARACTER type.
NOTE:
Function accepts positional arguments only.
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 returns the start position of "ce" in "stats" column.
# Import func from sqlalchemy to execute index function.
>>> from sqlalchemy import func
# Create a sqlalchemy Function object.
>>> index_func_ = func.index(admissions_train.stats.expression, "ce")
>>>
# Pass the Function object as input to DataFrame.assign().
>>> df = admissions_train.assign(index_ce_stats_=index_func_)
>>> print(df)
masters gpa stats programming admitted index_ce_stats_
id
15 yes 4.00 Advanced Advanced 1 6
7 yes 2.33 Novice Novice 1 5
22 yes 3.46 Novice Beginner 0 5
17 no 3.83 Advanced Advanced 1 6
13 no 4.00 Advanced Novice 1 6
38 yes 2.65 Advanced Beginner 1 6
26 yes 3.57 Advanced Advanced 1 6
5 no 3.44 Novice Novice 0 5
34 yes 3.85 Advanced Beginner 0 6
40 yes 3.95 Novice Beginner 0 5
>>>
|