[R-es] Encontrar un dato y aņadirlo a otra columna

Samura . tont|to82 @end|ng |rom hotm@||@com
Mar Sep 22 22:45:53 CEST 2020


Buenas,
A ver si alguien sabe como hacer lo siguiente:

Tengo un df con letras y numeros, quiero que si me detecta un numero en concreto me a�ada dicho numero en otra columna.

Algo asi

df<-data.frame(c("AV 23","PEPE 34","QWE","AV 24","WERRR ER34","AV 25"))
colnames(df)<-c("nombre1")

df[grepl("AV 23",df$nombre1), "Nombre1_numero"]= "23"
df[grepl("AV 24",df$nombre1), "Nombre1_numero"]= "24"
df[grepl("AV 25",df$nombre1), "Nombre1_numero"]= "25"
df


nombre1              Nombre1_numero
AV 23                             23
PEPE 34                        NA
QWE                              NA
AV 24                              24
WERRR ER34               NA
AV 25                             25

osea, busca AV 23, 24, 25 en la columna, si lo encuentras pon el numero en otra columna, el resto de datos NA

como son muchos, para no repetir siempre lo mismo habia pensado en algo asi


df[grepl("AV \\d{2}",df$nombre1), "Nombre1_numero"]= "\\d{2}"

pero no se como poner ese "\\d{2}" ultimo para que me coloque el numero.

�Alguna idea?

	[[alternative HTML version deleted]]



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