[R-es] una programación sencilla

Jorge I Velez jorgeivanvelez en gmail.com
Vie Dic 14 06:40:01 CET 2012


Hola Angela,
Podrias usar merge() para hacer lo que quieres.
Saludos,
Jorge.-

Sent from my phone. Please excuse my brevity and misspelling.

On Dec 14, 2012, at 4:37 PM, Angela Andrea Camargo Sanabria
<angela.andrea.camargo en gmail.com> wrote:

> Hola a todos,
>
> Escribo para preguntarles sobre cómo programar algo, que estoy segura es
> algo bastante sencillo para muchos de Uds que tienen amplia experiencia
> programando. Lo describo a continuación.
>
> Tengo una base de datos (file = datos) de especies (de plantas) en donde
> cada fila es un individuo de una especie con ciertos atributos (alrededor
> de 1500 filas = individuos). Quería anexar en esta base una columna que me
> indicara la forma de crecimiento de cada individuo de cada especie (si es
> árbol, arbusto, etc), pues no lo puse desde el principio. Esta información
> la tengo en otra base de datos (file = datos2), la cual tiene en cada fila
> el nombre de la especie y su respectiva forma de vida (un listado de 135
> especies). Mi idea fue hacer una rutina para que se leyera cada fila del
> archivo datos, se comparara con el listado de datos2 y se hiciera una nueva
> columna que tuviera las formas de vida de los 1500 individuos del archivo
> datos.
>
> Tardé 5 horas en escribir 5 líneas y como les comenté al final resultó,
> pero no sé si es la forma más "elegante" o "sofisticada" de hacerlo.
> Agradezco sus opiniones.
>
> file = datos
> Ind Especie Atributo1 Atributo n  1 B …    2 C  ...    3 B  .. ...   4 A
> ... ...   5 C  ... ...   6 D  ,,, ,,,   7 D ... ... ,,,,   8 A ....     9 B
> ...
>
> file = datos2
> Especie FormaVida  A árbol  B árbol  C arbusto  D hierba
> LF <- character ()
> for (i in 1:dim(datos2)[1]){
>  Sp <- as.vector(datos2 [i,2])
>  Sp2 <- which ((datos[,4]) == Sp)
>  #print (Sp2)
>  if (length (Sp2) > 0) LF [i] <- (as.character(datos [(as.numeric(Sp2)),
> 5])) else LF [i] <- "NA"
> }
>
> ----
> *Angela Andrea Camargo Sanabria*
> Estudiante Doctorado en Ciencias Biológicas
> Laboratorio de Ecología de poblaciones y comunidades tropicales
> Centro de Investigaciones en Ecosistemas (CIEco)
> UNAM, campus Morelia
> Antigua Carretera a Pátzcuaro # 8701
> Col. Ex-Hacienda de San José de la Huerta, CP 58190
> Morelia, Michoacán, México
> Tel.: 443-3222706 ext. 42511
> e-mail: aacamargo en cieco.unam.mx
> skype: angela.camargo26
>
>    [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es



Más información sobre la lista de distribución R-help-es