Nothing
# --- tidyselect helpers in select ---
test_that("select with starts_with", {
df <- data.frame(mpg = 1, cyl = 2, disp = 3)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(starts_with("m")) |> collect()
expect_equal(names(result), "mpg")
})
test_that("select with ends_with", {
df <- data.frame(mpg = 1, cyl = 2, disp = 3)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(ends_with("g")) |> collect()
expect_equal(names(result), "mpg")
})
test_that("select with contains", {
df <- data.frame(mpg = 1, cyl = 2, disp = 3)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(contains("is")) |> collect()
expect_equal(names(result), "disp")
})
test_that("select with everything()", {
df <- data.frame(a = 1, b = 2, c = 3)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(everything()) |> collect()
expect_equal(names(result), c("a", "b", "c"))
})
test_that("select with negation (deselect)", {
df <- data.frame(a = 1, b = 2, c = 3)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(-b) |> collect()
expect_equal(names(result), c("a", "c"))
})
test_that("select with renaming", {
df <- data.frame(a = 1, b = 2)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(alpha = a, b) |> collect()
expect_equal(names(result), c("alpha", "b"))
expect_equal(result$alpha, 1)
})
test_that("select with last_col()", {
df <- data.frame(a = 1, b = 2, c = 3)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |> select(last_col()) |> collect()
expect_equal(names(result), "c")
})
# --- across in summarise ---
test_that("across in summarise applies function to selected columns", {
df <- data.frame(g = c("a", "a", "b"), x = c(1.0, 2.0, 3.0),
y = c(10.0, 20.0, 30.0), stringsAsFactors = FALSE)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |>
group_by(g) |>
summarise(across(c(x, y), mean)) |>
collect()
expect_equal(result$x[result$g == "a"], 1.5)
expect_equal(result$y[result$g == "a"], 15)
})
test_that("across with named function list", {
df <- data.frame(g = c("a", "a", "b"), x = c(1.0, 2.0, 3.0),
stringsAsFactors = FALSE)
f <- tempfile(fileext = ".vtr")
on.exit(unlink(f))
write_vtr(df, f)
result <- tbl(f) |>
group_by(g) |>
summarise(across(x, list(total = sum, avg = mean))) |>
collect()
expect_true("x_total" %in% names(result))
expect_true("x_avg" %in% names(result))
expect_equal(result$x_total[result$g == "a"], 3)
expect_equal(result$x_avg[result$g == "a"], 1.5)
})
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.