fjoin
Data Frame Joins Leveraging 'data.table'
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.
Downloads
408
Last 30 days
9258th
849
Last 90 days
1.1K
Last year
Trend: +75.1% (30d vs prior 30d)
CRAN Check Status
Show all 14 flavors
| Flavor | Status |
|---|---|
| r-devel-linux-x86_64-debian-clang | OK |
| r-devel-linux-x86_64-debian-gcc | OK |
| r-devel-linux-x86_64-fedora-clang | OK |
| r-devel-linux-x86_64-fedora-gcc | OK |
| r-devel-macos-arm64 | OK |
| r-devel-windows-x86_64 | OK |
| r-oldrel-macos-arm64 | OK |
| r-oldrel-macos-x86_64 | OK |
| r-oldrel-windows-x86_64 | OK |
| r-patched-linux-x86_64 | OK |
| r-release-linux-x86_64 | OK |
| r-release-macos-arm64 | OK |
| r-release-macos-x86_64 | OK |
| r-release-windows-x86_64 | OK |
Check History
OK 14 OK · 0 NOTE · 0 WARNING · 0 ERROR · 0 FAILURE Mar 26, 2026
ERROR 5 OK · 0 NOTE · 0 WARNING · 9 ERROR · 0 FAILURE Mar 10, 2026
tests
Running ‘testthat.R’ [15s/17s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running ‘testthat.R’ [9s/11s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional t
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running ‘testthat.R’ [22s/32s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running ‘testthat.R’ [21s/25s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running 'testthat.R' [13s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running ‘testthat.R’ [13s/18s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running ‘testthat.R’ [13s/15s]
Running the tests in ‘tests/testthat.R’ failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running 'testthat.R' [13s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted
tests
Running 'testthat.R' [18s]
Running the tests in 'tests/testthat.R' failed.
Complete output:
> # This file is part of the standard setup for testthat.
> # It is recommended that you do not modify it.
> #
> # Where should you do additional test
...[truncated]...
" | "NA " [4]
[5] "constant" - "NA " [5]
[6] "constant" - "NA " [6]
- "constant" [7]
- "constant" [8]
[ FAIL 10 | WARN 0 | SKIP 0 | PASS 472 ]
Error:
! Test failures.
Execution halted