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]]
Juan Carlos Lopez Mesa
2020-Sep-22  21:32 UTC
[R-es] Encontrar un dato y añadirlo a otra columna
Hola, prueba con esto df %>% mutate(var = parse_number(nombre1)) Saludos El mar., 22 sept. 2020 a las 15:46, Samura . (<tontito82 en hotmail.com>) escribió:> 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]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- ?*Esta transmisión electrónica es propiedad de la Universidad Nacional de Colombia, su contenido es confidencial y únicamente lo puede recibir la persona o entidad a quien va dirigido. Se prohíbe: Usar esta información para propósitos ajenos a la Universidad, divulgar su contenido a personas externas, *_reproducir_ total y/o parcialmente la información contenida. No se asume responsabilidad sobre información, opiniones o criterios contenidos en este correo electrónico que no estén relacionados con la Universidad. Si usted no es el destinatario de este correo electrónico, se le notifica que el uso de esta información, así como su difusión, distribución o copia, está estrictamente prohibida, por favor notifique al remitente inmediatamente por este mismo medio y elimine lo antes posible este mensaje. La Universidad Nacional de Colombia, identificada con NIT 899.999.063, con domicilio principal en la ciudad de Bogotá D.C. en la Carrera 45 # 26-85 Edif. Uriel Gutiérrez Bogotá D.C., Colombia y con teléfono (+57 1) 316 50 00, en cumplimiento de la Ley 1581 de 2012 y el artículo 15 del Decreto 1377 de 2013, como responsable del tratamiento de información de datos personales, desea informar a todas las personas cuyos datos personales se encuentran en nuestras bases de datos, que los mismos se encuentran bajo medidas que garantizan la seguridad, confidencialidad e integridad, y su tratamiento se realiza con base en nuestra Política de Tratamiento de Datos Personales, esta información se podrá consultar en la página web _unal.edu.co <http://www.unal.edu.co/> o ser solicitada para su conocimiento en el correo electrónico protecdatos_na en unal.edu.co <mailto:protecdatos_na en unal.edu.co>. Canal por el que también puede ejercer sus derechos como titular dentro de los cuales se contempla conocer, actualizar, rectificar y revocar las autorizaciones dadas a las finalidades aplicables para el desarrollo de las relaciones laborales, académicas, contractuales y todas las relacionadas con el objeto social de la Universidad.?___ [[alternative HTML version deleted]]
Con parse_number sacaria todos los numeros de la columna,
pero lo que busco es sacar solo los que empiezan por AV y descartar el resto.
De todas maneras muchas gracias, le voy a dar otra vuelta.
________________________________
De: Juan Carlos Lopez Mesa <jclopez5 en unal.edu.co>
Enviado: martes, 22 de septiembre de 2020 21:32
Para: Samura . <tontito82 en hotmail.com>
Cc: r-help-es en r-project.org <r-help-es en r-project.org>
Asunto: Re: [R-es] Encontrar un dato y a?adirlo a otra columna
Hola,
prueba con esto
df %>% mutate(var = parse_number(nombre1))
Saludos
El mar., 22 sept. 2020 a las 15:46, Samura . (<tontito82 en
hotmail.com<mailto:tontito82 en hotmail.com>>) escribi?:
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]]
_______________________________________________
R-help-es mailing list
R-help-es en r-project.org<mailto:R-help-es en r-project.org>
https://stat.ethz.ch/mailman/listinfo/r-help-es
?Esta transmisi?n electr?nica es propiedad de la Universidad Nacional de
Colombia, su contenido es confidencial y ?nicamente lo puede recibir la persona
o entidad a quien va dirigido. Se proh?be: Usar esta informaci?n para prop?sitos
ajenos a la Universidad, divulgar su contenido a personas externas, reproducir
total y/o parcialmente la informaci?n contenida. No se asume responsabilidad
sobre informaci?n, opiniones o criterios contenidos en este correo electr?nico
que no est?n relacionados con la Universidad. Si usted no es el destinatario de
este correo electr?nico, se le notifica que el uso de esta informaci?n, as? como
su difusi?n, distribuci?n o copia, est? estrictamente prohibida, por favor
notifique al remitente inmediatamente por este mismo medio y elimine lo antes
posible este mensaje. La Universidad Nacional de Colombia, identificada con NIT
899.999.063, con domicilio principal en la ciudad de Bogot? D.C. en la Carrera
45 # 26-85 Edif. Uriel Guti?rrez Bogot? D.C., Colombia y con tel?fono (+57 1)
316 50 00, en cumplimiento de la Ley 1581 de 2012 y el art?culo 15 del Decreto
1377 de 2013, como responsable del tratamiento de informaci?n de datos
personales, desea informar a todas las personas cuyos datos personales se
encuentran en nuestras bases de datos, que los mismos se encuentran bajo medidas
que garantizan la seguridad, confidencialidad e integridad, y su tratamiento se
realiza con base en nuestra Pol?tica de Tratamiento de Datos Personales, esta
informaci?n se podr? consultar en la p?gina web
unal.edu.co<http://www.unal.edu.co/> o ser solicitada para su conocimiento
en el correo electr?nico protecdatos_na en unal.edu.co<mailto:protecdatos_na
en unal.edu.co>. Canal por el que tambi?n puede ejercer sus derechos como
titular dentro de los cuales se contempla conocer, actualizar, rectificar y
revocar las autorizaciones dadas a las finalidades aplicables para el desarrollo
de las relaciones laborales, acad?micas, contractuales y todas las relacionadas
con el objeto social de la Universidad.?
	[[alternative HTML version deleted]]