Read and Write 'Parquet' Files
Overview
Self-sufficient reader and writer for flat 'Parquet' files. Can read most 'Parquet' data types. Can write many 'R' data types, including factors and temporal types. See docs for limitations.
- The default row group size (
num_rows_per_row_groupoption) is now 122,880 rows, the same as DuckDB's default (#168). - nanoparquet now compiles with clang 23.
read_parquet()now reads missing values correctly whencol_selectselects a subset of the columns, or reorders them (#170).read_parquet()now works correctly when selecting list columns incol_select, by name or position.write_parquet()now writes correct min/max statistics for dictionary encodedPOSIXctanddifftimecolumns (#169).write_parquet()no longer crashes when writing optional columns whose data size causes more Parquet pages to be allocated than there are rows (#147).
Show all changes in 0.5.2Hide the rest of the changes in 0.5.2
write_parquet(file = ":stdout:")now produces correct output on Windows. Previously the standard output stream was in text mode, so newline bytes were translated to CRLF, corrupting the binary Parquet output.
From NEWS.md in the release
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK12 OK, 1 FAILURE2026-06-08
- ERROR12 OK, 1 ERROR2026-06-07
- OK14 OK2026-04-21
Show 3 earlier changesHide 3 earlier changes
- ERROR13 OK, 1 ERROR2026-04-15
- OK14 OK2026-04-14
- ERROR12 OK, 1 NOTE, 1 ERROR2026-03-10
Documentation
The repository also keeps web-only articles.
- Help pages
- 18 (4 internal)includes a package overview page
- Examples that run
- 100%8 run in a plain check (3 of them under a condition)
- Exported functions with examples
- 55%
- Documented parameters
- 98%
- Return-value docs
- 91%
- Help pages citing references
- 0%
Downloads
Repository
- PRs merged (all time)
- 97%
- Median days to close, 50 most recently updated closed issues
- 20
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
Commits over time
Commit identities over time
10 development-tooling and community-health practices detected across 4 families in the upstream repository
Checks run against github.com/r-lib/nanoparquet on 2026-10-11.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
GitHub Pages site last deployed 2026-10-09 · The repository has a site deploy workflow
pkgdown site last built 2026-09-16
This repository shows signs of AI coding tools.
- Claude Codefirst seen 2026-04-06Seen in the repository: CLAUDE.mdNamed in .Rbuildignore: CLAUDE.md
- GitHub Copilotfirst seen 2026-06-19Commits: 2 by its own account
Dependencies
Installing nanoparquet adds no packages beyond those that come with R.
Show all 35 packagesHide all 35 packages
Code & Tests
People & History
Pick two releases to compare their code metrics.
- 0.5.2Latest
- RR 4.6.0 released · 2026-04-24
- 0.5.12026-04-20 · diff ↗
- 0.5.02026-04-11 · diff ↗
- 0.4.32025-12-17 · diff ↗
- RR 4.5.0 released · 2025-04-11
- 0.4.22025-02-22 · diff ↗
- 0.4.12025-02-10 · diff ↗
- 0.4.02025-01-29 · diff ↗ ·
added 5 exports
append_parquet, infer_parquet_schema, read_parquet_info, read_parquet_metadata, read_parquet_schema - 0.3.12024-07-01 · diff ↗
- 0.3.02024-06-17 · diff ↗ ·
removed 1 export
parquet_columnsadded 2 exports
parquet_column_types, parquet_options - 0.2.02024-05-30
- RR 4.4.0 released · 2024-04-24
Package metadata
- First published
- 2024-05-30
- Total releases
- 10 / 2 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 4.0.0
- Download size
- 1.1 MB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("nanoparquet")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-18, which the citation names so these numbers can be found later. More on citing and the projects behind them.