David Camilo Gomez Medina
2023-Mar-31  17:11 UTC
[R-es] Extraer texto de una columna en Excel
Muchas gracias Carlos, lo que quiero hacer es lo siguiente: extraer el
texto que hay entre textura/s hasta el punto final.
Ejemplo:
*Moderadamente profundos, bien drenados, de textura franco arenosa a franco
arcillo arenosa. Fertilidad natural media*
Lo que quiero extraer sería:  *franco arenosa a franco arcillo arenosa *
Al final lo pude realizar de la siguiente manera:
df <- read_excel("Agrologia.xlsx")
df$Extracted_Text <- trimws(str_extract(df$CARACTERIS,
"(?<=textura?(?:[^a-zA-Z]|s)).*?(?=\\.)"))
Estoy abierto a cualquier sugerencia o comentario.
Muchas gracias.
On Fri, 31 Mar 2023 at 12:03, Carlos Ortega <cof en qualityexcellence.es>
wrote:
> Hola,
>
> Como no sé lo que querías, veo dos alternativas...
> Yo suelo usar "stringi" en vez de "stringr"
>
> #-----------------
> library(readxl)
> library(stringi)
> datos <- read_excel("Agrologia.xlsx")
> toextract <- unlist(stri_extract_all_fixed(datos$CARACTERIS,
"textura"))
>
> #--- Si quiero un dataframe completo donde CARACTERIS tenga
"textura" o
> "texturas"
> lineas_textura <- datos[ !is.na(toextract), ]
> #--- Si quiero los elementos de CARACTERIS que tiene "textura" o
"texturas"
> campo_textura <- datos$CARACTERIS[ !is.na((toextract))]
> #---------------
>
> Gracias,
>
> Carlos Ortega
> www.qualityexcellence.es
>
> El vie, 31 mar 2023 a las 17:20, David Camilo Gomez Medina (<
> dcgomezme en unal.edu.co>) escribió:
>
>> Buen día,
>>
>> Estoy extrayendo solo una parte de texto de una celda en Excel, pero
>> tengo un inconveniente. Quiero extraer el texto desde donde dice
>> *textura* hasta el siguiente punto, pero hay unas celdas que dicen
>> *texturas* y me está extrayendo también ésta *s*, cómo podría cambiar
el
>> siguiente código para que me extraiga tanto textura como texturas.
Quedo
>> muy atento, gracias.
>>
>> rm(list = ls())
>>
>> library(readxl)
>> library(stringr)
>> library(openxlsx)
>>
>> setwd("~/INFO_DIEGO/R")
>>
>> df <- read_excel("Agrologia.xlsx")
>>
>> df$Extracted_Text <- str_extract(df$CARACTERIS,
"(<=?textura?).*?\\.")
>>
>> write.xlsx(df, "modified_file.xlsx")
>>
>>
>>
>>
>> *Aviso legal:* El contenido de este mensaje y los archivos adjuntos son
>> confidenciales y de uso exclusivo de la Universidad Nacional de
Colombia.
>> Se encuentran dirigidos sólo para el uso del destinatario al cual van
>> enviados. La reproducción, lectura y/o copia se encuentran prohibidas a
>> cualquier persona diferente a este y puede ser ilegal. Si usted lo ha
>> recibido por error, infórmenos y elimínelo de su correo. Los Datos
>> Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra
>> Política de Datos Personales que podrá consultar en la página web
>> www.unal.edu.co. Las opiniones, informaciones, conclusiones y cualquier
>> otro tipo de dato contenido en este correo electrónico, no relacionados
con
>> la actividad de la Universidad Nacional de Colombia, se entenderá como
>> personales y de ninguna manera son avaladas por la Universidad.
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>
>
> --
> Saludos,
> Carlos Ortega
> www.qualityexcellence.es
>
-- 
*Aviso legal:* El contenido de este mensaje y los archivos adjuntos son 
confidenciales y de uso exclusivo de la Universidad Nacional de Colombia. 
Se encuentran dirigidos sólo para el uso del destinatario al cual van 
enviados. La reproducción, lectura y/o copia se encuentran prohibidas a 
cualquier persona diferente a este y puede ser ilegal. Si usted lo ha 
recibido por error, infórmenos y elimínelo de su correo. Los Datos 
Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra 
Política de Datos Personales que podrá consultar en la página web 
www.unal.edu.co <http://www.unal.edu.co/>.* *Las opiniones, informaciones,
conclusiones y cualquier otro tipo de dato contenido en este correo 
electrónico, no relacionados con la actividad de la Universidad Nacional de 
Colombia, se entenderá como personales y de ninguna manera son avaladas por 
la Universidad.
	[[alternative HTML version deleted]]
