Nothing
test_that("bind() handles named lists", {
data <- list(
alpha = list(A = 1, B = 2),
beta = list(A = 3, B = 4),
gamma = list(A = 5, B = 6)
)
actual <- bind(data)
expected <- data.frame(
Index = names(data),
A = c(1, 3, 5),
B = c(2, 4, 6),
stringsAsFactors = FALSE
)
expect_equal(actual, expected)
})
test_that("bind() warns on name collision", {
data <- list(alpha = list(Index = 1), beta = list(Index = 2))
expect_error(bind(data))
})
test_that("bind() handles data.frames with potentially different names", {
data <- list(
a = data.frame(A = 1, B = 2),
b = data.frame(A = 1, C = 3)
)
bound <- bind(data)
expected <- data.frame(
Index = c("a", "b"),
A = c(1, 1),
B = c(2, NA),
C = c(NA, 3),
stringsAsFactors = FALSE
)
expect_identical(bound, expected)
})
test_that("bind() preserves order where possible", {
data <- list(
a = data.frame(A = 1, C = 3),
b = data.frame(A = 1, B = 2, C = 3)
)
bound <- bind(data)
expect_equal(names(bound), c("Index", "A", "B", "C"))
})
test_that("bind() handles unnamed lists with explicit name", {
data <- list(
list(1, 2, 3),
list(4, 5, 6),
list(7, 8, 9)
)
actual <- bind(data, names = c("A", "B", "C"))
expected <- data.frame(
A = c(1, 4, 7),
B = c(2, 5, 8),
C = c(3, 6, 9)
)
expect_equal(actual, expected)
})
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.