Nothing
# DataBackendRaster methods ----------------------------------------------------
test_that("DataBackendRaster works with a single numeric layer", {
stack = generate_stack(list(
numeric_layer("x_1")),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
# backend
expect_class(backend, "DataBackendRaster")
# active fields
expect_names(backend$colnames, identical.to = "x_1")
expect_equal(backend$ncol, 1L)
expect_equal(backend$rownames, seq(100))
expect_equal(backend$nrow, 100L)
expect_class(backend$stack, "SpatRaster")
# stack
expect_names(names(backend$stack), identical.to = "x_1")
# crs
expect_length(terra::crs(backend$stack, describe = TRUE), 5L)
# data
expect_data_table(backend$data(rows = seq(100), cols = "x_1"), nrows = 100, ncols = 1, col.names = "strict", types = "numeric") # block read
expect_names(names(backend$data(rows = seq(100), cols = "x_1")), identical.to = "x_1")
expect_data_table(backend$data(rows = seq(50), cols = "x_1"), nrows = 50, ncols = 1, col.names = "strict", types = "numeric") # block read
expect_data_table(backend$data(rows = c(1, 50, 100), cols = "x_1"), nrows = 3, ncols = 1, col.names = "strict", types = "numeric") # cell read
expect_names(names(backend$data(rows = c(1, 50, 100), cols = "x_1")), identical.to = "x_1")
# head
expect_data_table(backend$head(n = 10L), nrows = 10, ncols = 1, types = "numeric")
expect_names(names(backend$head(n = 10L)), identical.to = "x_1")
# distinct
expect_list(backend$distinct(rows = 1, cols = "x_1"), len = 1, names = "strict") # slow query
expect_numeric(backend$distinct(rows = 1, cols = "x_1")$x_1, len = 1)
expect_list(backend$distinct(rows = seq(10), cols = "x_1"), len = 1, names = "strict") # slow query
expect_numeric(backend$distinct(rows = seq(10), cols = "x_1")$x_1)
expect_list(backend$distinct(rows = seq(100), cols = "x_1"), len = 1, names = "strict") # fast query
expect_numeric(backend$distinct(rows = seq(100), cols = "x_1")$x_1)
expect_list(backend$distinct(rows = seq(10), cols = "x_2"), len = 0, names = "strict")
# missings
expect_equal(backend$missings(rows = seq(10), cols = "x_1"), c("x_1" = 0)) # slow query
expect_equal(backend$missings(rows = seq(100), cols = "x_1"), c("x_1" = 0)) # fast query
expect_numeric(backend$missings(rows = seq(10), cols = "x_2"), len = 0)
})
test_that("DataBackendRaster works with a single factor layer", {
stack = generate_stack(list(
factor_layer("c_1", levels = c("a", "b"))),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
# backend
expect_class(backend, "DataBackendRaster")
# active fields
expect_names(backend$colnames, identical.to = "c_1")
expect_equal(backend$ncol, 1L)
expect_equal(backend$rownames, seq(100))
expect_equal(backend$nrow, 100L)
expect_class(backend$stack, "SpatRaster")
expect_names(names(backend$stack), identical.to = "c_1")
# data
expect_data_table(backend$data(rows = seq(100), cols = "c_1"), nrows = 100, ncols = 1, col.names = "strict", types = "factor") # block read
expect_names(names(backend$data(rows = seq(100), cols = "c_1")), identical.to = "c_1")
expect_data_table(backend$data(rows = seq(50), cols = "c_1"), nrows = 50, ncols = 1, col.names = "strict", types = "factor") # block read
expect_data_table(backend$data(rows = c(1, 50, 100), cols = "c_1"), nrows = 3, ncols = 1, col.names = "strict", types = "factor") # cell read
expect_names(names(backend$data(rows = c(1, 50, 100), cols = "c_1")), identical.to = "c_1")
# head
expect_data_table(backend$head(n = 10L), nrows = 10, ncols = 1, types = "factor")
expect_names(names(backend$head(n = 10L)), identical.to = "c_1")
# distinct
expect_list(backend$distinct(rows = 1, cols = "c_1"), len = 1, names = "strict") # slow query
expect_equal(backend$distinct(rows = 1, cols = "c_1")$c_1, "a")
expect_list(backend$distinct(rows = seq(20), cols = "c_1"), len = 1, names = "strict") # slow query
expect_equal(backend$distinct(rows = seq(20), cols = "c_1")$c_1, c("a", "b"))
expect_list(backend$distinct(rows = seq(100), cols = "c_1"), len = 1, names = "strict") # fast query
expect_equal(backend$distinct(rows = seq(100), cols = "c_1")$c_1, c("a", "b"))
expect_list(backend$distinct(rows = seq(20), cols = "c_2"), len = 0, names = "strict")
# missings
expect_equal(backend$missings(rows = seq(10), cols = "c_1"), c("c_1" = 0)) # slow query
expect_equal(backend$missings(rows = seq(100), cols = "c_1"), c("c_1" = 0)) # fast query
expect_numeric(backend$missings(rows = seq(10), cols = "c_2"), len = 0)
})
test_that("DataBackendRaster works with a numeric and a factor layer", {
stack = generate_stack(list(
numeric_layer("x_1"),
factor_layer("c_1", levels = c("a", "b"))),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
# backend
expect_class(backend, "DataBackendRaster")
# active fields
expect_names(backend$colnames, identical.to = c("x_1", "c_1"))
expect_equal(backend$ncol, 2)
expect_equal(backend$rownames, seq(100))
expect_equal(backend$nrow, 100)
expect_class(backend$stack, "SpatRaster")
expect_names(names(backend$stack), identical.to = c("x_1", "c_1"))
# data
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "c_1")), nrows = 100, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # block read
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "c_1"))), identical.to = c("x_1", "c_1"))
expect_data_table(backend$data(rows = seq(50), cols = c("x_1", "c_1")), nrows = 50, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # block read
expect_data_table(backend$data(rows = c(1, 50, 100), cols = c("x_1", "c_1")), nrows = 3, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # cell read
expect_names(names(backend$data(rows = c(1, 50, 100), cols = c("x_1", "c_1"))), identical.to = c("x_1", "c_1"))
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "c_1", "c_2")), nrows = 100, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # ignore cols
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "c_1", "c_2"))), identical.to = c("x_1", "c_1"))
# head
expect_data_table(backend$head(n = 10L), nrows = 10, ncols = 2, types = c("numeric", "factor"))
expect_names(names(backend$head(n = 10L)), identical.to = c("x_1", "c_1"))
# distinct
expect_list(backend$distinct(rows = 1, cols = c("x_1", "c_1")), len = 2, names = "strict") # slow query
expect_equal(backend$distinct(rows = 1, cols = c("x_1", "c_1"))$c_1, "a")
expect_numeric(backend$distinct(rows = 1, cols = c("x_1", "c_1"))$x_1, len = 1)
expect_list(backend$distinct(rows = seq(20), cols = c("x_1", "c_1")), len = 2, names = "strict") # slow query
expect_equal(backend$distinct(rows = seq(20), cols = c("x_1", "c_1"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(20), cols = c("x_1", "c_1"))$x_1)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "c_1")), len = 2, names = "strict") # fast query
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "c_1"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "c_1"))$x_1)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2")), len = 2, names = "strict")
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2"))$x_1)
# missings
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "c_1")), c("x_1" = 0, "c_1" = 0)) # slow query
expect_equal(backend$missings(rows = seq(100), cols = c("x_1", "c_1")), c("x_1" = 0, "c_1" = 0)) # fast query
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "c_1", "c_2")), c("x_1" = 0, "c_1" = 0))
# task
expect_class(as_task_unsupervised(backend, id = "test", target = "c_1"), "TaskUnsupervised")
})
test_that("DataBackendRaster works with multiple numeric and factor layers", {
stack = generate_stack(list(
numeric_layer("x_1"),
numeric_layer("x_2"),
factor_layer("c_1", levels = c("a", "b")),
factor_layer("c_2", levels = c("a1", "a2", "a3"))),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
# backend
expect_class(backend, "DataBackendRaster")
# active fields
expect_names(backend$colnames, identical.to = c("x_1", "x_2", "c_1", "c_2"))
expect_equal(backend$ncol, 4)
expect_equal(backend$rownames, seq(100))
expect_equal(backend$nrow, 100)
expect_class(backend$stack, "SpatRaster")
expect_names(names(backend$stack), identical.to = c("x_1", "x_2", "c_1", "c_2"))
# data
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2")), nrows = 100, ncols = 4, col.names = "strict", types = c("numeric", "factor")) # block read
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2"))), identical.to = c("x_1", "x_2", "c_1", "c_2"))
expect_data_table(backend$data(rows = seq(50), cols = c("x_1", "x_2", "c_1", "c_2")), nrows = 50, ncols = 4, col.names = "strict", types = c("numeric", "factor")) # block read
expect_data_table(backend$data(rows = c(1, 50, 100), cols = c("x_1", "x_2", "c_1", "c_2")), nrows = 3, ncols = 4, col.names = "strict", types = c("numeric", "factor")) # cell read
expect_names(names(backend$data(rows = c(1, 50, 100), cols = c("x_1", "x_2", "c_1", "c_2"))), identical.to = c("x_1", "x_2", "c_1", "c_2"))
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2")), nrows = 100, ncols = 4, col.names = "strict", types = c("numeric", "factor")) # ignore cols
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2"))), identical.to = c("x_1", "x_2", "c_1", "c_2"))
# head
expect_data_table(backend$head(n = 10L), nrows = 10, ncols = 4, types = c("numeric", "factor"))
expect_names(names(backend$head(n = 10L)), identical.to = c("x_1", "x_2", "c_1", "c_2"))
# distinct
expect_list(backend$distinct(rows = 1, cols = c("x_1", "x_2", "c_1", "c_2")), len = 4, names = "strict") # slow query
expect_equal(backend$distinct(rows = 1, cols = c("x_1", "x_2", "c_1", "c_2"))$c_1, "a")
expect_equal(backend$distinct(rows = 1, cols = c("x_1", "x_2", "c_1", "c_2"))$c_2, "a1")
expect_numeric(backend$distinct(rows = 1, cols = c("x_1", "x_2", "c_1", "c_2"))$x_1, len = 1)
expect_numeric(backend$distinct(rows = 1, cols = c("x_1", "x_2", "c_1", "c_2"))$x_2, len = 1)
expect_list(backend$distinct(rows = seq(20), cols = c("x_1", "x_2", "c_1", "c_2")), len = 4, names = "strict") # slow query
expect_equal(backend$distinct(rows = seq(20), cols = c("x_1", "x_2", "c_1", "c_2"))$c_1, c("a", "b"))
expect_equal(backend$distinct(rows = seq(20), cols = c("x_1", "x_2", "c_1", "c_2"))$c_2, c("a1", "a2", "a3"))
expect_numeric(backend$distinct(rows = seq(20), cols = c("x_1", "x_2", "c_1", "c_2"))$x_1)
expect_numeric(backend$distinct(rows = seq(20), cols = c("x_1", "x_2", "c_1", "c_2"))$x_2)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2")), len = 4, names = "strict") # fast query
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2"))$c_1, c("a", "b"))
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2"))$c_2, c("a1", "a2", "a3"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2"))$x_1)
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2"))$x_2)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2", "c3")), len = 4, names = "strict")
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2", "c3"))$c_1, c("a", "b"))
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2", "c3"))$c_1, c("a", "b"))
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2", "c3"))$c_2, c("a1", "a2", "a3"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2", "c3"))$x_1)
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2", "c3"))$x_2)
# missings
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "x_2", "c_1", "c_2")), c("x_1" = 0, "x_2" = 0, "c_1" = 0, "c_2" = 0)) # slow query
expect_equal(backend$missings(rows = seq(100), cols = c("x_1", "x_2", "c_1", "c_2")), c("x_1" = 0, "x_2" = 0, "c_1" = 0, "c_2" = 0)) # fast query
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "x_2", "c_1", "c_2", "c_3")), c("x_1" = 0, "x_2" = 0, "c_1" = 0, "c_2" = 0))
# task
expect_class(as_task_unsupervised(backend, id = "test"), "TaskUnsupervised")
})
test_that("data access works", {
# data
# [13] [14] [15] [16]
# [17] [18] [19] [20]
# [21] [22] [23] [24]
stack = terra::rast(nrows = 3, ncols = 4)
stack[] = 13:24
names(stack) = "y"
backend = DataBackendRaster$new(stack)
# [x] [x] [x] [x]
# [ ] [ ] [ ] [ ]
# [ ] [ ] [ ] [ ]
expect_equal(backend$data(rows = 1:4, cols = "y"), data.table(y = c(13, 14, 15, 16)))
# [ ] [ ] [ ] [ ]
# [ ] [ ] [ ] [ ]
# [x] [x] [x] [x]
expect_equal(backend$data(rows = 9:12, cols = "y"), data.table(y = c(21, 22, 23, 24)))
# [ ] [ ] [ ] [ ]
# [ ] [ ] [ ] [x]
# [x] [x] [ ] [ ]
expect_equal(backend$data(rows = 8:10, cols = "y"), data.table(y = c(20, 21, 22)))
# [x] [ ] [x] [ ]
# [ ] [ ] [ ] [x]
# [ ] [x] [x] [ ]
expect_equal(backend$data(rows = c(1, 3, 8, 10, 11), cols = "y"), data.table(y = c(13, 15, 20, 22, 23)))
})
test_that("data prototyp works", {
stack = generate_stack(list(
numeric_layer("x_1"),
factor_layer("y", levels = c("a", "b"))),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
expect_data_table(backend$data(rows = integer(0), cols = c("x_1", "y")), nrows = 0, ncols = 2)
})
test_that("in memory rasters work", {
stack = generate_stack(list(
numeric_layer("x_1", in_memory = TRUE),
factor_layer("c_1", levels = c("a", "b"), in_memory = TRUE)),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
# backend
expect_class(backend, "DataBackendRaster")
expect_equal(terra::inMemory(backend$stack), c(FALSE, FALSE))
expect_names(names(backend$stack), identical.to = c("x_1", "c_1"))
# active fields
expect_names(backend$colnames, identical.to = c("x_1", "c_1"))
expect_equal(backend$ncol, 2)
expect_equal(backend$rownames, seq(100))
expect_equal(backend$nrow, 100)
expect_class(backend$stack, "SpatRaster")
# data
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "c_1")), nrows = 100, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # block read
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "c_1"))), identical.to = c("x_1", "c_1"))
expect_data_table(backend$data(rows = seq(50), cols = c("x_1", "c_1")), nrows = 50, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # block read
expect_data_table(backend$data(rows = c(1, 50, 100), cols = c("x_1", "c_1")), nrows = 3, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # cell read
expect_names(names(backend$data(rows = c(1, 50, 100), cols = c("x_1", "c_1"))), identical.to = c("x_1", "c_1"))
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "c_1", "c_2")), nrows = 100, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # ignore cols
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "c_1", "c_2"))), identical.to = c("x_1", "c_1"))
# head
expect_data_table(backend$head(n = 10L), nrows = 10, ncols = 2, types = c("numeric", "factor"))
expect_names(names(backend$head(n = 10L)), identical.to = c("x_1", "c_1"))
# distinct
expect_list(backend$distinct(rows = 1, cols = c("x_1", "c_1")), len = 2, names = "strict") # slow query
expect_equal(backend$distinct(rows = 1, cols = c("x_1", "c_1"))$c_1, "a")
expect_numeric(backend$distinct(rows = 1, cols = c("x_1", "c_1"))$x_1, len = 1)
expect_list(backend$distinct(rows = seq(20), cols = c("x_1", "c_1")), len = 2, names = "strict") # slow query
expect_equal(backend$distinct(rows = seq(20), cols = c("x_1", "c_1"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(20), cols = c("x_1", "c_1"))$x_1)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "c_1")), len = 2, names = "strict") # fast query
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "c_1"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "c_1"))$x_1)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2")), len = 2, names = "strict")
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2"))$x_1)
# missings
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "c_1")), c("x_1" = 0, "c_1" = 0)) # slow query
expect_equal(backend$missings(rows = seq(100), cols = c("x_1", "c_1")), c("x_1" = 0, "c_1" = 0)) # fast query
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "c_1", "c_2")), c("x_1" = 0, "c_1" = 0))
})
test_that("in memory and disk rasters work", {
stack = generate_stack(list(
numeric_layer("x_1", in_memory = TRUE),
factor_layer("c_1", levels = c("a", "b"))),
dimension = 10,
)
backend = DataBackendRaster$new(stack)
# backend
expect_class(backend, "DataBackendRaster")
expect_equal(terra::inMemory(backend$stack), c(FALSE, FALSE))
expect_names(names(backend$stack), identical.to = c("x_1", "c_1"))
# active fields
expect_names(backend$colnames, identical.to = c("x_1", "c_1"))
expect_equal(backend$ncol, 2)
expect_equal(backend$rownames, seq(100))
expect_equal(backend$nrow, 100)
expect_class(backend$stack, "SpatRaster")
# data
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "c_1")), nrows = 100, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # block read
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "c_1"))), identical.to = c("x_1", "c_1"))
expect_data_table(backend$data(rows = seq(50), cols = c("x_1", "c_1")), nrows = 50, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # block read
expect_data_table(backend$data(rows = c(1, 50, 100), cols = c("x_1", "c_1")), nrows = 3, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # cell read
expect_names(names(backend$data(rows = c(1, 50, 100), cols = c("x_1", "c_1"))), identical.to = c("x_1", "c_1"))
expect_data_table(backend$data(rows = seq(100), cols = c("x_1", "c_1", "c_2")), nrows = 100, ncols = 2, col.names = "strict", types = c("numeric", "factor")) # ignore cols
expect_names(names(backend$data(rows = seq(100), cols = c("x_1", "c_1", "c_2"))), identical.to = c("x_1", "c_1"))
# head
expect_data_table(backend$head(n = 10L), nrows = 10, ncols = 2, types = c("numeric", "factor"))
expect_names(names(backend$head(n = 10L)), identical.to = c("x_1", "c_1"))
# distinct
expect_list(backend$distinct(rows = 1, cols = c("x_1", "c_1")), len = 2, names = "strict") # slow query
expect_equal(backend$distinct(rows = 1, cols = c("x_1", "c_1"))$c_1, "a")
expect_numeric(backend$distinct(rows = 1, cols = c("x_1", "c_1"))$x_1, len = 1)
expect_list(backend$distinct(rows = seq(20), cols = c("x_1", "c_1")), len = 2, names = "strict") # slow query
expect_equal(backend$distinct(rows = seq(20), cols = c("x_1", "c_1"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(20), cols = c("x_1", "c_1"))$x_1)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "c_1")), len = 2, names = "strict") # fast query
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "c_1"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "c_1"))$x_1)
expect_list(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2")), len = 2, names = "strict")
expect_equal(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2"))$c_1, c("a", "b"))
expect_numeric(backend$distinct(rows = seq(100), cols = c("x_1", "c_1", "c_2"))$x_1)
# missings
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "c_1")), c("x_1" = 0, "c_1" = 0)) # slow query
expect_equal(backend$missings(rows = seq(100), cols = c("x_1", "c_1")), c("x_1" = 0, "c_1" = 0)) # fast query
expect_equal(backend$missings(rows = seq(10), cols = c("x_1", "c_1", "c_2")), c("x_1" = 0, "c_1" = 0))
})
# as_data_backend input formats ------------------------------------------------
test_that("as_data_backend works on SpatRaster objects", {
stack = generate_stack(list(
numeric_layer("x_1"),
numeric_layer("y")),
dimension = 10)
expect_class(as_data_backend(stack), "DataBackendRaster")
})
test_that("as_data_backend works on stars objects", {
skip_if_not_installed("stars")
requireNamespace("stars", quietly = TRUE)
stack = generate_stack(list(
numeric_layer("x_1"),
numeric_layer("y")),
dimension = 10)
stack = invoke(stars::st_as_stars, .x = stack, .opts = allow_partial_matching)
expect_class(as_data_backend(stack), "DataBackendRaster")
})
test_that("as_data_backend works on RasterBrick objects", {
skip_if_not_installed("raster")
requireNamespace("raster", quietly = TRUE)
stack = generate_stack(list(
numeric_layer("x_1"),
numeric_layer("y")),
dimension = 10, multi_layer_file = TRUE)
stack = invoke(raster::brick, stack, .opts = allow_partial_matching)
expect_class(as_data_backend(stack), "DataBackendRaster")
})
test_that("as_data_backend works on RasterStack objects", {
skip_if_not_installed("raster")
requireNamespace("raster", quietly = TRUE)
stack = generate_stack(list(
numeric_layer("x_1"),
numeric_layer("y")),
dimension = 10)
stack = invoke(raster::stack, x = stack, .opts = allow_partial_matching)
raster::crs(stack) = "EPSG:4326"
expect_class(as_data_backend(stack, target = "y"), "DataBackendRaster")
})
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.