[R-es] Consulta sobre la creación de una columna mediante una condición

Jorge I Velez jorgeivanvelez en gmail.com
Jue Oct 13 02:37:28 CEST 2016


Buenas noches, Oscar.

No entiendo muy bien que problema tines, pero intenta lo siguiente a
ver si produc lo que buscas:

R> #creo un data frame
R> node = c("TipoDTE","TipoDTE","Other")
R> value = c("33", "35", "")
R> j = data.frame(node, value)
R>
R> j
     node value
1 TipoDTE    33
2 TipoDTE    35
3   Other
R> with(j, ifelse(node == 'TipoDTE', value, ""))
[1] "2" "3" ""
R> j$TipoDTE.0 <- with(j, ifelse(node == 'TipoDTE', value, "")); j
     node value TipoDTE.0
1 TipoDTE    33         2
2 TipoDTE    35         3
3   Other
R> j$TipoDTE.0
[1] "2" "3" ""

Saludos,
Jorge.-


2016-10-12 10:09 GMT-05:00 Oscar Benitez <oscar.benitez1962 en gmail.com>:

> Hola
>
> Tengo una consulta simple pero que me está costando resolver
>
> #creo un data frame
> node = c("TipoDTE","TipoDTE","Other")
> value = c("33", "35", "")
> j = data.frame(node, value)
>
> en este punto el dataframe tiene dos campos "node" y "value" que R reconoce
> como factores de la siguiente manera:
> node:  Factor w/ 2 levels "Other","TipoDTE": 2 2 1
> value:   Factor w/ 3 levels "","33", "35" : 2 3 1
>
> Quiero crear un campo nuevo mediante una condición:
>
> j$TipoDTE.0<-ifelse (j$node=="TipoDTE",j$value,"")
>
> Y el resultado es:
>
> node value TipoDTE.0
> TipoDTE 33 2
> TipoDTE 35 3
> Other
>
>
> Lo que veo que está haciendo es colocar los niveles del factor en lugar del
> valor del factor....
> Evidentemente estoy haciendo algo mal, pero no encuentro qué es...
>
> Cualquier ayuda será apreciada.
>
> Saludos
>
>
> --
> Oscar Benitez
>
>         [[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
>

	[[alternative HTML version deleted]]



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