Class: Polars::StringNameSpace
- Inherits:
-
Object
- Object
- Polars::StringNameSpace
- Defined in:
- lib/polars/string_name_space.rb
Overview
Series.str namespace.
Instance Method Summary collapse
-
#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.
-
#join(delimiter = "-", ignore_nulls: true) ⇒ Series
(also: #concat)
Vertically concat the values in the Series to a single string value.
-
#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, ambiguous: "raise") ⇒ 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
#contains(pattern, literal: false) ⇒ Series
Check if strings in Series contain a substring that matches a regex.
290 291 292 |
# File 'lib/polars/string_name_space.rb', line 290 def contains(pattern, literal: false) super end |
#count_match(pattern) ⇒ Series
Count all successive non-overlapping regex matches.
488 489 490 |
# File 'lib/polars/string_name_space.rb', line 488 def count_match(pattern) super end |
#decode(encoding, strict: false) ⇒ Series
Decode a value using the provided encoding.
361 362 363 |
# File 'lib/polars/string_name_space.rb', line 361 def decode(encoding, strict: false) super end |
#encode(encoding) ⇒ Series
Encode a value using the provided encoding.
383 384 385 |
# File 'lib/polars/string_name_space.rb', line 383 def encode(encoding) super end |
#ends_with(sub) ⇒ Series
Check if string values end with a substring.
312 313 314 |
# File 'lib/polars/string_name_space.rb', line 312 def ends_with(sub) super end |
#extract(pattern, group_index: 1) ⇒ Series
Extract the target capture group from provided patterns.
443 444 445 |
# File 'lib/polars/string_name_space.rb', line 443 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
467 468 469 |
# File 'lib/polars/string_name_space.rb', line 467 def extract_all(pattern) super end |
#join(delimiter = "-", ignore_nulls: true) ⇒ Series Also known as: concat
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 join(delimiter = "-", ignore_nulls: true) 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.
415 416 417 |
# File 'lib/polars/string_name_space.rb', line 415 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
.
726 727 728 |
# File 'lib/polars/string_name_space.rb', line 726 def ljust(width, fillchar = " ") super end |
#lstrip(matches = nil) ⇒ Series
Remove leading whitespace.
671 672 673 |
# File 'lib/polars/string_name_space.rb', line 671 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.
626 627 628 |
# File 'lib/polars/string_name_space.rb', line 626 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.
651 652 653 |
# File 'lib/polars/string_name_space.rb', line 651 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
.
754 755 756 |
# File 'lib/polars/string_name_space.rb', line 754 def rjust(width, fillchar = " ") super end |
#rstrip(matches = nil) ⇒ Series
Remove trailing whitespace.
681 682 683 |
# File 'lib/polars/string_name_space.rb', line 681 def rstrip(matches = nil) super end |
#slice(offset, length = nil) ⇒ Series
Create subslices of the string values of a Utf8 Series.
806 807 808 809 |
# File 'lib/polars/string_name_space.rb', line 806 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.
500 501 502 |
# File 'lib/polars/string_name_space.rb', line 500 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.
551 552 553 |
# File 'lib/polars/string_name_space.rb', line 551 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.
600 601 602 603 |
# File 'lib/polars/string_name_space.rb', line 600 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.
334 335 336 |
# File 'lib/polars/string_name_space.rb', line 334 def starts_with(sub) super end |
#strip(matches = nil) ⇒ Series
Remove leading and trailing whitespace.
661 662 663 |
# File 'lib/polars/string_name_space.rb', line 661 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, ambiguous: "raise") ⇒ 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, ambiguous: "raise" ) super end |
#to_lowercase ⇒ Series
Modify the strings to their lowercase equivalent.
761 762 763 |
# File 'lib/polars/string_name_space.rb', line 761 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.
768 769 770 |
# File 'lib/polars/string_name_space.rb', line 768 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
.
698 699 700 |
# File 'lib/polars/string_name_space.rb', line 698 def zfill(length) super end |