Repeats x
as necessary to make n
of them.
Does not try to simplify x
.
make_list(x, n, lenx = ifelse(is.vector(x), length(x), 1))
x | the object to be duplicated |
---|---|
n | the number of times to be duplicated |
lenx | the length of item |
a list of x
duplicated n
times
m <- matrix(c(1:6), nrow=3, dimnames = list(c("r1", "r2", "r3"), c("c2", "c1"))) make_list(m, n = 1)#> [[1]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #>make_list(m, n = 2)#> [[1]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #> #> [[2]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #>make_list(m, n = 5)#> [[1]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #> #> [[2]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #> #> [[3]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #> #> [[4]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #> #> [[5]] #> c2 c1 #> r1 1 4 #> r2 2 5 #> r3 3 6 #>#> [[1]] #> [1] 1 2 #> #> [[2]] #> [1] 1 2 #> #> [[3]] #> [1] 1 2 #> #> [[4]] #> [1] 1 2 #>#> [[1]] #> [,1] [,2] #> [1,] 1 3 #> [2,] 2 4 #> #> [[2]] #> [,1] [,2] #> [1,] 101 103 #> [2,] 102 104 #> #> [[3]] #> [,1] [,2] #> [1,] 1 3 #> [2,] 2 4 #> #> [[4]] #> [,1] [,2] #> [1,] 101 103 #> [2,] 102 104 #>make_list(l, n = 1) # Warning because l is trimmed.#> Warning: n not evenly divisible by length(x)#> [,1] [,2] #> [1,] 1 3 #> [2,] 2 4make_list(l, n = 5) # Warning because length(l) (i.e., 2) not evenly divisible by 5#> Warning: n not evenly divisible by length(x)#> [[1]] #> [,1] [,2] #> [1,] 1 3 #> [2,] 2 4 #> #> [[2]] #> [,1] [,2] #> [1,] 101 103 #> [2,] 102 104 #> #> [[3]] #> [,1] [,2] #> [1,] 1 3 #> [2,] 2 4 #> #> [[4]] #> [,1] [,2] #> [1,] 101 103 #> [2,] 102 104 #> #> [[5]] #> [,1] [,2] #> [1,] 1 3 #> [2,] 2 4 #>#> [[1]] #> [1] "r10" "r11" #> #> [[2]] #> [1] "c10" "c11" #>#> [[1]] #> [[1]][[1]] #> [1] "r10" "r11" #> #> [[1]][[2]] #> [1] "c10" "c11" #> #> #> [[2]] #> [[2]][[1]] #> [1] "r10" "r11" #> #> [[2]][[2]] #> [1] "c10" "c11" #> #>