Hola Carlos. Muchas gracias por la sugerencia. En realidad me gustaria tener la posibilidad de que el script fuera multiplataforma. Alguna otra sugerencia? Gracias! --JIV Sent from my phone. Please excuse my brevity and misspelling. On Oct 8, 2013, at 10:57 AM, Carlos Ortega <cof@qualityexcellence.es> wrote: Hola Jorge, Puesto que trabajas en Mac, lo tienes muy inmediato el hacerlo sobre shell-script con los comandos "cron" y "crontab" si no recuerdo mal. En el cron/crontab lo que dirías es que se lanzara un script de R (este script de R incluye el generador las funciones y hasta su cierre con "q()"). De esta forma no tienes por qué tener una instancia de R abierta de forma constante. El control lo tiene directamente el sistema operativo. Saludos, Carlos Ortega www.qualityexcellence.es El 8 de octubre de 2013 17:04, Jorge I Velez <jorgeivanvelez@gmail.com>escribió:> Buenos dias a todos, > > Me gustaria genear n muestras de una N(0,1) a determinados intervalos de > tiempo. Asi por ejemplo, si el vector de tiempos es > > tiempos <- c(2, 4, 6) > > la primera columan debe generarse a los 2 segundos de ejecutado el script, > la 2a columna a los 4 segundos y la ultima a los 6 segundos. Al final el > tiempo total de ejecucion sera aproximadamente 12 segundos para completar > una matriz de orden n x 3. > > He intentado lo siguiente: > > # generating random samples of a N(0,1) at intervals of time > intervals <- c(2, 4, 6) > now <- Sys.time() > m <- matrix(NA, ncol = length(intervals), nrow = 20) > for(time in 1:length(intervals)){ > Sys.sleep(min(intervals)) > k <- as.numeric(Sys.time() - now) > if(k > intervals[time]) { > m[, time] <- rnorm(20) # hacer algo! > cat('Lo hice despues de ', k, ' segundos!', "\n") > } # end if > } > m > > Lo anterior funciona muy bien para tiempos "pequeños", pero en la > aplicacion que estoy trabajando, los tiempos podrian ser de 30, 60 y 90 > minutos. Tambien podria incluir la ejecucion del algoritmo cada X > segundos. Alguna sugerencia? > > Muchas gracias a todos! > > Esta es mi sessionInfo(): > > > sessionInfo() > R version 3.0.0 Patched (2013-04-08 r62531) > Platform: x86_64-apple-darwin10.8.0 (64-bit) > > locale: > [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > Saludos cordiales, > Jorge.- > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Hola Jorge, En Windows hay un equivalente al "cron": http://stackoverflow.com/questions/132971/what-is-the-windows-version-of-cron Pero para que sea plataforma-independiente, o bien incluyes en "R" con la solución que has planteado. O bien, haces que un Windows sea como un Linux/Unix con Cygwin que también tiene cron/crontab (esto para mí es matar moscas a cañonazos), pero es una alternativa.... Saludos, Carlos Ortega www.qualityexcellence.es El 8 de octubre de 2013 18:11, Jorge I Velez <jorgeivanvelez@gmail.com>escribió:> Hola Carlos. Muchas gracias por la sugerencia. En realidad me gustaria > tener la posibilidad de que el script fuera multiplataforma. Alguna otra > sugerencia? Gracias! --JIV > > Sent from my phone. Please excuse my brevity and misspelling. > > On Oct 8, 2013, at 10:57 AM, Carlos Ortega <cof@qualityexcellence.es> > wrote: > > Hola Jorge, > > Puesto que trabajas en Mac, lo tienes muy inmediato el hacerlo sobre > shell-script con los comandos "cron" y "crontab" si no recuerdo mal. En el > cron/crontab lo que dirías es que se lanzara un script de R (este script de > R incluye el generador las funciones y hasta su cierre con "q()"). De esta > forma no tienes por qué tener una instancia de R abierta de forma > constante. El control lo tiene directamente el sistema operativo. > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > > El 8 de octubre de 2013 17:04, Jorge I Velez <jorgeivanvelez@gmail.com>escribió: > >> Buenos dias a todos, >> >> Me gustaria genear n muestras de una N(0,1) a determinados intervalos de >> tiempo. Asi por ejemplo, si el vector de tiempos es >> >> tiempos <- c(2, 4, 6) >> >> la primera columan debe generarse a los 2 segundos de ejecutado el script, >> la 2a columna a los 4 segundos y la ultima a los 6 segundos. Al final el >> tiempo total de ejecucion sera aproximadamente 12 segundos para completar >> una matriz de orden n x 3. >> >> He intentado lo siguiente: >> >> # generating random samples of a N(0,1) at intervals of time >> intervals <- c(2, 4, 6) >> now <- Sys.time() >> m <- matrix(NA, ncol = length(intervals), nrow = 20) >> for(time in 1:length(intervals)){ >> Sys.sleep(min(intervals)) >> k <- as.numeric(Sys.time() - now) >> if(k > intervals[time]) { >> m[, time] <- rnorm(20) # hacer algo! >> cat('Lo hice despues de ', k, ' segundos!', "\n") >> } # end if >> } >> m >> >> Lo anterior funciona muy bien para tiempos "pequeños", pero en la >> aplicacion que estoy trabajando, los tiempos podrian ser de 30, 60 y 90 >> minutos. Tambien podria incluir la ejecucion del algoritmo cada X >> segundos. Alguna sugerencia? >> >> Muchas gracias a todos! >> >> Esta es mi sessionInfo(): >> >> > sessionInfo() >> R version 3.0.0 Patched (2013-04-08 r62531) >> Platform: x86_64-apple-darwin10.8.0 (64-bit) >> >> locale: >> [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> Saludos cordiales, >> Jorge.- >> >> [[alternative HTML version deleted]] >> >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es@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]]
Muchas gracias, Carlos por tu respuesta. En este caso una solucion solo en R pareceria la manera de resolver el problema y hacia alla apuntare. El algoritmo que necesito ejecutar es mas complejo que el que describi en mi mensaje inicial, asi que aun hay mucho camino por recorrer. Saludos, Jorge.- 2013/10/9 Carlos Ortega <cof@qualityexcellence.es>> Hola Jorge, > > En Windows hay un equivalente al "cron": > http://stackoverflow.com/questions/132971/what-is-the-windows-version-of-cron > Pero para que sea plataforma-independiente, o bien incluyes en "R" con la > solución que has planteado. O bien, haces que un Windows sea como un > Linux/Unix con Cygwin que también tiene cron/crontab (esto para mí es matar > moscas a cañonazos), pero es una alternativa.... > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > > > > El 8 de octubre de 2013 18:11, Jorge I Velez <jorgeivanvelez@gmail.com>escribió: > > Hola Carlos. Muchas gracias por la sugerencia. En realidad me gustaria >> tener la posibilidad de que el script fuera multiplataforma. Alguna otra >> sugerencia? Gracias! --JIV >> >> Sent from my phone. Please excuse my brevity and misspelling. >> >> On Oct 8, 2013, at 10:57 AM, Carlos Ortega <cof@qualityexcellence.es> >> wrote: >> >> Hola Jorge, >> >> Puesto que trabajas en Mac, lo tienes muy inmediato el hacerlo sobre >> shell-script con los comandos "cron" y "crontab" si no recuerdo mal. En el >> cron/crontab lo que dirías es que se lanzara un script de R (este script de >> R incluye el generador las funciones y hasta su cierre con "q()"). De esta >> forma no tienes por qué tener una instancia de R abierta de forma >> constante. El control lo tiene directamente el sistema operativo. >> >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> >> >> El 8 de octubre de 2013 17:04, Jorge I Velez <jorgeivanvelez@gmail.com>escribió: >> >>> Buenos dias a todos, >>> >>> Me gustaria genear n muestras de una N(0,1) a determinados intervalos de >>> tiempo. Asi por ejemplo, si el vector de tiempos es >>> >>> tiempos <- c(2, 4, 6) >>> >>> la primera columan debe generarse a los 2 segundos de ejecutado el >>> script, >>> la 2a columna a los 4 segundos y la ultima a los 6 segundos. Al final el >>> tiempo total de ejecucion sera aproximadamente 12 segundos para completar >>> una matriz de orden n x 3. >>> >>> He intentado lo siguiente: >>> >>> # generating random samples of a N(0,1) at intervals of time >>> intervals <- c(2, 4, 6) >>> now <- Sys.time() >>> m <- matrix(NA, ncol = length(intervals), nrow = 20) >>> for(time in 1:length(intervals)){ >>> Sys.sleep(min(intervals)) >>> k <- as.numeric(Sys.time() - now) >>> if(k > intervals[time]) { >>> m[, time] <- rnorm(20) # hacer algo! >>> cat('Lo hice despues de ', k, ' segundos!', "\n") >>> } # end if >>> } >>> m >>> >>> Lo anterior funciona muy bien para tiempos "pequeños", pero en la >>> aplicacion que estoy trabajando, los tiempos podrian ser de 30, 60 y 90 >>> minutos. Tambien podria incluir la ejecucion del algoritmo cada X >>> segundos. Alguna sugerencia? >>> >>> Muchas gracias a todos! >>> >>> Esta es mi sessionInfo(): >>> >>> > sessionInfo() >>> R version 3.0.0 Patched (2013-04-08 r62531) >>> Platform: x86_64-apple-darwin10.8.0 (64-bit) >>> >>> locale: >>> [1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8 >>> >>> attached base packages: >>> [1] stats graphics grDevices utils datasets methods base >>> >>> Saludos cordiales, >>> Jorge.- >>> >>> [[alternative HTML version deleted]] >>> >>> >>> _______________________________________________ >>> R-help-es mailing list >>> R-help-es@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]]