5 votos

Eficiente de flujo de datos para la R?

Ya hay algunas buenas respuestas en la gestión del proyecto (por ejemplo. Cómo gestionar de forma eficiente un análisis estadístico proyecto?). Estas son grandes, y hacen la vida mucho más fácil. En particular, el flujo de trabajo que corre a lo largo de las líneas de

  1. Carga de datos en bruto.
  2. Manipular los datos en bruto en formas útiles. (Descarga de datos en bruto para ahorrar espacio).
  3. Realizar análisis y almacenar los resultados.
  4. Hacer y almacenar las cifras.

Una cosa que es todavía difícil es conseguir a partir de datos en bruto a la final de los resultados y cifras, sin tener que ejecutar todo el proyecto desde cero cada vez que algo cambia. Lo que me gustaría ser capaz de hacer es algo como esto:

  • Intento de crear la figura. Manipulación de datos está disponible en la memoria?
    • Sí: crear la figura.
    • No: No manipular los datos que existen en el disco?
      • Sí: Carga de manipular los datos.
      • No: Carga de datos sin procesar, manipular y guardar, luego de descargar los datos en bruto de los objetos.

También, en cada paso que sería bueno tener algún desencadenante para forzar una completa re-carga, si el crudo de datos ha sido actualizada.

Hay un marco existente en R para hacer algo como esto? O hay alguna manera recomendada de hacerlo? Tal y como está, a menudo tengo que ejecutar todo desde cero, lo cual puede tardar años (de grandes archivos de datos, manipulaciones complejas), y es un desperdicio de recursos

3voto

Gmaster Puntos 21

R puede almacenar todos los datos de la memoria en el directorio de trabajo actual. Luego, cuando empiezas a R a partir de un directorio en particular, la carga de todos los datos que tenía cuando salga R último tiempo.

mkdir ProjectX
cd ProjectX
R

Entonces, el trabajo en R. Cuando R se cierra, se le pide

Save workspace image? [y/n/c]:

Elijo y. La historia se guarda en un archivo llamado .Rhistory, y todos los datos en .RData. La próxima vez que inicie R en el mismo directorio, será la carga de la historia y los datos.

Por lo general, me cree un directorio para un proyecto y trabajar con R en ese directorio. Puedo almacenar todos los comandos en el directorio de línea de comandos de la historia, pero también crear un archivo que se puede ejecutar directamente para volver a crear todos los cálculos y cifras. He encontrado una manera más eficiente que las costuras de este archivo manualmente desde el R de la historia.

Si puedo modificar algunos de los datos en bruto, simplemente puedo hacer

source( "pipeline.R" )

para repetir todos los comandos que se necesitan para ejecutar los cálculos y producir las figuras.

De lo contrario, si sólo pequeñas modificaciones fueron hechas, o buscar a través de la historia o de copiar y pegar de la pipeline.R archivo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X