otp.Operation.str.ilike#
- ilike(pattern)#
Check if the value is case insensitive matched with SQL-like
pattern
.- Parameters
pattern (str or symbol parameter (
_SymbolParamColumn
)) –Pattern to match the value with. The pattern can contain usual text characters and two special ones:
%
represents zero or more characters_
represents a single character
Use backslash
\
character to escape these special characters.- Returns
True
if the match was successful,False
otherwise. Note that boolean Operation is converted to float if added as a column.- Return type
Examples
Use
%
character to specify any number of characters:data = otp.Ticks(X=['a', 'ab', 'Ab', 'b_']) data['LIKE'] = data['X'].str.ilike('a%') df = otp.run(data) print(df)
Time X LIKE 0 2003-12-01 00:00:00.000 a 1.0 1 2003-12-01 00:00:00.001 ab 1.0 2 2003-12-01 00:00:00.002 Ab 1.0 3 2003-12-01 00:00:00.003 b_ 0.0
Use
_
special character to specify a single character:data = otp.Ticks(X=['a', 'ab', 'Ab', 'b_']) data['LIKE'] = data['X'].str.ilike('a_') df = otp.run(data) print(df)
Time X LIKE 0 2003-12-01 00:00:00.000 a 0.0 1 2003-12-01 00:00:00.001 ab 1.0 2 2003-12-01 00:00:00.002 Ab 1.0 3 2003-12-01 00:00:00.003 b_ 0.0
Use backslash
\
character to escape special characters:data = otp.Ticks(X=['a', 'ab', 'bb', 'b_']) data['LIKE'] = data['X'].str.ilike(r'b\_') df = otp.run(data) print(df)
Time X LIKE 0 2003-12-01 00:00:00.000 a 0.0 1 2003-12-01 00:00:00.001 ab 0.0 2 2003-12-01 00:00:00.002 bb 0.0 3 2003-12-01 00:00:00.003 b_ 1.0
This function can be used to filter out ticks:
data = otp.Ticks(X=['a', 'ab', 'Ab', 'b_']) data, _ = data[data['X'].str.ilike('a%')] df = otp.run(data) print(df)
Time X 0 2003-12-01 00:00:00.000 a 1 2003-12-01 00:00:00.001 ab 2 2003-12-01 00:00:00.002 Ab
pattern
can only be a constant expression, like string or symbol parameter:data = otp.Ticks(X=['a', 'ab', 'A', 'b_']) data['LIKE'] = data['X'].str.ilike(data.Symbol['PATTERN', str]) df = otp.run(data, symbols=otp.Tick(SYMBOL_NAME='COMMON::AAPL', PATTERN='_'))['COMMON::AAPL'] print(df)
Time X LIKE 0 2003-12-01 00:00:00.000 a 1.0 1 2003-12-01 00:00:00.001 ab 0.0 2 2003-12-01 00:00:00.002 A 1.0 3 2003-12-01 00:00:00.003 b_ 0.0