[R-es] reemplazar valores en texto según condiciones

juan manuel dias ju@m@d|@@ @end|ng |rom gm@||@com
Jue Mar 9 15:05:03 CET 2023


Muchas gracias a ambos!
Estoy haciendo con ejemplo de Carlos, con regex y funciona!!


El jue, 9 mar 2023 a las 10:59, Proyecto R-UCA (<r-uca using uca.es>) escribió:

> Buenas,
>
> Se me hace raro que la función no admita un parámetro para eso.
>
> Una opción es hacerlo en dos pasos:
> P1: Reemplaza p10, p20, ... por algo como q10, q20, ...
> P2: Haz el reemplazo que quieres.
>
> Igualmente puedes hacer el reemplazo que haces y en un segundo paso
> reemplazar p10_integra_datos por p10_cuales_rep, ...
>
> Un saludo, Manuel.
>
> El jue, 09-03-2023 a las 10:20 -0300, juan manuel dias escribió:
> > Hola,
> > Algo que me está pasando con esta función es lo siguiente:
> > A "p1" lo tengo que reemplazar por "p1_integra_datos" y a "p10" por
> > "p10_cuales_rep", pero como p10 contiene p1, y así pasa con otras
> preguntas
> > (p2 y p20, por ejemplo),
> > me los reemplaza en ambas, cuándo lo que busco es otra cosa.
> >
> > reglas$condicion_final <- stri_replace_all_fixed(reglas$condicion_minus,
> > c("p1","p2","p3","p4","p5","p6","p7","p8","p9","p10"),
> >
> c("p1_integra_datos","p2_recop_dat","p3_como_recop","p4_bases_prop","p5_cuales_bases",
> >
> "p6_cuanto_integ_dat","p7_tec_integr_dat","p8_documen_pol_int","p9_report_dat","p10_cuales_rep"),
> > vectorize_all = FALSE)
> >
> > Se les ocurre como resolverlo, estoy agregando un guión bajo después de
> > cada pregunta p1_ p10_ para que esto no pase, pero no se me ocurre
> > como hacerlo en el código.
> >
> > Muchas gracias! Juan.
> >
> > El mar, 7 mar 2023 a las 14:11, Carlos Ortega (<cof using qualityexcellence.es
> >)
> > escribió:
> >
> > > Hola,
> > >
> > > Dentro de la librería "stringi" tienes la posibilidad de hacer lo que
> > > quieres de forma vectorizada y super eficiente.
> > > De esta forma..:
> > >
> > > library(stringi)
> > > texto_nuevo <- stri_replace_all_fixed(texto, c('p1', 'p2'),
> > > c('p1_integra_datos', 'p2_recop_dat'), vectorize_all = FALSE)
> > >
> > > Gracias,
> > > Carlos Ortega
> > >
> https://urldefense.com/v3/__http://www.qualityexcellence.es__;!!D9dNQwwGXtA!SO5aun-Yamxtje74i5V9XQrQWI1Q_2DNWSIHAcTX9KKrRMnoOhf63fSSytvNHICE1skDvn91OxPAun4$
> > >
> > >
> > > El mar, 7 mar 2023 a las 18:04, juan manuel dias (<juamadias using gmail.com
> >)
> > > escribió:
> > >
> > > > Hola, como andan! Espero que bien!
> > > > Tengo dos bases, A) tiene una variable texto en la que deseo
> reemplazar
> > > > ciertas partes y B) tengo las condiciones para cambiar ese texto de
> la
> > > > base
> > > > A.
> > > >
> > > > Base A
> > > >
> > > > texto
> > > > si p1 = 1 o 2 = 1,3
> > > > si p1 = 3 o 4 = 1
> > > > si p1 = 5 = 0,7
> > > > si p1 = 5 = 0,7
> > > > si p1 = 6 = 0
> > > > si p1 = 7 = "no aplica"
> > > > si p2 = 1 & p3 = 1 = 0,5
> > > > si p2 = 1 & p3 = 2 = 0,7
> > > > si p2 = 1 & p3 = 4 o 3 = 1
> > > > si p2 = 1 & p3 = 5 = 0,5
> > > > si p2 = 1 & p3 = 6 = 0,5
> > > > si p2 = 2 = 0
> > > > si p2 = 3 = 0
> > > > si p2 = 4 = no aplica
> > > > Base B
> > > >
> > > > texto_a_reemplazar_en_base_A texto_final_en_A
> > > > p1 p1_integra_datos
> > > > p2 p2_recop_dat
> > > >
> > > > Lo estoy haciendo con condiciones IF ELSE pero se me hace un código
> muy
> > > > largo.
> > > > Estoy probando de armar un for que recorra base A y lo reemplace por
> el
> > > > texto que está en Base B.
> > > >
> > > > Si alguno se le ocurre más que agradecido!
> > > >
> > > > Gracias! Juan.
> > > >
> > > >         [[alternative HTML version deleted]]
> > > >
> > > > _______________________________________________
> > > > R-help-es mailing list
> > > > R-help-es using r-project.org
> > > >
> https://urldefense.com/v3/__https://stat.ethz.ch/mailman/listinfo/r-help-es__;!!D9dNQwwGXtA!SO5aun-Yamxtje74i5V9XQrQWI1Q_2DNWSIHAcTX9KKrRMnoOhf63fSSytvNHICE1skDvn91JE_WlVY$
> > > >
> > > >
> > >
> > >
> > > --
> > > Saludos,
> > > Carlos Ortega
> > >
> https://urldefense.com/v3/__http://www.qualityexcellence.es__;!!D9dNQwwGXtA!SO5aun-Yamxtje74i5V9XQrQWI1Q_2DNWSIHAcTX9KKrRMnoOhf63fSSytvNHICE1skDvn91OxPAun4$
> > >
> > >
> >
> >         [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es using r-project.org
> >
> https://urldefense.com/v3/__https://stat.ethz.ch/mailman/listinfo/r-help-es__;!!D9dNQwwGXtA!SO5aun-Yamxtje74i5V9XQrQWI1Q_2DNWSIHAcTX9KKrRMnoOhf63fSSytvNHICE1skDvn91JE_WlVY$
> >
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using 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