Supongamos que tengo una matriz foo
de la siguiente manera:la conversión de una matriz a una lista
foo <- cbind(c(1,2,3), c(15,16,17))
> foo
[,1] [,2]
[1,] 1 15
[2,] 2 16
[3,] 3 17
me gustaría convertirlo en una lista que se parece a
[[1]]
[1] 1 15
[[2]]
[1] 2 16
[[3]]
[1] 3 17
Puede hacerlo como siguiente manera:
lapply(apply(foo, 1, function(x) list(c(x[1], x[2]))), function(y) unlist(y))
estoy interesado en una altern método educativo que no es tan complicado. Tenga en cuenta que si solo hace apply(foo, 1, function(x) list(c(x[1], x[2])))
, devuelve una lista dentro de una lista, que espero evitar.
Su 'as.list() método' es perfecto. Y también mucho más rápido que mi método (0.847 s v. 2.45 s). – andrewj