library(terra)
library(ggplot2)
# Vector
v <- terra::vect(system.file("extdata/cyl.gpkg", package = "tidyterra"))
# A data frame
df <- data.frame(
cpro = sprintf("%02d", 1:10),
x = runif(10),
y = runif(10),
letter = rep_len(LETTERS[1:3], length.out = 10)
)
# Inner join
inner <- v %>% inner_join(df)
nrow(inner)
autoplot(inner, aes(fill = letter)) + ggtitle("Inner Join")
# Left join
left <- v %>% left_join(df)
nrow(left)
autoplot(left, aes(fill = letter)) + ggtitle("Left Join")
# \donttest{
# Right join
right <- v %>% right_join(df)
nrow(right)
autoplot(right, aes(fill = letter)) + ggtitle("Right Join")
# There are empty geometries, check with data from df
ggplot(right, aes(x, y)) +
geom_point(aes(color = letter))
# Full join
full <- v %>% full_join(df)
nrow(full)
autoplot(full, aes(fill = letter)) + ggtitle("Full Join")
# Check with data from df
ggplot(full, aes(x, y)) +
geom_point(aes(color = letter))
# }
Run the code above in your browser using DataLab