polars-df 0.15.0 → 0.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +274 -0
- data/Cargo.lock +1465 -867
- data/Cargo.toml +3 -0
- data/LICENSE.txt +2 -2
- data/README.md +87 -37
- data/ext/polars/Cargo.toml +47 -16
- data/ext/polars/src/c_api/allocator.rs +7 -0
- data/ext/polars/src/c_api/mod.rs +1 -0
- data/ext/polars/src/catalog/mod.rs +1 -0
- data/ext/polars/src/catalog/unity.rs +470 -0
- data/ext/polars/src/conversion/any_value.rs +99 -84
- data/ext/polars/src/conversion/categorical.rs +30 -0
- data/ext/polars/src/conversion/chunked_array.rs +71 -62
- data/ext/polars/src/conversion/datetime.rs +63 -0
- data/ext/polars/src/conversion/mod.rs +796 -312
- data/ext/polars/src/dataframe/construction.rs +6 -18
- data/ext/polars/src/dataframe/export.rs +30 -39
- data/ext/polars/src/dataframe/general.rs +294 -362
- data/ext/polars/src/dataframe/io.rs +33 -150
- data/ext/polars/src/dataframe/map.rs +175 -0
- data/ext/polars/src/dataframe/mod.rs +37 -5
- data/ext/polars/src/dataframe/serde.rs +23 -8
- data/ext/polars/src/error.rs +44 -7
- data/ext/polars/src/exceptions.rs +21 -8
- data/ext/polars/src/expr/array.rs +86 -22
- data/ext/polars/src/expr/binary.rs +50 -1
- data/ext/polars/src/expr/bitwise.rs +39 -0
- data/ext/polars/src/expr/categorical.rs +20 -0
- data/ext/polars/src/expr/datatype.rs +51 -0
- data/ext/polars/src/expr/datetime.rs +99 -41
- data/ext/polars/src/expr/extension.rs +12 -0
- data/ext/polars/src/expr/general.rs +252 -128
- data/ext/polars/src/expr/list.rs +56 -60
- data/ext/polars/src/expr/meta.rs +30 -35
- data/ext/polars/src/expr/mod.rs +28 -6
- data/ext/polars/src/expr/name.rs +29 -14
- data/ext/polars/src/expr/rolling.rs +111 -3
- data/ext/polars/src/expr/selector.rs +219 -0
- data/ext/polars/src/expr/serde.rs +28 -0
- data/ext/polars/src/expr/string.rs +118 -20
- data/ext/polars/src/expr/struct.rs +14 -1
- data/ext/polars/src/file.rs +194 -86
- data/ext/polars/src/functions/aggregation.rs +13 -12
- data/ext/polars/src/functions/business.rs +2 -3
- data/ext/polars/src/functions/eager.rs +3 -2
- data/ext/polars/src/functions/io.rs +90 -18
- data/ext/polars/src/functions/lazy.rs +267 -118
- data/ext/polars/src/functions/meta.rs +8 -7
- data/ext/polars/src/functions/misc.rs +1 -1
- data/ext/polars/src/functions/mod.rs +2 -1
- data/ext/polars/src/functions/range.rs +88 -31
- data/ext/polars/src/functions/strings.rs +6 -0
- data/ext/polars/src/functions/utils.rs +8 -0
- data/ext/polars/src/interop/arrow/mod.rs +52 -1
- data/ext/polars/src/interop/arrow/{to_ruby.rs → to_rb.rs} +37 -7
- data/ext/polars/src/interop/arrow/to_rust.rs +43 -0
- data/ext/polars/src/interop/numo/to_numo_df.rs +1 -1
- data/ext/polars/src/interop/numo/to_numo_series.rs +72 -50
- data/ext/polars/src/io/cloud_options.rs +107 -0
- data/ext/polars/src/io/mod.rs +4 -0
- data/ext/polars/src/io/scan_options.rs +113 -0
- data/ext/polars/src/io/sink_options.rs +46 -0
- data/ext/polars/src/io/sink_output.rs +21 -0
- data/ext/polars/src/lazyframe/exitable.rs +39 -0
- data/ext/polars/src/lazyframe/general.rs +846 -368
- data/ext/polars/src/lazyframe/mod.rs +58 -5
- data/ext/polars/src/lazyframe/optflags.rs +59 -0
- data/ext/polars/src/lazyframe/serde.rs +36 -4
- data/ext/polars/src/lazyframe/sink.rs +46 -0
- data/ext/polars/src/lazygroupby.rs +38 -9
- data/ext/polars/src/lib.rs +574 -165
- data/ext/polars/src/map/lazy.rs +44 -74
- data/ext/polars/src/map/mod.rs +18 -254
- data/ext/polars/src/map/series.rs +241 -1087
- data/ext/polars/src/on_startup.rs +192 -9
- data/ext/polars/src/prelude.rs +1 -0
- data/ext/polars/src/rb_modules.rs +10 -57
- data/ext/polars/src/ruby/exceptions.rs +26 -0
- data/ext/polars/src/ruby/gvl.rs +104 -0
- data/ext/polars/src/ruby/lazy.rs +46 -0
- data/ext/polars/src/ruby/mod.rs +11 -0
- data/ext/polars/src/ruby/numo.rs +52 -0
- data/ext/polars/src/ruby/plan_callback.rs +198 -0
- data/ext/polars/src/ruby/rb_modules.rs +16 -0
- data/ext/polars/src/ruby/ruby_convert_registry.rs +51 -0
- data/ext/polars/src/ruby/ruby_function.rs +11 -0
- data/ext/polars/src/ruby/ruby_udf.rs +164 -0
- data/ext/polars/src/ruby/thread.rs +65 -0
- data/ext/polars/src/ruby/utils.rs +39 -0
- data/ext/polars/src/series/aggregation.rs +116 -91
- data/ext/polars/src/series/arithmetic.rs +16 -22
- data/ext/polars/src/series/comparison.rs +101 -222
- data/ext/polars/src/series/construction.rs +80 -70
- data/ext/polars/src/series/export.rs +98 -56
- data/ext/polars/src/series/general.rs +323 -440
- data/ext/polars/src/series/import.rs +22 -5
- data/ext/polars/src/series/map.rs +103 -0
- data/ext/polars/src/series/mod.rs +57 -15
- data/ext/polars/src/series/scatter.rs +139 -82
- data/ext/polars/src/sql.rs +16 -9
- data/ext/polars/src/testing/frame.rs +31 -0
- data/ext/polars/src/testing/mod.rs +5 -0
- data/ext/polars/src/testing/series.rs +31 -0
- data/ext/polars/src/timeout.rs +105 -0
- data/ext/polars/src/utils.rs +105 -4
- data/lib/polars/array_expr.rb +500 -22
- data/lib/polars/array_name_space.rb +384 -10
- data/lib/polars/batched_csv_reader.rb +48 -66
- data/lib/polars/binary_expr.rb +217 -0
- data/lib/polars/binary_name_space.rb +155 -1
- data/lib/polars/cat_expr.rb +224 -0
- data/lib/polars/cat_name_space.rb +132 -32
- data/lib/polars/catalog/unity/catalog_info.rb +20 -0
- data/lib/polars/catalog/unity/column_info.rb +31 -0
- data/lib/polars/catalog/unity/namespace_info.rb +21 -0
- data/lib/polars/catalog/unity/table_info.rb +50 -0
- data/lib/polars/catalog.rb +448 -0
- data/lib/polars/collect_batches.rb +22 -0
- data/lib/polars/config.rb +3 -3
- data/lib/polars/convert.rb +201 -36
- data/lib/polars/data_frame.rb +2851 -1017
- data/lib/polars/data_frame_plot.rb +173 -0
- data/lib/polars/data_type_expr.rb +52 -0
- data/lib/polars/data_type_group.rb +6 -0
- data/lib/polars/data_types.rb +118 -18
- data/lib/polars/date_time_expr.rb +426 -84
- data/lib/polars/date_time_name_space.rb +384 -111
- data/lib/polars/dynamic_group_by.rb +102 -10
- data/lib/polars/exceptions.rb +50 -5
- data/lib/polars/expr.rb +2159 -915
- data/lib/polars/extension_expr.rb +39 -0
- data/lib/polars/extension_name_space.rb +39 -0
- data/lib/polars/functions/aggregation/horizontal.rb +11 -6
- data/lib/polars/functions/aggregation/vertical.rb +2 -3
- data/lib/polars/functions/as_datatype.rb +290 -8
- data/lib/polars/functions/business.rb +95 -0
- data/lib/polars/functions/col.rb +6 -5
- data/lib/polars/functions/datatype.rb +62 -0
- data/lib/polars/functions/eager.rb +426 -24
- data/lib/polars/functions/escape_regex.rb +21 -0
- data/lib/polars/functions/lazy.rb +813 -195
- data/lib/polars/functions/lit.rb +21 -10
- data/lib/polars/functions/range/int_range.rb +74 -2
- data/lib/polars/functions/range/linear_space.rb +195 -0
- data/lib/polars/functions/range/time_range.rb +1 -1
- data/lib/polars/functions/repeat.rb +7 -12
- data/lib/polars/functions/whenthen.rb +2 -2
- data/lib/polars/group_by.rb +188 -58
- data/lib/polars/iceberg_dataset.rb +108 -0
- data/lib/polars/in_process_query.rb +37 -0
- data/lib/polars/io/cloud.rb +18 -0
- data/lib/polars/io/csv.rb +336 -128
- data/lib/polars/io/database.rb +19 -4
- data/lib/polars/io/delta.rb +134 -0
- data/lib/polars/io/iceberg.rb +34 -0
- data/lib/polars/io/ipc.rb +63 -63
- data/lib/polars/io/json.rb +16 -0
- data/lib/polars/io/lines.rb +172 -0
- data/lib/polars/io/ndjson.rb +176 -20
- data/lib/polars/io/parquet.rb +173 -95
- data/lib/polars/io/scan_options.rb +55 -0
- data/lib/polars/io/sink_options.rb +27 -0
- data/lib/polars/io/utils.rb +17 -0
- data/lib/polars/lazy_frame.rb +3017 -622
- data/lib/polars/lazy_group_by.rb +436 -2
- data/lib/polars/list_expr.rb +551 -59
- data/lib/polars/list_name_space.rb +465 -51
- data/lib/polars/meta_expr.rb +146 -24
- data/lib/polars/name_expr.rb +87 -2
- data/lib/polars/query_opt_flags.rb +264 -0
- data/lib/polars/rolling_group_by.rb +90 -5
- data/lib/polars/scan_cast_options.rb +86 -0
- data/lib/polars/schema.rb +128 -0
- data/lib/polars/selector.rb +245 -0
- data/lib/polars/selectors.rb +1048 -201
- data/lib/polars/series.rb +2522 -774
- data/lib/polars/series_plot.rb +72 -0
- data/lib/polars/slice.rb +1 -1
- data/lib/polars/sql_context.rb +13 -6
- data/lib/polars/string_cache.rb +19 -72
- data/lib/polars/string_expr.rb +561 -107
- data/lib/polars/string_name_space.rb +781 -109
- data/lib/polars/struct_expr.rb +139 -18
- data/lib/polars/struct_name_space.rb +19 -1
- data/lib/polars/testing.rb +24 -273
- data/lib/polars/utils/constants.rb +2 -0
- data/lib/polars/utils/construction/data_frame.rb +410 -0
- data/lib/polars/utils/construction/series.rb +350 -0
- data/lib/polars/utils/construction/utils.rb +9 -0
- data/lib/polars/utils/convert.rb +18 -8
- data/lib/polars/utils/deprecation.rb +11 -0
- data/lib/polars/utils/parse.rb +62 -9
- data/lib/polars/utils/reduce_balanced.rb +43 -0
- data/lib/polars/utils/serde.rb +22 -0
- data/lib/polars/utils/unstable.rb +19 -0
- data/lib/polars/utils/various.rb +86 -1
- data/lib/polars/utils.rb +63 -48
- data/lib/polars/version.rb +1 -1
- data/lib/polars.rb +85 -2
- metadata +80 -28
- data/ext/polars/src/allocator.rs +0 -13
- data/ext/polars/src/batched_csv.rs +0 -138
- data/ext/polars/src/functions/string_cache.rs +0 -25
- data/ext/polars/src/map/dataframe.rs +0 -338
- data/lib/polars/plot.rb +0 -109
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2166cba9f090e8a98fdd28f09ef84bda7130502339522fb724f994581191ffa0
|
|
4
|
+
data.tar.gz: bfdd2939e545302b8a050c706112ae59a297054d048daa4551fd1227589eeba6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 189165a0d01be7174c29ebe5678c9e7bc0cd88e6f0bada0e424967b17b3e56f649645a4bd9de7b409f270390f82be94faf7d12a3bd3ca39de2cc04705382eb78
|
|
7
|
+
data.tar.gz: 1daf4e9a15adb6f09497ac729ef5ff4fb33de85df5b65d79bfca5de976c9f09d371e7564c00814c9cf20dc606b413fb708de3ea1aeb44c337e1aacaebd09a457
|
data/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,277 @@
|
|
|
1
|
+
## 0.26.0 (2026-06-04)
|
|
2
|
+
|
|
3
|
+
- Updated Polars to 0.54.4
|
|
4
|
+
- Added `truncate` method to `Series` and `Expr`
|
|
5
|
+
- Added `gather` method to `DataFrame` and `LazyFrame`
|
|
6
|
+
- Added `is_empty` method to `Expr`
|
|
7
|
+
- Added `get` method to `BinaryNameSpace`
|
|
8
|
+
- Added `maintain_order` option to `implode` and `merge_sorted` methods
|
|
9
|
+
- Added `holidays` option to `add_business_days` and `is_business_day` methods
|
|
10
|
+
- Added `column_naming` option to `pivot` method
|
|
11
|
+
- Added `dtype` option to `reinterpret` method
|
|
12
|
+
- Added `nulls_last` option to `set_sorted` method
|
|
13
|
+
- Added support for non-UTC time zones when converting datetime values to Ruby
|
|
14
|
+
- Made `bigdecimal` optional
|
|
15
|
+
- Fixed `unpivot` method when `on` option is `nil`
|
|
16
|
+
|
|
17
|
+
Changed defaults
|
|
18
|
+
|
|
19
|
+
- Changed default `name` for `read_lines` and `scan_lines` methods from `lines` to `line`
|
|
20
|
+
- Changed default `how` for `align_frames` method from `left` to `full`
|
|
21
|
+
- Changed default `min_samples` for `rolling_sum_by` method from `1` to `0`
|
|
22
|
+
- Changed default `with_replacement` for `sample` method from `true` to `false` for `Expr`
|
|
23
|
+
- Changed default `base` for `entropy` method from `2` to `Math::E` for `Expr`
|
|
24
|
+
- Changed default `normalize` for `entropy` method from `false` to `true` for `Series`
|
|
25
|
+
- Changed default `delimiter` for `join` method from `-` to empty string for `StringExpr` and `StringNameSpace`
|
|
26
|
+
|
|
27
|
+
## 0.25.1 (2026-03-23)
|
|
28
|
+
|
|
29
|
+
- Added `explain_all` method to `Polars`
|
|
30
|
+
- Fixed `storage_options` option for `scan_parquet` and `scan_ipc` methods
|
|
31
|
+
- Fixed `Struct` construction with `nil` values
|
|
32
|
+
- Fixed `read_database` method for JSON columns
|
|
33
|
+
|
|
34
|
+
## 0.25.0 (2026-02-18)
|
|
35
|
+
|
|
36
|
+
- Updated Polars to 0.53.0
|
|
37
|
+
- Added `Float16` type
|
|
38
|
+
- Changed `each` method for `GroupBy` to always return `Array` keys
|
|
39
|
+
|
|
40
|
+
Added methods
|
|
41
|
+
|
|
42
|
+
- Added `self_dtype` method to `Polars`
|
|
43
|
+
- Added `map_batches` method to `Polars`, `Expr`, and `LazyFrame`
|
|
44
|
+
- Added `map_groups` method to `Polars`, `GroupBy`, `DynamicGroupBy`, `RollingGroupBy`, and `LazyGroupBy`
|
|
45
|
+
- Added `map_columns` method to `DataFrame`
|
|
46
|
+
- Added `map_elements` and `pipe` methods to `Expr`
|
|
47
|
+
- Added `pivot` method to `LazyFrame`
|
|
48
|
+
- Added `sql` method to `Series`
|
|
49
|
+
- Added `having` method to `GroupBy`, `DynamicGroupBy`, `RollingGroupBy`, and `LazyGroupBy`
|
|
50
|
+
- Added `mean` method to `ArrayNameSpace`
|
|
51
|
+
- Added `slice`, `head`, and `tail` methods to `BinaryExpr` and `BinaryNameSpace`
|
|
52
|
+
- Added `get` method to `BinaryExpr`
|
|
53
|
+
- Added `as_expression` method to `MetaExpr`
|
|
54
|
+
- Added `map_fields` method to `NameExpr`
|
|
55
|
+
|
|
56
|
+
Added options
|
|
57
|
+
|
|
58
|
+
- Added `compression`, `compression_level`, and `check_extension` options to `write_csv` method
|
|
59
|
+
- Added `empty_as_null` and `keep_nulls` options to `explode` method
|
|
60
|
+
- Added `ignore_nulls` option to `first` and `last` methods
|
|
61
|
+
- Added `leftmost` option to `find_many`, `extract_many`, and `replace_many` methods
|
|
62
|
+
- Added `maintain_order` option to `mode` method
|
|
63
|
+
- Added `strict` option to `concat` and `union` methods for `Polars`
|
|
64
|
+
- Added `null_on_oob` option to `get` method for `Expr`
|
|
65
|
+
- Added `literal` and `strict` options to `split` method for `StringExpr`
|
|
66
|
+
|
|
67
|
+
## 0.24.0 (2026-02-04)
|
|
68
|
+
|
|
69
|
+
- Added support for Ruby 4.0
|
|
70
|
+
- Added support for streaming engine
|
|
71
|
+
- Added support for releasing GVL
|
|
72
|
+
- Added experimental support for background queries
|
|
73
|
+
- Improved exception classes
|
|
74
|
+
- Changed `schema` method to return `Schema` instead of `Hash`
|
|
75
|
+
- Changed `partition_by(as_dict: true)` method to always return `Array` keys
|
|
76
|
+
- Removed support for string and symbol data types (`:i32`, `:f64`, etc.)
|
|
77
|
+
- Dropped support for Ruby < 3.3
|
|
78
|
+
|
|
79
|
+
Changed defaults
|
|
80
|
+
|
|
81
|
+
- Changed default `statistics` for `write_parquet` method from `false` to `true`
|
|
82
|
+
- Changed default `compression` for `sink_ipc` method from `zstd` to `uncompressed`
|
|
83
|
+
- Changed default `raise_if_empty` for `read_csv` method from `false` to `true`
|
|
84
|
+
- Changed default `eager` for `ones` and `zeros` method from `true` to `false`
|
|
85
|
+
- Changed default `ignore_nulls` for `ewm_mean`, `ewm_std`, and `ewm_var` methods from `true` to `false`
|
|
86
|
+
- Changed default `null_on_oob` for `get` method from `true` to `false`
|
|
87
|
+
- Changed default `maintain_order` for `unique` method from `true` to `false` for `DataFrame` and `LazyFrame`
|
|
88
|
+
- Changed default `keep` for `unique` method from `first` to `any` for `DataFrame` and `LazyFrame`
|
|
89
|
+
- Changed default `null_equal` for `equals` method from `false` to `true` for `Series`
|
|
90
|
+
- Changed default `strict` for `decode` method from `false` to `true` for `StringNameSpace`
|
|
91
|
+
|
|
92
|
+
Added methods
|
|
93
|
+
|
|
94
|
+
- Added `plot` method to `Series`
|
|
95
|
+
- Added `concat_arr`, `escape_regex`, `int_ranges`, and `linear_spaces` methods to `Polars`
|
|
96
|
+
- Added `rolling_rank` and `rolling_rank_by` methods to `Series` and `Expr`
|
|
97
|
+
- Added `days_in_month` method to `DateTimeExpr` and `DateTimeNameSpace`
|
|
98
|
+
- Added `agg` and `item` methods to `ListExpr` and `ListNameSpace`
|
|
99
|
+
- Added `agg` and `eval` methods to `ArrayExpr` and `ArrayNameSpace`
|
|
100
|
+
- Added `replace` method to `NameExpr`
|
|
101
|
+
|
|
102
|
+
Added options
|
|
103
|
+
|
|
104
|
+
- Added more options to `read_csv` and `scan_csv` methods
|
|
105
|
+
- Added more options to `read_ndjson` and `scan_ndjson` methods
|
|
106
|
+
- Added more options to `write_csv` method
|
|
107
|
+
- Added more options to `sort` method
|
|
108
|
+
- Added more options to `over` method
|
|
109
|
+
- Added `ambiguous` option to `strptime` method
|
|
110
|
+
|
|
111
|
+
Renamed options
|
|
112
|
+
|
|
113
|
+
- Renamed `reverse` option to `descending`
|
|
114
|
+
- Renamed `sep` option to `separator`
|
|
115
|
+
- Renamed `row_count_name` option to `row_index_name`
|
|
116
|
+
- Renamed `row_count_offset` option to `row_index_offset`
|
|
117
|
+
- Renamed `comment_char` option to `comment_prefix` for `read_csv`, `read_csv_batched`, and `scan_csv` methods
|
|
118
|
+
- Renamed `dtypes` option to `schema_overrides` for `read_csv`, `read_csv_batched`, and `scan_csv` methods
|
|
119
|
+
- Renamed `parse_dates` option to `try_parse_dates` for `read_csv`, `read_csv_batched`, and `scan_csv` methods
|
|
120
|
+
- Renamed `min_periods` option to `min_samples`
|
|
121
|
+
- Renamed `by` option to `group_by` for `group_by_dynamic`, `rolling`, and `upsample` methods
|
|
122
|
+
- Renamed `frac` option to `fraction` for `sample` methods
|
|
123
|
+
- Renamed `drop_nulls` option to `ignore_nulls` for `all` and `any` methods
|
|
124
|
+
- Renamed `join_nulls` option to `nulls_equal` for `join` method
|
|
125
|
+
- Renamed `strict` option to `check_dtypes` for `equals` method
|
|
126
|
+
- Renamed `quote` option to `quote_char` for `write_csv` method
|
|
127
|
+
- Renamed `data_pagesize_limit` option to `data_page_size` for `sink_parquet` method
|
|
128
|
+
- Renamed `unit` option to `time_unit` for `from_epoch` method
|
|
129
|
+
- Renamed `eager_execution` option to `eager` for `SQLContext` constructor
|
|
130
|
+
|
|
131
|
+
Removed methods
|
|
132
|
+
|
|
133
|
+
- Removed `take` and `take_every` methods (use `gather` and `gather_every` instead)
|
|
134
|
+
- Removed `clip_min` and `clip_max` methods (use `clip` instead)
|
|
135
|
+
- Removed `argsort` and `argsort_by` methods (use `arg_sort` and `arg_sort_by` instead)
|
|
136
|
+
- Removed `shift_and_fill` methods (use `shift(fill_value:)` instead)
|
|
137
|
+
- Removed `group`, `groupby`, `groupby_dynamic`, and `groupby_rolling` methods (use `group_by*` instead)
|
|
138
|
+
- Removed `group_by_rolling` methods (use `rolling` instead)
|
|
139
|
+
- Removed `asin`, `asinh`, `acos`, `acosh`, `atan`, and `atanh` methods (use `arc*` instead)
|
|
140
|
+
- Removed `days`, `hours`, `minutes`, `seconds`, `milliseconds`, `microseconds`, and `nanoseconds` methods (use `total_*` instead)
|
|
141
|
+
- Removed `cumsum`, `cumsum_horizontal`, `cumprod`, `cummin`, `cummax`, `cumcount`, and `cumfold` methods (use `cum_*` instead)
|
|
142
|
+
- Removed `with_column` methods (use `with_columns` instead)
|
|
143
|
+
- Removed `where` method (use `filter` instead)
|
|
144
|
+
- Removed `series_equal` and `frame_equal` methods (use `equals` instead)
|
|
145
|
+
- Removed `apply` methods (use `map_elements` or `map_rows` instead)
|
|
146
|
+
- Removed `lengths` methods (use `len` or `len_bytes` instead)
|
|
147
|
+
- Removed `keep_name`, `prefix`, `suffix`, and `map_alias` methods (use `name` methods instead)
|
|
148
|
+
- Removed `ljust` and `rjust` methods (use `pad_end` and `pad_start` instead)
|
|
149
|
+
- Removed `lstrip` and `rstrip` methods (use `strip_chars_start` and `strip_chars_end` instead)
|
|
150
|
+
- Removed `strip` method (use `strip_chars` instead)
|
|
151
|
+
- Removed `n_chars` method (use `len_chars` instead)
|
|
152
|
+
- Removed `parse_int` method (use `to_integer` instead)
|
|
153
|
+
- Removed `json_extract` method (use `json_decode` instead)
|
|
154
|
+
- Removed `cleared` methods (use `clear` instead)
|
|
155
|
+
- Removed `melt` method (use `unpivot` instead)
|
|
156
|
+
- Removed `count_match` methods (use `count_matches` instead)
|
|
157
|
+
- Removed `is_numeric`, `is_datelike`, `is_temporal`, `is_float`, `is_bool`, `is_boolean`, and `is_utf8` methods from `Series` (use `dtype` methods instead)
|
|
158
|
+
- Removed `numeric?`, `datelike?`, `temporal?`, `float?`, `bool?`, `boolean?`, and `utf8?` methods from `Series` (use `dtype` methods instead)
|
|
159
|
+
- Removed `is_first` method (use `is_first_distinct` instead)
|
|
160
|
+
- Removed `approx_unique` method (use `approx_n_unique` instead)
|
|
161
|
+
- Removed `set_at_idx` method (use `scatter` instead)
|
|
162
|
+
- Removed `insert_at_idx` and `replace_at_idx` methods (use `insert_column` and `replace_column` instead)
|
|
163
|
+
- Removed `find_idx_by_name` method (use `get_column_index` instead)
|
|
164
|
+
- Removed `avg` method (use `mean` instead)
|
|
165
|
+
- Removed `arctan2d` method (use `arctan2` + `degrees` instead)
|
|
166
|
+
- Removed `read_sql` method (use `read_database` instead)
|
|
167
|
+
- Removed `with_row_count` methods (use `with_row_index` instead)
|
|
168
|
+
- Removed `has_validity` method (use `has_nulls` instead)
|
|
169
|
+
- Removed `shrink_dtype` method from `Expr` (use `Series#shrink_dtype` instead)
|
|
170
|
+
- Removed `replace` method from `DataFrame` (use `[]=` instead)
|
|
171
|
+
- Removed `read_json` and `write_json` methods from `LazyFrame` (use `deserialize` and `serialize` instead)
|
|
172
|
+
- Removed `fetch` method from `LazyFrame` (use `head` + `collect` instead)
|
|
173
|
+
- Removed `with_context` method from `LazyFrame` (use `Polars.concat(how: "horizontal")` instead)
|
|
174
|
+
- Removed `with_time_unit` method from `DateTimeExpr` and `DateTimeNameSpace` (use `cast(Polars::Int64).cast(Polars::Datetime.new(...))` instead)
|
|
175
|
+
- Removed `datetime` method from `DateTimeExpr` (use `replace_time_zone` instead)
|
|
176
|
+
- Removed `mean` and `median` methods from `DateTimeNameSpace` (use `Series#mean` and `Series#median` instead)
|
|
177
|
+
- Removed `concat` method from `StringExpr` and `StringNameSpace` (use `join("-")` instead)
|
|
178
|
+
- Removed `describe_plan` and `describe_optimized_plan` methods (use `explain` instead)
|
|
179
|
+
- Removed `plot` method from `GroupBy` (use `DataFrame#plot` instead)
|
|
180
|
+
|
|
181
|
+
Removed options
|
|
182
|
+
|
|
183
|
+
- Removed `dtype_if_empty` option from `Series` constructor
|
|
184
|
+
- Removed `warn_if_unsorted` option from `rolling_*_by` methods
|
|
185
|
+
- Removed `in_place` option from `rename` method
|
|
186
|
+
- Removed `append_chunks` option from `append` method
|
|
187
|
+
- Removed `name` option from `repeat` method
|
|
188
|
+
- Removed `utc` option from `strptime` method
|
|
189
|
+
- Removed `truncate` option from `group_by_dynamic` methods
|
|
190
|
+
- Removed `eager` option from `from_epoch` method
|
|
191
|
+
- Removed `string_cache` option from `collect` and `collect_all` methods
|
|
192
|
+
|
|
193
|
+
## 0.23.0 (2025-11-04)
|
|
194
|
+
|
|
195
|
+
- Updated Polars to 0.52.0
|
|
196
|
+
|
|
197
|
+
## 0.22.0 (2025-09-17)
|
|
198
|
+
|
|
199
|
+
- Updated Polars to 0.51.0
|
|
200
|
+
- Added `serialize` and `deserialize` methods to `DataFrame`
|
|
201
|
+
- Added `storage_options` and `retries` options to `sink_ipc` method
|
|
202
|
+
- Added `business_day_count` method to `Polars`
|
|
203
|
+
- Added experimental support for Iceberg
|
|
204
|
+
- Added experimental `cast_options` option to `scan_parquet` method
|
|
205
|
+
- Changed `read_parquet_schema` method to return `Schema`
|
|
206
|
+
- Fixed `Object` type
|
|
207
|
+
|
|
208
|
+
## 0.21.1 (2025-08-18)
|
|
209
|
+
|
|
210
|
+
- Added `read_parquet_metadata` method to `Polars`
|
|
211
|
+
- Added more methods to `Series` and `Expr`
|
|
212
|
+
- Added more methods to `DataFrame` and `LazyFrame`
|
|
213
|
+
- Added more methods to `ArrayExpr` and `ArrayNameSpace`
|
|
214
|
+
- Added more methods to `BinaryExpr` and `BinaryNameSpace`
|
|
215
|
+
- Added more methods to `CatExpr` and `CatNameSpace`
|
|
216
|
+
- Added more methods to `DateTimeExpr` and `DateTimeNameSpace`
|
|
217
|
+
- Added more methods to `ListExpr` and `ListNameSpace`
|
|
218
|
+
- Added more methods to `MetaExpr`
|
|
219
|
+
- Added more methods to `NameExpr`
|
|
220
|
+
- Added more methods to `StringExpr` and `StringNameSpace`
|
|
221
|
+
- Added more methods to `StructExpr` and `StructNameSpace`
|
|
222
|
+
- Fixed `subset` option for `drop_nulls` method
|
|
223
|
+
|
|
224
|
+
## 0.21.0 (2025-08-03)
|
|
225
|
+
|
|
226
|
+
- Updated Polars to 0.50.0
|
|
227
|
+
- Added `Catalog` class
|
|
228
|
+
- Added `rows_by_key` method to `DataFrame`
|
|
229
|
+
- Added set methods to `ListExpr` and `ListNameSpace`
|
|
230
|
+
- Added `filter` method to `ListExpr` and `ListNameSpace`
|
|
231
|
+
- Added `extra_columns` option to `scan_parquet` method
|
|
232
|
+
- Removed `columns` option from `DataFrame` constructor (use `schema` instead)
|
|
233
|
+
- Removed `has_header` option from `write_csv` method (use `include_header` instead)
|
|
234
|
+
|
|
235
|
+
## 0.20.0 (2025-06-23)
|
|
236
|
+
|
|
237
|
+
- Updated Polars to 0.49.1
|
|
238
|
+
|
|
239
|
+
## 0.19.0 (2025-05-20)
|
|
240
|
+
|
|
241
|
+
- Updated Polars to 0.48.0
|
|
242
|
+
|
|
243
|
+
## 0.18.0 (2025-05-05)
|
|
244
|
+
|
|
245
|
+
- Updated Polars to 0.47.1
|
|
246
|
+
|
|
247
|
+
## 0.17.1 (2025-04-12)
|
|
248
|
+
|
|
249
|
+
- Added support for horizontal concatenation of `LazyFrame`s
|
|
250
|
+
- Added `diagonal_relaxed` and `align` strategies to `concat` method
|
|
251
|
+
- Added `interpolate_by` method to `Series` and `Expr`
|
|
252
|
+
- Added `iter_columns` and `iter_slices` methods to `DataFrame`
|
|
253
|
+
- Added `maintain_order` option to `join` method
|
|
254
|
+
- Added `collect_schema` method to `DataFrame`
|
|
255
|
+
- Added `write_database` method to `DataFrame` (experimental)
|
|
256
|
+
- Fixed error with `to_numo` method for `Boolean` series with null values
|
|
257
|
+
- Fixed error with `slice` method and negative offset
|
|
258
|
+
|
|
259
|
+
## 0.17.0 (2025-01-28)
|
|
260
|
+
|
|
261
|
+
- Updated Polars to 0.46.0
|
|
262
|
+
- Changed `write_json` method for `DataFrame` to be row-oriented
|
|
263
|
+
- Fixed error with `Series` constructor and `strict: false`
|
|
264
|
+
|
|
265
|
+
## 0.16.0 (2024-12-29)
|
|
266
|
+
|
|
267
|
+
- Updated Polars to 0.45.1
|
|
268
|
+
- Added support for Ruby 3.4
|
|
269
|
+
- Added experimental support for Delta Lake
|
|
270
|
+
- Added `by_name` selector
|
|
271
|
+
- Added `thread_pool_size` method to `Polars`
|
|
272
|
+
- Removed `axis` option from `min`, `max`, `sum`, and `mean` methods (use `*_horizontal` instead)
|
|
273
|
+
- Dropped support for Ruby < 3.2
|
|
274
|
+
|
|
1
275
|
## 0.15.0 (2024-11-20)
|
|
2
276
|
|
|
3
277
|
- Updated Polars to 0.44.2
|