Estimado Carlos Ortega Podría ser sh, pero creo awk (gawk), están para todos los sistemas, awk llegó a mi por un software de genética que lo utilizaba para colocar los resultados a cada individuo, por decirlo de alguna forma. Pero reformulando mi pregunta y mezclándola con su respuesta, fit <- lm (y ~ ??.., data = misdatos), suponiendo que mis datos tiene columnas A,B,C,D, ?, Una especie de plantilla que cree Fit <- lm( Y+ a, data=misdatos) Fit <- lm( Y+ a+b, data=misdatos) Fit <- lm( Y+ a+b+c, data=misdatos) Fit <- lm( Y+ b+c, data=misdatos) Fit <- lm( Y+ c, data=misdatos) Las diferentes combinaciones para todos los modelos posible, algunos ilógicos en la realidad pero estadísticamente posibles. Con un poco de trabajo esto no sería complicado, pero posiblemente hay alguna persona desarrolló facilitando la edición de código. Javier Rubén Marcuzzi De: Carlos Ortega Enviado: sábado, 2 de enero de 2016 17:02 Para: Javier Marcuzzi CC: r-help-es en r-project.org Asunto: Re: [R-es] T4 templates R Hola, En Linux, Mac puedes hacerlo de una forma bastante directa. ? Por un lado tienes tus ficheros que son las plantillas con el código R donde los campos a cambiar los tienes bien identificados. ? Y por otro tienes un programa que altera estas plantillas y que genera los "*.R" Un ejemplo podría ser este. A) El fichero con la plantilla: #-------Plantilla en el fichero: ModeloLineal.plantilla mysDatos <- read.table("FILEDATOS.csv", header=T, as.is=T, sep=";") fit <- lm( y ~. , data=mysDatos) summary(fit) #-------------------------------- B) Y este sería el fichero con que modificaría la plantilla anterior para generar el ".R". Este fichero en entornos Linux, Unix, Mac simplemente los ejecutarías como un shell script. #!/bin/sh sed s/FILEDATOS/mi_nombre_fichero/g ModeloLineal.plantilla > ModeloLineal.R (el caso del ejemplo exige que tu fichero de datos tenga como nombre de la columna de la variable a modelar "y", también exigiría que tu fichero estuviera en formato ".csv". Saludos, Carlos Ortega www.qualityexcellence.es El 1 de enero de 2016, 22:34, Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com> escribió: Estimados Buen 2016, año nuevo cosas nuevas, estoy leyendo un librito de unas 200 páginas sobre T4, básicamente crea plantillas y se puede colocar dentro de ellas el código, por ejemplo por cada elemento de la lista realizar lo siguiente (if, sum, lm ...). Es mucho más fácil ver un video (por suerte o por malo forma parte de visual studio), desconozco si en R hay algo semejante, pero mi pregunta va por lo siguiente, ¿Qué pasa si preparo una serie de análisis en R, dejando las variables a llenar? Me refiero a crear una plantilla de códigos R, luego se ejecuta esta plantilla con los datos, generando la colección de análisis de R, que posteriormente ejecuta R. En otras palabras seria como Sweave, que en lugar de generar latex genera R. Javier Rubén Marcuzzi [[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 -- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Hola, "sed" está también en Windows: http://gnuwin32.sourceforge.net/packages/sed.htm Y si se quiere ir un poco más lejos, basta con instalarse Cygwin: https://www.cygwin.com/ y así tener un Linux conviviendo con Windows (no es necearia ninguna partición), con sed, awk/gawk, y otras alternativas... Y dependiendo de la complejidad de lo que quieras hacer, puedes hasta generar codigo "R" dentro de R y luego ejecutarlo sin salirte de la misma sesión, a través de la función "eval()": http://stackoverflow.com/questions/1743698/r-eval-expression http://stackoverflow.com/questions/18886015/evalparsetext-x-inside-a-function-how-to-evaluate-in-global-environment Saludos, Carlos Ortega www.qualityexcellence.es El 2 de enero de 2016, 21:27, Javier Marcuzzi < javier.ruben.marcuzzi en gmail.com> escribió:> Estimado Carlos Ortega > > > > Podría ser sh, pero creo awk (gawk), están para todos los sistemas, awk > llegó a mi por un software de genética que lo utilizaba para colocar los > resultados a cada individuo, por decirlo de alguna forma. Pero reformulando > mi pregunta y mezclándola con su respuesta, fit <- lm (y ~ ??.., data > misdatos), suponiendo que mis datos tiene columnas A,B,C,D, ?, > > Una especie de plantilla que cree > > Fit <- lm( Y+ a, data=misdatos) > > Fit <- lm( Y+ a+b, data=misdatos) > > Fit <- lm( Y+ a+b+c, data=misdatos) > > Fit <- lm( Y+ b+c, data=misdatos) > > Fit <- lm( Y+ c, data=misdatos) > > > > Las diferentes combinaciones para todos los modelos posible, algunos > ilógicos en la realidad pero estadísticamente posibles. Con un poco de > trabajo esto no sería complicado, pero posiblemente hay alguna persona > desarrolló facilitando la edición de código. > > > > Javier Rubén Marcuzzi > > > *De: *Carlos Ortega <cof en qualityexcellence.es> > *Enviado: *sábado, 2 de enero de 2016 17:02 > *Para: *Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com> > *CC: *r-help-es en r-project.org > *Asunto: *Re: [R-es] T4 templates R > > > > Hola, > > En Linux, Mac puedes hacerlo de una forma bastante directa. > > - Por un lado tienes tus ficheros que son las plantillas con el código > R donde los campos a cambiar los tienes bien identificados. > - Y por otro tienes un programa que altera estas plantillas y que > genera los "*.R" > > Un ejemplo podría ser este. > > A) El fichero con la plantilla: > > #-------Plantilla en el fichero: ModeloLineal.plantilla > > mysDatos <- read.table("FILEDATOS.csv", header=T, as.is=T, sep=";") > > fit <- lm( y ~. , data=mysDatos) > > summary(fit) > > #-------------------------------- > > B) Y este sería el fichero con que modificaría la plantilla anterior para > generar el ".R". Este fichero en entornos Linux, Unix, Mac simplemente los > ejecutarías como un shell script. > > > > #!/bin/sh > > sed s/FILEDATOS/mi_nombre_fichero/g ModeloLineal.plantilla > ModeloLineal.R > > > > (el caso del ejemplo exige que tu fichero de datos tenga como nombre de la > columna de la variable a modelar "y", también exigiría que tu fichero > estuviera en formato ".csv". > > > > Saludos, > > Carlos Ortega > > www.qualityexcellence.es > > > > El 1 de enero de 2016, 22:34, Javier Marcuzzi < > javier.ruben.marcuzzi en gmail.com> escribió: > > > Estimados > > Buen 2016, año nuevo cosas nuevas, estoy leyendo un librito de unas 200 > páginas sobre T4, básicamente crea plantillas y se puede colocar dentro de > ellas el código, por ejemplo por cada elemento de la lista realizar lo > siguiente (if, sum, lm ...). > > Es mucho más fácil ver un video (por suerte o por malo forma parte de > visual studio), desconozco si en R hay algo semejante, pero mi pregunta va > por lo siguiente, ¿Qué pasa si preparo una serie de análisis en R, dejando > las variables a llenar? Me refiero a crear una plantilla de códigos R, > luego se ejecuta esta plantilla con los datos, generando la colección de > análisis de R, que posteriormente ejecuta R. > > En otras palabras seria como Sweave, que en lugar de generar latex genera > R. > > Javier Rubén Marcuzzi > > [[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 > > > > > -- > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Una alternativa que creo resuelve la cuestión es mediante un "precompilador", como "gcc -E" o cualquier otro, incluyendo irectiva #include y #define para la parametrización del código. Si embargo me parece una solución un tanto barroca, yo intentaría parametrizarlo usando código R puro. Fran On 03/01/16 20:10, Carlos Ortega wrote:> Hola, > > "sed" está también en Windows: > http://gnuwin32.sourceforge.net/packages/sed.htm > Y si se quiere ir un poco más lejos, basta con instalarse Cygwin: > https://www.cygwin.com/ y así tener un Linux conviviendo con Windows (no es > necearia ninguna partición), con sed, awk/gawk, y otras alternativas... > > Y dependiendo de la complejidad de lo que quieras hacer, puedes hasta > generar codigo "R" dentro de R y luego ejecutarlo sin salirte de la misma > sesión, a través de la función "eval()": > > http://stackoverflow.com/questions/1743698/r-eval-expression > http://stackoverflow.com/questions/18886015/evalparsetext-x-inside-a-function-how-to-evaluate-in-global-environment > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > El 2 de enero de 2016, 21:27, Javier Marcuzzi < > javier.ruben.marcuzzi en gmail.com> escribió: > >> Estimado Carlos Ortega >> >> >> >> Podría ser sh, pero creo awk (gawk), están para todos los sistemas, awk >> llegó a mi por un software de genética que lo utilizaba para colocar los >> resultados a cada individuo, por decirlo de alguna forma. Pero reformulando >> mi pregunta y mezclándola con su respuesta, fit <- lm (y ~ ??.., data >> misdatos), suponiendo que mis datos tiene columnas A,B,C,D, ?, >> >> Una especie de plantilla que cree >> >> Fit <- lm( Y+ a, data=misdatos) >> >> Fit <- lm( Y+ a+b, data=misdatos) >> >> Fit <- lm( Y+ a+b+c, data=misdatos) >> >> Fit <- lm( Y+ b+c, data=misdatos) >> >> Fit <- lm( Y+ c, data=misdatos) >> >> >> >> Las diferentes combinaciones para todos los modelos posible, algunos >> ilógicos en la realidad pero estadísticamente posibles. Con un poco de >> trabajo esto no sería complicado, pero posiblemente hay alguna persona >> desarrolló facilitando la edición de código. >> >> >> >> Javier Rubén Marcuzzi >> >> >> *De: *Carlos Ortega <cof en qualityexcellence.es> >> *Enviado: *sábado, 2 de enero de 2016 17:02 >> *Para: *Javier Marcuzzi <javier.ruben.marcuzzi en gmail.com> >> *CC: *r-help-es en r-project.org >> *Asunto: *Re: [R-es] T4 templates R >> >> >> >> Hola, >> >> En Linux, Mac puedes hacerlo de una forma bastante directa. >> >> - Por un lado tienes tus ficheros que son las plantillas con el código >> R donde los campos a cambiar los tienes bien identificados. >> - Y por otro tienes un programa que altera estas plantillas y que >> genera los "*.R" >> >> Un ejemplo podría ser este. >> >> A) El fichero con la plantilla: >> >> #-------Plantilla en el fichero: ModeloLineal.plantilla >> >> mysDatos <- read.table("FILEDATOS.csv", header=T, as.is=T, sep=";") >> >> fit <- lm( y ~. , data=mysDatos) >> >> summary(fit) >> >> #-------------------------------- >> >> B) Y este sería el fichero con que modificaría la plantilla anterior para >> generar el ".R". Este fichero en entornos Linux, Unix, Mac simplemente los >> ejecutarías como un shell script. >> >> >> >> #!/bin/sh >> >> sed s/FILEDATOS/mi_nombre_fichero/g ModeloLineal.plantilla > ModeloLineal.R >> >> >> >> (el caso del ejemplo exige que tu fichero de datos tenga como nombre de la >> columna de la variable a modelar "y", también exigiría que tu fichero >> estuviera en formato ".csv". >> >> >> >> Saludos, >> >> Carlos Ortega >> >> www.qualityexcellence.es >> >> >> >> El 1 de enero de 2016, 22:34, Javier Marcuzzi < >> javier.ruben.marcuzzi en gmail.com> escribió: >> >> >> Estimados >> >> Buen 2016, año nuevo cosas nuevas, estoy leyendo un librito de unas 200 >> páginas sobre T4, básicamente crea plantillas y se puede colocar dentro de >> ellas el código, por ejemplo por cada elemento de la lista realizar lo >> siguiente (if, sum, lm ...). >> >> Es mucho más fácil ver un video (por suerte o por malo forma parte de >> visual studio), desconozco si en R hay algo semejante, pero mi pregunta va >> por lo siguiente, ¿Qué pasa si preparo una serie de análisis en R, dejando >> las variables a llenar? Me refiero a crear una plantilla de códigos R, >> luego se ejecuta esta plantilla con los datos, generando la colección de >> análisis de R, que posteriormente ejecuta R. >> >> En otras palabras seria como Sweave, que en lugar de generar latex genera >> R. >> >> Javier Rubén Marcuzzi >> >> [[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 >> >> >> >> >> -- >> >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> >> > >-- +-------------------------------------------------------------- | Francisco J. Viciana Fernández | Coordinador del Registro de Población | Servicio de Estadísticas Demográficas y Sociales | Instituto de Estadística y Cartografía de Andalucía | Leonardo Da Vinci, nº 21. Isla de La Cartuja. | 41071 SEVILLA. | franciscoj.viciana en juntadeandalucia.es | Tlf.: +(34) 95 503 38 21 +--------------------------------------------------------------