Nothing
context("fslice")
data("iris")
test_that("fslice works with integers and no grouping", {
N <- c(1, 5, 17)
for (n in N) {
# first
expect_equal(
dplyr::slice_head(iris, n = n),
fslice(iris, n = n)
)
expect_equal(
dplyr::slice_head(iris, n = n),
fslice(iris, n = n, how = "first")
)
# last
expect_equal(
setRownames(dplyr::slice_tail(iris, n = n)),
fslice(iris, n = n, how = "last")
)
# min
expect_equal(
iris |> dplyr::slice_min(Petal.Length, n = n, with_ties = FALSE),
fslice(iris, n = n, how = "min", order.by = "Petal.Length")
)
# max
expect_equal(
iris |> dplyr::slice_max(Petal.Length, n = n, with_ties = FALSE),
fslice(iris, n = n, how = "max", order.by = "Petal.Length")
)
}
})
test_that("fslice works with proportions and no grouping", {
N <- c(0.5, 0.75)
for (n in N) {
# first
expect_equal(
dplyr::slice_head(iris, prop = n),
fslice(iris, n = n)
)
expect_equal(
dplyr::slice_head(iris, prop = n),
fslice(iris, n = n, how = "first")
)
# last
expect_equal(
setRownames(dplyr::slice_tail(iris, prop = n)),
fslice(iris, n = n, how = "last")
)
# min
expect_equal(
iris |> dplyr::slice_min(Petal.Length, prop = n, with_ties = FALSE),
fslice(iris, n = n, how = "min", order.by = "Petal.Length")
)
# max
expect_equal(
iris |> dplyr::slice_max(Petal.Length, prop = n, with_ties = FALSE),
fslice(iris, n = n, how = "max", order.by = "Petal.Length")
)
}
})
test_that("fslice works with grouping", {
N <- c(1, 5, 17)
for (n in N) {
# first
expect_equal(
iris |> dplyr::group_by(Species) |> dplyr::slice_head(n = n) |> qDF(),
fslice(iris, "Species", n = n, how = "first")
)
# last
expect_equal(
iris |> dplyr::group_by(Species) |> dplyr::slice_tail(n = n) |> qDF(),
fslice(iris, "Species", n = n, how = "last")
)
# min
expect_equal(
iris |> dplyr::group_by(Species) |> dplyr::slice_min(Petal.Length, n = n, with_ties = FALSE) |> qDF(),
fslice(iris, "Species", n = n, how = "min", order.by = "Petal.Length")
)
# max
expect_equal(
iris |> dplyr::group_by(Species) |> dplyr::slice_max(Petal.Length, n = n, with_ties = FALSE) |> qDF(),
fslice(iris, "Species", n = n, how = "max", order.by = "Petal.Length")
)
}
})
test_that("fslice works with ties", {
N <- 1 # c(1, 5, 17)
for (n in N) {
# min
expect_equal(
iris |> dplyr::group_by(Species) |> dplyr::slice_min(Petal.Length, n = n, with_ties = TRUE) |> qDF(),
fslice(iris, "Species", n = n, how = "min", order.by = "Petal.Length", with.ties = TRUE)
)
# max
expect_equal(
iris |> dplyr::group_by(Species) |> dplyr::slice_max(Petal.Length, n = n, with_ties = TRUE) |> qDF(),
fslice(iris, "Species", n = n, how = "max", order.by = "Petal.Length", with.ties = TRUE)
)
}
})
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.