Foro de debate

Automatizar procesos en R

Automatizar procesos en R

by Robert Boix -
Number of replies: 4
Hola,
cada cierto tiempo tengo que procesar y analizar unos datos. Las funciones que aplico a estos datos siempre son las mismas. Me gustaría saber si existe alguna forma de automatizar ésto de tal manera que introduciendo los datos me saliera TODOS los cálculos de una vez y evitar así tener que ir metiendo función por función.

Ejemplo sencillo de lo que pretendo:

> x<-c(x1,x2,....xn)

> mean(x)
> summary(x)
> y<-sqrt(x)

Pretendo:
> x<-c(z1,z2,....,xm)

funcion...... x >>>>

y me salga directamente mean(),summary() y sqrt(x)
Si existe algún manual de cómo hacerlo sería perfecto.(el caso que se pueda hacer.

Saludos






In reply to Robert Boix

Re: Automatizar procesos en R

by Carolina Leal -
Hola Robert, prueba con esto:

salidas=function(y) {
media=mean(y)
raiz=sqrt(y)
resumen=summary(y)
print(list(media,raiz,resumen))
}


salidas(datos)


Suerte!!

Carolina
In reply to Carolina Leal

Re: Automatizar procesos en R

by Robert Boix -
Hola carolina,

Siguiendo el ejemplo que me indicas lo he probado escribiendo lo siguiente:
salidas<-function(x){media=mean(x),raiz=sqrt(x),resumen=summary(x),print(list(media,raiz,resumen))}
y me sale el siguiente error:
Error: inesperado ',' en "salidas<-function(x){media=mean(x),"

En principio parece que es lo que necesito.
Sabes que es lo que puede estar mal?

Gracias por contestar.


In reply to Robert Boix

Re: Automatizar procesos en R

by Carolina Leal -
ya comprendí tu error,

te aconsejo leer este mensaje y el anterior, directo del foro y no desde tu correo.

observa que las instrucciones
media=mean(x)
raiz=sqrt(x)
resumen=summary(x)


NO van entre comas, sino que separadas por un espacio, o un enter.

seguramente, al copiar y pegar el mensaje aparecieron esas comas.



In reply to Carolina Leal

Re: Automatizar procesos en R

by Robert Boix -
correcto Carolina,

copie y pegue las instrucciones como una sola. Para que funcione correctamente hay que copiar y pegar línea por línea. Es lo que quería.

Gracias por todo.