r-duckplyr

Manipulate large datasets with DuckDB-backed dplyr syntax.

19|1|Updated Mar 3, 2026
One-click install
npx skills add https://github.com/arthurgailes/awesome-r-skills --skill r-duckplyr
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: r-duckplyr
Source: https://github.com/arthurgailes/awesome-r-skills/tree/main/skills/r-duckplyr
Command: npx skills add https://github.com/arthurgailes/awesome-r-skills --skill r-duckplyr

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the performance bottlenecks and memory limitations encountered when using dplyr with large datasets (over 100k rows) or larger-than-memory files, by leveraging DuckDB for efficient, lazy data processing.

Core Features & Use Cases

  • Lazy Evaluation: Operations are executed only when results are needed, optimizing performance for large datasets.
  • Larger-than-Memory Support: Directly query Parquet, CSV, and other file formats from disk or URLs without loading them entirely into RAM.
  • DuckDB Backend: Utilizes DuckDB's speed and efficiency for data manipulation tasks.
  • Use Case: Process multi-gigabyte Parquet files stored on disk using familiar dplyr syntax, performing complex filtering, grouping, and summarization without running out of memory.

Quick Start

Use the r-duckplyr skill to read the file 'large_dataset.parquet' and filter rows where the 'year' column is 2024.

Frequently Asked Questions about r-duckplyr

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I process large datasets with dplyr when the data exceeds available RAM?

Process large datasets exceeding available RAM by using a DuckDB-backed implementation of dplyr syntax. This approach leverages lazy evaluation and queries disk-based files like Parquet and CSV directly, preventing memory overflow during data manipulation.

Can I query Parquet and CSV files directly from disk without loading them into memory?

Yes, direct querying of Parquet, CSV, and other file formats from disk or URLs is supported without loading them entirely into RAM. This larger-than-memory support allows you to perform complex filtering and summarization on multi-gigabyte files efficiently.

What is lazy evaluation and how does it optimize big data performance?

Lazy evaluation in big data processing means operations are executed only when results are needed. This optimizes performance for large datasets by minimizing unnecessary memory usage and accelerating complex data manipulation pipelines.

Does r-duckplyr work with my existing dplyr syntax for large-scale analytics?

Yes, r-duckplyr enables efficient data manipulation on large datasets using familiar dplyr syntax. It acts as a DuckDB backend, allowing you to perform complex filtering, grouping, and summarization without learning a new query language.

What's the best way to handle multi-gigabyte Parquet files for complex grouping and summarization?

The best way to handle multi-gigabyte Parquet files is utilizing a DuckDB backend with lazy evaluation. This method allows you to execute complex grouping and summarization directly on disk-based files using standard dplyr verbs without running out of memory.