Learn R Programming

fjoin

Data frame joins leveraging data.table

Please view this page on the package website and head to the Get started guide next.

Description

Extends data.table join functionality, lets it work with any data frame class, and provides a familiar x/y-style interface, enabling broad use across R. Offers NA-safe matching by default, on-the-fly column selection, multiple match-handling on both sides, x or y row order, and a row origin indicator. Performs inner, left, right, full, semi- and anti-joins with equality and inequality conditions, plus cross joins. Specific support for data.table, (grouped) tibble, and sf/sfc objects and their attributes; returns a plain data frame otherwise. Avoids data-copying of inputs and outputs. Allows displaying the data.table code instead of (or as well as) executing it.

Installation

Stable release (CRAN):

install.packages("fjoin")

Latest development version (R-universe):

install.packages("fjoin",
  repos = c("https://trobx.r-universe.dev", "https://cloud.r-project.org"))

More information

See Get started.

Copy Link

Version

Install

install.packages('fjoin')

Version

0.1.0

License

MIT + file LICENSE

Maintainer

Toby Robertson

Last Published

December 11th, 2025

Functions in fjoin (0.1.0)

fjoin_cross

Cross join
fjoin-package

fjoin
fjoin_left

Left join
fjoin_inner

Inner join
fjoin_full

Full join
dtjoin_anti

Anti-join of DT in a DT[i]-style join of data frame-like objects
fjoin_left_anti

Left anti-join
dtjoin_semi

Semi-join of DT in a DT[i]-style join of data frame-like objects
dtjoin_cross

Cross join of data frame-like objects DT and i using a DT[i]-style interface to data.table
dtjoin

Join data frame-like objects using an extended DT[i]-style interface to data.table
fjoin_right_anti

Right anti-join
fjoin_right

Right join
fjoin_left_semi

Left semi-join
fjoin_right_semi

Right semi-join