Class: Polars::StringNameSpace
- Inherits:
-
Object
- Object
- Polars::StringNameSpace
- Defined in:
- lib/polars/string_name_space.rb
Overview
Series.str namespace.
Instance Method Summary collapse
-
#concat(delimiter = "-", ignore_nulls: true) ⇒ Series
Vertically concat the values in the Series to a single string value.
-
#contains(pattern, literal: false) ⇒ Series
Check if strings in Series contain a substring that matches a regex.
-
#count_match(pattern) ⇒ Series
Count all successive non-overlapping regex matches.
-
#decode(encoding, strict: false) ⇒ Series
Decode a value using the provided encoding.
-
#encode(encoding) ⇒ Series
Encode a value using the provided encoding.
-
#ends_with(sub) ⇒ Series
Check if string values end with a substring.
-
#extract(pattern, group_index: 1) ⇒ Series
Extract the target capture group from provided patterns.
-
#extract_all(pattern) ⇒ Series
Extracts all matches for the given regex pattern.
-
#json_path_match(json_path) ⇒ Series
Extract the first match of json string with provided JSONPath expression.
-
#lengths ⇒ Series
Get length of the string values in the Series (as number of bytes).
-
#ljust(width, fillchar = " ") ⇒ Series
Return the string left justified in a string of length
width
. -
#lstrip(matches = nil) ⇒ Series
Remove leading whitespace.
-
#n_chars ⇒ Series
Get length of the string values in the Series (as number of chars).
-
#replace(pattern, value, literal: false) ⇒ Series
Replace first matching regex/literal substring with a new string value.
-
#replace_all(pattern, value, literal: false) ⇒ Series
Replace all matching regex/literal substrings with a new string value.
-
#rjust(width, fillchar = " ") ⇒ Series
Return the string right justified in a string of length
width
. -
#rstrip(matches = nil) ⇒ Series
Remove trailing whitespace.
-
#slice(offset, length = nil) ⇒ Series
Create subslices of the string values of a Utf8 Series.
-
#split(by, inclusive: false) ⇒ Series
Split the string by a substring.
-
#split_exact(by, n, inclusive: false) ⇒ Series
Split the string by a substring using
n
splits. -
#splitn(by, n) ⇒ Series
Split the string by a substring, restricted to returning at most
n
items. -
#starts_with(sub) ⇒ Series
Check if string values start with a substring.
-
#strip(matches = nil) ⇒ Series
Remove leading and trailing whitespace.
-
#strptime(datatype, fmt = nil, strict: true, exact: true, cache: true) ⇒ Series
Parse a Series of dtype Utf8 to a Date/Datetime Series.
-
#to_date(format = nil, strict: true, exact: true, cache: true) ⇒ Series
Convert a Utf8 column into a Date column.
-
#to_datetime(format = nil, time_unit: nil, time_zone: nil, strict: true, exact: true, cache: true, use_earliest: nil) ⇒ Series
Convert a Utf8 column into a Datetime column.
-
#to_lowercase ⇒ Series
Modify the strings to their lowercase equivalent.
-
#to_time(format = nil, strict: true, cache: true) ⇒ Series
Convert a Utf8 column into a Time column.
-
#to_uppercase ⇒ Series
Modify the strings to their uppercase equivalent.
-
#zfill(length) ⇒ Series
Fills the string with zeroes.
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Polars::ExprDispatch
Instance Method Details
#concat(delimiter = "-", ignore_nulls: true) ⇒ Series
Vertically concat the values in the Series to a single string value.
252 253 254 |
# File 'lib/polars/string_name_space.rb', line 252 def concat(delimiter = "-", ignore_nulls: true) super end |
#contains(pattern, literal: false) ⇒ Series
Check if strings in Series contain a substring that matches a regex.
289 290 291 |
# File 'lib/polars/string_name_space.rb', line 289 def contains(pattern, literal: false) super end |
#count_match(pattern) ⇒ Series
Count all successive non-overlapping regex matches.
487 488 489 |
# File 'lib/polars/string_name_space.rb', line 487 def count_match(pattern) super end |
#decode(encoding, strict: false) ⇒ Series
Decode a value using the provided encoding.
360 361 362 |
# File 'lib/polars/string_name_space.rb', line 360 def decode(encoding, strict: false) super end |
#encode(encoding) ⇒ Series
Encode a value using the provided encoding.
382 383 384 |
# File 'lib/polars/string_name_space.rb', line 382 def encode(encoding) super end |
#ends_with(sub) ⇒ Series
Check if string values end with a substring.
311 312 313 |
# File 'lib/polars/string_name_space.rb', line 311 def ends_with(sub) super end |
#extract(pattern, group_index: 1) ⇒ Series
Extract the target capture group from provided patterns.
442 443 444 |
# File 'lib/polars/string_name_space.rb', line 442 def extract(pattern, group_index: 1) super end |
#extract_all(pattern) ⇒ Series
Extracts all matches for the given regex pattern.
Extract each successive non-overlapping regex match in an individual string as an array
466 467 468 |
# File 'lib/polars/string_name_space.rb', line 466 def extract_all(pattern) super end |
#json_path_match(json_path) ⇒ Series
Extract the first match of json string with provided JSONPath expression.
Throw errors if encounter invalid json strings. All return value will be casted to Utf8 regardless of the original value.
Documentation on JSONPath standard can be found here.
414 415 416 |
# File 'lib/polars/string_name_space.rb', line 414 def json_path_match(json_path) super end |
#lengths ⇒ Series
The returned lengths are equal to the number of bytes in the UTF8 string. If you
need the length in terms of the number of characters, use n_chars
instead.
Get length of the string values in the Series (as number of bytes).
200 201 202 |
# File 'lib/polars/string_name_space.rb', line 200 def lengths super end |
#ljust(width, fillchar = " ") ⇒ Series
Return the string left justified in a string of length width
.
Padding is done using the specified fillchar
. The original string is
returned if width
is less than or equal to s.length
.
725 726 727 |
# File 'lib/polars/string_name_space.rb', line 725 def ljust(width, fillchar = " ") super end |
#lstrip(matches = nil) ⇒ Series
Remove leading whitespace.
670 671 672 |
# File 'lib/polars/string_name_space.rb', line 670 def lstrip(matches = nil) super end |
#n_chars ⇒ Series
If you know that you are working with ASCII text, lengths
will be
equivalent, and faster (returns length in terms of the number of bytes).
Get length of the string values in the Series (as number of chars).
224 225 226 |
# File 'lib/polars/string_name_space.rb', line 224 def n_chars super end |
#replace(pattern, value, literal: false) ⇒ Series
Replace first matching regex/literal substring with a new string value.
625 626 627 |
# File 'lib/polars/string_name_space.rb', line 625 def replace(pattern, value, literal: false) super end |
#replace_all(pattern, value, literal: false) ⇒ Series
Replace all matching regex/literal substrings with a new string value.
650 651 652 |
# File 'lib/polars/string_name_space.rb', line 650 def replace_all(pattern, value, literal: false) super end |
#rjust(width, fillchar = " ") ⇒ Series
Return the string right justified in a string of length width
.
Padding is done using the specified fillchar
. The original string is
returned if width
is less than or equal to s.length
.
753 754 755 |
# File 'lib/polars/string_name_space.rb', line 753 def rjust(width, fillchar = " ") super end |
#rstrip(matches = nil) ⇒ Series
Remove trailing whitespace.
680 681 682 |
# File 'lib/polars/string_name_space.rb', line 680 def rstrip(matches = nil) super end |
#slice(offset, length = nil) ⇒ Series
Create subslices of the string values of a Utf8 Series.
805 806 807 808 |
# File 'lib/polars/string_name_space.rb', line 805 def slice(offset, length = nil) s = Utils.wrap_s(_s) s.to_frame.select(Polars.col(s.name).str.slice(offset, length)).to_series end |
#split(by, inclusive: false) ⇒ Series
Split the string by a substring.
499 500 501 |
# File 'lib/polars/string_name_space.rb', line 499 def split(by, inclusive: false) super end |
#split_exact(by, n, inclusive: false) ⇒ Series
Split the string by a substring using n
splits.
Results in a struct of n+1
fields.
If it cannot make n
splits, the remaining field elements will be null.
550 551 552 |
# File 'lib/polars/string_name_space.rb', line 550 def split_exact(by, n, inclusive: false) super end |
#splitn(by, n) ⇒ Series
Split the string by a substring, restricted to returning at most n
items.
If the number of possible splits is less than n-1
, the remaining field
elements will be null. If the number of possible splits is n-1
or greater,
the last (nth) substring will contain the remainder of the string.
599 600 601 602 |
# File 'lib/polars/string_name_space.rb', line 599 def splitn(by, n) s = Utils.wrap_s(_s) s.to_frame.select(Polars.col(s.name).str.splitn(by, n)).to_series end |
#starts_with(sub) ⇒ Series
Check if string values start with a substring.
333 334 335 |
# File 'lib/polars/string_name_space.rb', line 333 def starts_with(sub) super end |
#strip(matches = nil) ⇒ Series
Remove leading and trailing whitespace.
660 661 662 |
# File 'lib/polars/string_name_space.rb', line 660 def strip(matches = nil) super end |
#strptime(datatype, fmt = nil, strict: true, exact: true, cache: true) ⇒ Series
Parse a Series of dtype Utf8 to a Date/Datetime Series.
176 177 178 |
# File 'lib/polars/string_name_space.rb', line 176 def strptime(datatype, fmt = nil, strict: true, exact: true, cache: true) super end |
#to_date(format = nil, strict: true, exact: true, cache: true) ⇒ Series
Convert a Utf8 column into a Date column.
41 42 43 |
# File 'lib/polars/string_name_space.rb', line 41 def to_date(format = nil, strict: true, exact: true, cache: true) super end |
#to_datetime(format = nil, time_unit: nil, time_zone: nil, strict: true, exact: true, cache: true, use_earliest: nil) ⇒ Series
Convert a Utf8 column into a Datetime column.
79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/polars/string_name_space.rb', line 79 def to_datetime( format = nil, time_unit: nil, time_zone: nil, strict: true, exact: true, cache: true, use_earliest: nil ) super end |
#to_lowercase ⇒ Series
Modify the strings to their lowercase equivalent.
760 761 762 |
# File 'lib/polars/string_name_space.rb', line 760 def to_lowercase super end |
#to_time(format = nil, strict: true, cache: true) ⇒ Series
Convert a Utf8 column into a Time column.
116 117 118 |
# File 'lib/polars/string_name_space.rb', line 116 def to_time(format = nil, strict: true, cache: true) super end |
#to_uppercase ⇒ Series
Modify the strings to their uppercase equivalent.
767 768 769 |
# File 'lib/polars/string_name_space.rb', line 767 def to_uppercase super end |
#zfill(length) ⇒ Series
Fills the string with zeroes.
Return a copy of the string left filled with ASCII '0' digits to make a string of length width.
A leading sign prefix ('+'/'-') is handled by inserting the padding after the
sign character rather than before. The original string is returned if width is
less than or equal to s.length
.
697 698 699 |
# File 'lib/polars/string_name_space.rb', line 697 def zfill(length) super end |