David Camilo Gomez Medina
2023-Mar-31  17:23 UTC
[R-es] Extraer texto de una columna en Excel
Muchas gracias por la alternativa de utilizar la librería stringi, Carlos, no la conocía. On Fri, 31 Mar 2023 at 12:11, David Camilo Gomez Medina < dcgomezme en unal.edu.co> wrote:> Muchas gracias Carlos, lo que quiero hacer es lo siguiente: extraer el > texto que hay entre textura/s hasta el punto final. > Ejemplo: > *Moderadamente profundos, bien drenados, de textura franco arenosa a > franco arcillo arenosa. Fertilidad natural media* > Lo que quiero extraer sería: *franco arenosa a franco arcillo arenosa * > > Al final lo pude realizar de la siguiente manera: > > df <- read_excel("Agrologia.xlsx") > > df$Extracted_Text <- trimws(str_extract(df$CARACTERIS, > "(?<=textura?(?:[^a-zA-Z]|s)).*?(?=\\.)")) > > Estoy abierto a cualquier sugerencia o comentario. > > Muchas gracias. > > On Fri, 31 Mar 2023 at 12:03, Carlos Ortega <cof en qualityexcellence.es> > wrote: > >> Hola, >> >> Como no sé lo que querías, veo dos alternativas... >> Yo suelo usar "stringi" en vez de "stringr" >> >> #----------------- >> library(readxl) >> library(stringi) >> datos <- read_excel("Agrologia.xlsx") >> toextract <- unlist(stri_extract_all_fixed(datos$CARACTERIS, "textura")) >> >> #--- Si quiero un dataframe completo donde CARACTERIS tenga "textura" o >> "texturas" >> lineas_textura <- datos[ !is.na(toextract), ] >> #--- Si quiero los elementos de CARACTERIS que tiene "textura" o >> "texturas" >> campo_textura <- datos$CARACTERIS[ !is.na((toextract))] >> #--------------- >> >> Gracias, >> >> Carlos Ortega >> www.qualityexcellence.es >> >> El vie, 31 mar 2023 a las 17:20, David Camilo Gomez Medina (< >> dcgomezme en unal.edu.co>) escribió: >> >>> Buen día, >>> >>> Estoy extrayendo solo una parte de texto de una celda en Excel, pero >>> tengo un inconveniente. Quiero extraer el texto desde donde dice >>> *textura* hasta el siguiente punto, pero hay unas celdas que dicen >>> *texturas* y me está extrayendo también ésta *s*, cómo podría cambiar >>> el siguiente código para que me extraiga tanto textura como texturas. Quedo >>> muy atento, gracias. >>> >>> rm(list = ls()) >>> >>> library(readxl) >>> library(stringr) >>> library(openxlsx) >>> >>> setwd("~/INFO_DIEGO/R") >>> >>> df <- read_excel("Agrologia.xlsx") >>> >>> df$Extracted_Text <- str_extract(df$CARACTERIS, "(<=?textura?).*?\\.") >>> >>> write.xlsx(df, "modified_file.xlsx") >>> >>> >>> >>> >>> *Aviso legal:* El contenido de este mensaje y los archivos adjuntos son >>> confidenciales y de uso exclusivo de la Universidad Nacional de Colombia. >>> Se encuentran dirigidos sólo para el uso del destinatario al cual van >>> enviados. La reproducción, lectura y/o copia se encuentran prohibidas a >>> cualquier persona diferente a este y puede ser ilegal. Si usted lo ha >>> recibido por error, infórmenos y elimínelo de su correo. Los Datos >>> Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra >>> Política de Datos Personales que podrá consultar en la página web >>> www.unal.edu.co. Las opiniones, informaciones, conclusiones y cualquier >>> otro tipo de dato contenido en este correo electrónico, no relacionados con >>> la actividad de la Universidad Nacional de Colombia, se entenderá como >>> personales y de ninguna manera son avaladas por la Universidad. >>> _______________________________________________ >>> R-help-es mailing list >>> R-help-es en r-project.org >>> https://stat.ethz.ch/mailman/listinfo/r-help-es >>> >> >> >> -- >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >-- *Aviso legal:* El contenido de este mensaje y los archivos adjuntos son confidenciales y de uso exclusivo de la Universidad Nacional de Colombia. Se encuentran dirigidos sólo para el uso del destinatario al cual van enviados. La reproducción, lectura y/o copia se encuentran prohibidas a cualquier persona diferente a este y puede ser ilegal. Si usted lo ha recibido por error, infórmenos y elimínelo de su correo. Los Datos Personales serán tratados conforme a la Ley 1581 de 2012 y a nuestra Política de Datos Personales que podrá consultar en la página web www.unal.edu.co <http://www.unal.edu.co/>.* *Las opiniones, informaciones, conclusiones y cualquier otro tipo de dato contenido en este correo electrónico, no relacionados con la actividad de la Universidad Nacional de Colombia, se entenderá como personales y de ninguna manera son avaladas por la Universidad. [[alternative HTML version deleted]]