if (FALSE) { # interactive()
## load packages
library(duckspatial)
library(sf)
# create a duckdb database in memory (with spatial extension)
conn <- ddbs_create_conn(dbdir = "memory")
## create random points
random_points <- data.frame(
id = 1:5,
x = runif(5, min = -180, max = 180), # Random longitude values
y = runif(5, min = -90, max = 90) # Random latitude values
)
## convert to sf
sf_points <- st_as_sf(random_points, coords = c("x", "y"), crs = 4326)
## insert data into the database
ddbs_write_vector(conn, sf_points, "points")
## read data back into R
ddbs_read_vector(conn, "points", crs = 4326)
## disconnect from db
dbDisconnect(conn)
}
Run the code above in your browser using DataLab