This function creates a cross product of multiple lists, similar to tidyr::expand_grid()
but with a more convenient interface that doesn't require wrapping arguments in an
extra list(). It's useful for generating combinations of parameters for analysis.
expand_list(...)A list of lists, where each inner list contains one combination of values from the input arguments
# Create combinations of parameters
combinations <- plnr::expand_list(
a = 1:2,
b = c("a", "b")
)
# View the combinations
str(combinations)
#> List of 4
#> $ :List of 2
#> ..$ a: int 1
#> ..$ b: chr "a"
#> $ :List of 2
#> ..$ a: int 1
#> ..$ b: chr "b"
#> $ :List of 2
#> ..$ a: int 2
#> ..$ b: chr "a"
#> $ :List of 2
#> ..$ a: int 2
#> ..$ b: chr "b"
# Compare with tidyr::expand_grid
tidyr::expand_grid(list(
a = 1:2,
b = c("a", "b")
))
#> # A tibble: 2 × 1
#> `list(a = 1:2, b = c("a", "b"))`
#> <named list>
#> 1 <int [2]>
#> 2 <chr [2]>