Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Data Transformation Tools
  3. data.table

data.table

What it is

data.table is a free R package that provides a high-performance version of base R’s data.frame. It supports filtering, grouping, aggregation, joins, reshaping, and adding, updating, or deleting columns. Its join options include ordered, rolling, overlapping range, and non-equi joins; dcast and melt support reshaping. For delimited-file work, fread() reads CSV, TSV, other delimited text, and compressed .gz and .bz2 files, and can read from web URLs or shell commands. The fwrite() function writes delimited files and is optimized for speed on large files. Many common operations use multiple CPU threads. The project describes data.table as memory efficient, with column changes made by reference rather than by making copies. It has no external Imports, LinkingTo, or Depends dependencies, and queries can use functions from other R packages. data.table runs on Linux, macOS, and Windows and requires base R. Its stated scope excludes binary formats such as Parquet and manipulating data stored on disk or in remote SQL databases. It is code-based, self-hosted, and licensed under MPL-2.0.

For and against

For

  • Supports multiple join types and reshaping operations.
  • Reads delimited files from URLs or shell commands.
  • Writes delimited files with fwrite().
  • Common operations can use multiple CPU threads.
  • No external package dependencies are listed.

Against

  • Requires base R.
  • Binary formats such as Parquet are outside its scope.
  • Does not cover data stored on disk or remote SQL databases.

The verdict

data.table offers extensive table operations and file handling within R. Its stated limits matter for workflows centered on binary files or data stored outside memory.

Who it suits

data.table suits R users working with tabular data and delimited files who are comfortable with a code-based workflow. It is available across Linux, macOS, and Windows.

Plans and prices

data.table

Free

R package; requires base R

Every plan, in full

On the record

Community support
The project directs users who need help to its active Stack Overflow community.rdatatable.gitlab.io · read 8 Oct 2026
Data operations
It supports filtering, grouping, aggregation, joins, reshaping, and adding, updating, or deleting columns.rdatatable.gitlab.io · read 8 Oct 2026
Dependencies
The project says it has no dependencies other than base R.rdatatable.gitlab.io · read 8 Oct 2026
File export
The package includes fwrite, a fast writer for delimited files.rdatatable.gitlab.io · read 8 Oct 2026
File format limit
Reading and writing binary files such as Parquet is listed as outside the project’s current scope.rdatatable.gitlab.io · read 8 Oct 2026
File import
The package includes fread, a fast reader for delimited files.rdatatable.gitlab.io · read 8 Oct 2026
File input
Its fread() function reads delimited files and can read directly from web URLs or shell commands.rdatatable.gitlab.io · read 8 Oct 2026
File output
Its fwrite() function writes delimited files and is optimized for speed on large files.rdatatable.gitlab.io · read 8 Oct 2026
Funding
The data.table project is fiscally sponsored by NumFOCUS and accepts donations to support project needs.rdatatable.gitlab.io · read 8 Oct 2026
Governance
The project uses a custom governance agreement and is fiscally sponsored by NumFOCUS.rdatatable.gitlab.io · read 8 Oct 2026
Integrations
data.table is an R package and can use R functions from other packages in queries.rdatatable.gitlab.io · read 8 Oct 2026
Joins
Its join features include ordered, rolling, overlapping range, and non-equi joins.rdatatable.gitlab.io · read 8 Oct 2026
License
The project repository identifies its license as MPL-2.0.github.com · read 8 Oct 2026
Memory behavior
Columns can be added, updated, or deleted by reference without making copies.rdatatable.gitlab.io · read 8 Oct 2026
Memory use
The project describes data.table as memory efficient and says columns can be added, updated, or deleted by reference without copies.rdatatable.gitlab.io · read 8 Oct 2026
Out-of-memory limit
Manipulating data stored on disk or in remote SQL databases is listed as outside the project’s current scope.rdatatable.gitlab.io · read 8 Oct 2026
Parallel processing
Many common operations are internally parallelized to use multiple CPU threads.rdatatable.gitlab.io · read 8 Oct 2026
R compatibility
The project says it continuously tests against R 3.5.0, its stated current oldest supported R dependency.rdatatable.gitlab.io · read 8 Oct 2026

The review

Overview

data.table is a free R package for table manipulation and delimited-file work. It suits R users who need broad transformations on data held in memory. Its strengths are fast file handling and memory-conscious operations; its boundaries are binary formats and data kept on disk or in remote databases.

Key features

The package covers filtering, grouping, aggregation, joins, reshaping, and adding, updating, or deleting columns. Its ordered, rolling, overlapping-range, and non-equi joins offer useful options when ordinary key matches are insufficient. The dcast and melt functions handle reshaping, while queries can call functions from other R packages.

Columns can be changed by reference without making copies, which can reduce memory pressure on large in-memory tables. Many common operations also use multiple CPU threads internally. That combination makes data.table a compelling choice for substantial workloads that fit in memory, but it does not extend to manipulating data stored on disk or in remote SQL databases.

fread() reads delimited files, including from web URLs or shell commands; fwrite() writes delimited output with speed-oriented handling for large files. Supported formats include CSV, TSV, delimited text, and compressed .gz and .bz2 files. Parquet and other binary-file workflows are outside its scope.

Pricing

The data.table plan costs free. It is an R package requiring base R, with no separate paid tier or free-trial period. The project states that it has no external Imports, LinkingTo, or Depends dependencies. This makes it a straightforward fit for individuals and teams already equipped to work in R; it is not a standalone visual tool.

Platforms

The installation guide supports Linux, Mac, and Windows. The deployment model is self-hosted, and the interface is code-based. The project continuously tests against R 3.5.0, its stated oldest supported R dependency.

Who it's for

Choose data.table if you work in R and need extensive table operations, specialized joins, or fast delimited-file import and export while keeping data in memory. Look elsewhere if your workflow depends on Parquet, larger-than-memory processing, or direct manipulation of remote SQL data.

Pros and cons

Pros

  • Wide transformation coverage: filtering, aggregation, reshaping, column changes, and several specialized join types live in one R package.
  • Memory-conscious updates: changing columns by reference avoids copies, a practical advantage for large tables.
  • Useful file handling: fread() and fwrite() support delimited-file workflows, including compressed inputs and URL or shell-command reads.
  • No package fee: the plan is free, and the project reports no external package dependencies.

Cons

  • R and code are required: it depends on base R and does not offer a separate visual interface.
  • In-memory scope: it does not cover on-disk or remote SQL data manipulation.
  • No binary-file focus: Parquet is outside the project’s current scope.

Alternatives

dplyr is another free R package for data manipulation on Linux, Mac, and Windows; consider it if you want that alternative within an R workflow. Bonobo is a free option for Linux, Mac, Windows, and self-hosted use. Ibis is a free Python dataframe library with API and self-hosted platform options; supported backends vary in operation coverage.

csvkit is a free command-line toolkit for CSV work on Linux, Mac, and Windows. jq is free standalone software with binaries for Linux, Mac, and Windows. LANSA has a free plan and trial, with paid pricing varying by business needs. Prophecy and Coalesce Catalog have free tiers and paid plans; consider them if their respective credit-based or capped-action plan structures suit your needs. For more options, see Data Transformation Tools.

Verdict

For R users handling in-memory tables, data.table is an unusually broad free tool, with reference-based column changes, specialized joins, and efficient delimited-file functions. Choose it when those capabilities match your workflow; look elsewhere when binary formats or data that remains on disk or in a database are central.

Alternatives to data.table

Every alternative, ranked