DataAPI.innerjoin
— Methodinnerjoin((;A, B), by; [nonmatches=drop], [multi], [groupby], [cardinality=(*, *)])
Join two datasets, A
and B
, by the by
condition.
DataAPI.leftjoin
— Methodleftjoin((;A, B), by; [nonmatches=(keep, drop)], [multi], [groupby], [cardinality=(*, *)])
Join two datasets, A
and B
, by the by
condition.
DataAPI.outerjoin
— Methodouterjoin((;A, B), by; [nonmatches=keep], [multi], [groupby], [cardinality=(*, *)])
Join two datasets, A
and B
, by the by
condition.
DataAPI.rightjoin
— Methodrightjoin((;A, B), by; [nonmatches=(drop, keep)], [multi], [groupby], [cardinality=(*, *)])
Join two datasets, A
and B
, by the by
condition.
FlexiJoins.by_distance
— Methodby_distance(f, dist, pred)
by_distance(f_L, f_R, dist, pred)
Join condition with left
-right
matches defined by pred(dist(f_L(left), f_R(left)))
. All distances from Distances.jl
are supported as dist.
Examples
by_distance(:time, Euclidean(), <=(3))
by_distance(:time, x -> minimum(x.times), Euclidean(), <=(3))
FlexiJoins.by_key
— Methodby_key(f)
by_key(f_L, f_R)
Join condition with left
-right
matches defined by f_L(left) == f_R(right)
.
Examples
by_key(:name)
by_key(:name, x -> first(x.names))
FlexiJoins.by_pred
— Methodby_pred(f_L, pred, f_R)
Join condition with left
-right
matches defined by pred(f_L(left), f_R(left))
.
Examples
by_pred(:start_time, <, :time)
by_pred(:time, ∈, :time_range)
FlexiJoins.flexijoin
— Methodflexijoin((;A, B), by; [nonmatches=drop], [multi], [groupby], [cardinality=(*, *)])
Join two datasets, A
and B
, by the by
condition.
Performs an inner join by default. See also the innerjoin()
function.