I am happy to announce that the package listr
is now available from CRAN.
Since the previous post on
version 0.0.1 the listr
package has gained three new functions.
For the pattern I found myself constantly applying:
my_list |>
list_bind(everything()) |>
list_extract(1)
there is now a short-cut:
my_list |>
list_bind_all()
which will save you some typing and lead to more concise code.
Also new in listr
are two functions for checking the type of list elements.
my_list_1 <- list(
data.frame(x = 1:5, y = rnorm(5)),
data.frame(x = 6:10, y = rnorm(5))
)
my_list_2 <- list(
data.frame(x = 1:5, y = rnorm(5)),
tibble::tibble(x = 6:10, y = rnorm(5))
)
list_is_same_class(my_list_1)
## [1] TRUE
list_is_same_class(my_list_2)
## [1] FALSE
list_is_compatible_class(my_list_2)
## [1] TRUE
While list_is_same_class()
strictly checks whether all elements do have
equal classes, list_is_compatible_class()
will check for overlaps in the
vector returned by class
.
The package is now on CRAN, so using it is just one install.packages("listr")
away.
After playing a bit with different ways to print lists in R I have for
now postponed the plan to introduce a nicer way to do so.
It will probably be added at some time in the future, but finding a way to
print lists in a concise but useful manner is really hard and for now I would
like to focus on adding useful functions to listr
.
Those are already in development and I hope to add some more polish to the
package so I can publish a version 0.1 really soon.