[R-es] Preservar el nombre de un nodo en una lista después de unir dos listas diferentes
David Mendez
evion12000 en gmail.com
Mar Nov 9 04:04:27 CET 2010
Pregunta básica sobre listas, tengo dos listas: anoml (compuesta por
67 dataframes) y datos (67 vectores)
> str(anoml)
List of 67
$ Anom_e1751: num [1:456] -0.874 -0.874 -0.874 -0.874 -0.66 ...
$ Anom_e1756: num [1:456] -0.984 -0.984 -0.984 -0.874 -0.464 ...
$ Anom_e1773: num [1:456] -0.875 -0.95 -0.95 -0.838 -0.727 ...
...
str(datos)
List of 67
$ e1751.PtoLaCruz.cr.txt :'data.frame': 456 obs. of 4 variables:
..$ A : int [1:456] 1960 1960 1960 1960 1960 1960 1960 1960 1960 1960 ...
..$ M : int [1:456] 1 2 3 4 5 6 7 8 9 10 ...
..$ PRE: num [1:456] 0 0 0 0 10.6 ...
..$ COD: Factor w/ 2 levels "FE","O": 2 2 2 2 2 2 2 2 2 2 ...
$ e1756.ChaparroC.cr.txt :'data.frame': 456 obs. of 4 variables:
..$ A : int [1:456] 1960 1960 1960 1960 1960 1960 1960 1960 1960 1960 ...
..$ M : int [1:456] 1 2 3 4 5 6 7 8 9 10 ...
..$ PRE: num [1:456] 0 0 0 8.4 39.7 ...
..$ COD: Factor w/ 2 levels "FE","O": 2 2 2 2 2 2 2 2 2 2 ...
Se me ha ocurrido unirlas y les aplique
datoAnom <- mapply(cbind, datos, anoml, SIMPLIFY=F)
que efectivamente me dió:
str(datoAnom)
List of 67
$ e1751.PtoLaCruz.cr.txt :'data.frame': 456 obs. of 5 variables:
..$ A : int [1:456] 1960 1960 1960 1960 1960 1960 1960
1960 1960 1960 ...
..$ M : int [1:456] 1 2 3 4 5 6 7 8 9 10 ...
..$ PRE : num [1:456] 0 0 0 0 10.6 ...
..$ COD : Factor w/ 2 levels "FE","O": 2 2 2 2 2 2 2 2 2 2 ...
..$ dots[[2L]][[1L]]: num [1:456] -0.874 -0.874 -0.874 -0.874 -0.66 ...
$ e1756.ChaparroC.cr.txt :'data.frame': 456 obs. of 5 variables:
..$ A : int [1:456] 1960 1960 1960 1960 1960 1960 1960
1960 1960 1960 ...
..$ M : int [1:456] 1 2 3 4 5 6 7 8 9 10 ...
..$ PRE : num [1:456] 0 0 0 8.4 39.7 ...
..$ COD : Factor w/ 2 levels "FE","O": 2 2 2 2 2 2 2 2 2 2 ...
..$ dots[[2L]][[2L]]: num [1:456] -0.984 -0.984 -0.984 -0.874 -0.464 ...
El problema es que los nombres originales de la primera lista (Ej.
$Anom_e1751) han cambiado por las dimensiones de (..$
dots[[2L]][[2L]]) pero deseo conservarlos como se encontraban
originalmente, ¿Qué debo hacer para evitar esto? de modo que el
resultado luzca así:
$ e1751.PtoLaCruz.cr.txt :'data.frame': 456 obs. of 5 variables:
..$ A : int [1:456] 1960 1960 1960 1960 1960 1960 1960
1960 1960 1960 ...
..$ M : int [1:456] 1 2 3 4 5 6 7 8 9 10 ...
..$ PRE : num [1:456] 0 0 0 0 10.6 ...
..$ COD : Factor w/ 2 levels "FE","O": 2 2 2 2 2 2 2 2 2 2 ...
..$ $ Anom_e1751: num [1:456] -0.874 -0.874 -0.874 -0.874 -0.66 ...
--
David Méndez
If geography is prose, maps are iconography.
Lennart Meri
Más información sobre la lista de distribución R-help-es