Lightning-Fast 'DataFrame' Library
Overview
Lightning-fast 'DataFrame' library written in 'Rust'. Convert R data to 'Polars' data and vice versa. Perform fast, lazy, larger-than-memory and optimized data queries. 'Polars' is interoperable with the package 'arrow', as both are based on the 'Apache Arrow' Columnar Format.
BREAKING CHANGES
- Replace the argument
reversebydescendingin all sorting functions. This is for consistency with the upstream Polars (#291, #293). - Bump rust-polars from 2023-04-20 unreleased version to version 0.30.0 released in 2023-05-30 (#289).
- Rename
concat_lsttoconcat_list. - Rename
$str$explodeto$str$str_explode. - Remove
tz_awareandutcarguments fromstr_parse. - in
$date_range's thelazyargument is nowTRUEby default. - The functions to read CSV have been renamed
scan_csvandread_csvfor consistency with the upstream Polars.scan_xxxandread_xxxfunctions are now accessed viapl, e.g.pl$scan_csv()(#305).
What's changed
Show all changes in 0.7.0Hide the rest of the changes in 0.7.0
- New method
$rename()forLazyFrameandDataFrame(#239) <DataFrame>$unique()and<LazyFrame>$unique()gain amaintain_orderargument (#238).- New
pl$LazyFrame()to quickly create aLazyFrame, mostly in examples or
for demonstration purposes (#240).
- Polars is internally moving away from string errors to a new error-type called
RPolarsErrboth on rust- and R-side. Final error messages should look very similar (#233). $columns(),$schema(),$dtypes()forLazyFrameimplemented (#250).- Improvements to internal
RPolarsErr. AlsoRPolarsErrwill now print each context of the error on a separate line (#250). - Fix memory leak on error bug. Fix printing of
%bug. Prepare for renaming of polars classes (#252). - Add helpful reference landing page at
polars.github.io/reference_home(#223, #264). - Supports Rust 1.65 (#262, #280)
- rust-polars'
simdfeature is now disabled by default. To enable it, set the environment variableRPOLARS_ALL_FEATUREStotruewhen build r-polars (#262). opt-levelofargminmaxis now set to1in thereleaseprofile to support Rust < 1.66. The profile can be changed by setting the environment variableRPOLARS_PROFILE(when set torelease-optimized,opt-levelofargminmaxis set to3).- A new function
pl$polars_info()will tell which features enabled (#271, #285, #305). select()now accepts lists of expressions. For example,<DataFrame>$select(l_expr)works withl_expr = list(pl$col("a"))(#265).- LazyFrame gets some new S3 methods:
[,dim(),dimnames(),length(),names()(#301) <DataFrame>$glimpse()is a faststr()-like view of aDataFrame(#277).$over()now accepts a vector of column names (#287).- New method
<DataFrame>$describe()(#268). - Cross joining is now possible with
how = "cross"in$join()(#310). - Add license info of all rust crates to
LICENSE.note(#309). - With CRAN 0.7.0 release candidate (#308).
- New author accredited, SHIMA Tatsuya (@eitsupi).
- DESCRIPTION revised.
From NEWS.md in the release
Install
Health
CRAN check results are not tracked yet.
Documentation
- Help pages
- 540 (60 internal)
- Examples that run
- 98%465 run in a plain check · 9 hold no code
- Exported functions with examples
- 75%
- Documented parameters
- 100%
- Return-value docs
- 100%
- Help pages citing references
- 0%
Downloads
Dependencies
Code & Tests
People & History
- RR 4.4.0 released · 2024-04-24
- archivedRemoved from CRAN2023-07-18policy violations Misrepresentation of authorship, not covering downloaded material Use of many (at least 15) CPUs during installation
- 0.7.02023-07-17
- RR 4.3.0 released · 2023-04-21
Package metadata
- First published
- 2023-07-17
- Total releases
- 1 / 3 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 4.1.0
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("polars")This package has no citation file, so citation() returns this entry built from DESCRIPTION.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-22, which the citation names so these numbers can be found later. More on citing and the projects behind them.