Skip to content
SPECIFICTION
Get listed

data.table vs dplyr

data.table

rdatatable.gitlab.io

dplyr

dplyr.tidyverse.org

Side by side

Figuredata.tabledplyr
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Plans published11
Spec score · Data Transformation Tools8.5 (#11)8.2 (#14)
JoinsIts join features include ordered, rolling, overlapping range, and non-equi joins.dplyr includes two-table verbs for working with pairs of data frames.
LicenseThe project repository identifies its license as MPL-2.0.The dplyr site identifies its license as MIT.
SupportThe project directs users who need help to the data.table community on Stack Overflow.The project directs bug reports to GitHub and questions or discussion to the Posit community forum.

Plans

data.table

  • data.tableFree

data.table pricing →

dplyr

  • dplyrFree

dplyr pricing →

In their own words

data.table

data.table is a free R package providing a high-performance version of base R’s data.frame. Its code interface supports filtering, grouping, aggregation, ordered and rolling joins, overlapping and non-equi joins, reshaping with dcast and melt, and adding, updating, or deleting columns. fread() reads delimited text, including CSV, TSV, compressed .gz and .bz2 files, and can source web URLs or shell commands. fwrite() writes delimited files with an emphasis on speed for large files. Many operations use multiple CPU threads internally. Columns can be changed by reference without copies, and the project reports no external Imports, LinkingTo, or Depends dependencies. Queries can call R functions from other packages. data.table runs on Linux, macOS, and Windows and requires base R. It is self-hosted and licensed under MPL-2.0. The project’s stated scope excludes binary formats such as Parquet and data stored on disk or in remote SQL databases.

Visit rdatatable.gitlab.io

dplyr

dplyr is a free R package for transforming data frames and tibbles through a set of code-based operations. Its main verbs add variables with mutate(), choose variables with select(), filter cases with filter(), summarize values with summarise(), and order rows with arrange(). Combine them with group_by() to apply operations to groups, or use two-table verbs to work with pairs of datasets. The across() helper repeats an operation over several columns, while rowwise() supports row-by-row work. The programming guide covers data masking, tidy selection, and use in functions or loops. For other data settings, dbplyr translates dplyr code into SQL for relational databases; the documentation also lists Arrow, dtplyr, duckplyr, and sparklyr as alternative backends for larger datasets. dplyr runs on Linux, macOS, and Windows and is licensed under MIT. The CRAN package requires R 4.1.0 or later, and installation instructions cover CRAN and a development version from GitHub. The project recommends dplyr to people learning data transformation in R for Data Science.

Visit dplyr.tidyverse.org