Giter Club home page Giter Club logo

fisabior's Introduction

fisabior

Acerca de este proyecto

fisabior es un paquete de R cuyo único propósito es estructurar y organizar el entorno de trabajo, facilitando el trabajo en equipo.

El proyecto generado con su función principal (init_proj()) se estructura en 3 directorios, lo que permite seguir un criterio unificado a la hora de trabajar en equipo o, sencillamente, retomar un trabajo individual que se aparcase hace algún tiempo. El contenido de cada uno de estos directorios es:

  • configuracion: en este directorio se almacena todo archivo de configuración común al equipo de trabajo. Un ejemplo lo tienes en el archivo configuracion/config.R, el cual se ejecuta al inicio de cada sesión de RStudio para cargar tanto funciones comunes como paquetes de uso continuado.
  • datos: donde se almacenan los bancos de datos necesarios para el análisis. Se estructura en tres subdirectorios:
    • brutos: datos TAL CUAL se reciben, sin importar su formato.
    • procesados: datos procesados listos para cargar durante el análisis. Preferentemente se utilizará un formato de valores separados por comas, empleando el punto como separador decimal y dándole la extensión apropiada al archivo (*.csv), aunque también es posible emplear el formato nativo de R (*.RData) o una base de datos SQL.
    • cartografia: directorio para guardar archivos de cartografía asociados al proyecto. Preferentemente se utilizará el formato Shapefile (.shp) y, en caso de emplear una proyección de los datos, se aconseja emplear la EPSG 4326 (datum WGS84).
  • r: directorio principal, el cual contiene todos los scripts de código R necesarios para la ejecución del proyecto. Solo contiene archivos con extensión *.R.

A su vez, la función init_proj() permite crear directorios extra para el seguimiento de un artículo y para almacenar código foráneo:

  • articulo: aquí se alberga todo el contenido relacionado con la publicación del proyecto, estructurándose, a su vez, en tres subdirectorios.
    • enviado: documentos tal cual se enviaron para su publicación,
    • revision: documentos que han sido revisados por pares y requieren modificaciones,
    • proof: versión de imprenta de las publicaciones aceptadas.
  • src: directorio de código secundario, donde se guardan los archivos con código no-R, eligiendo para ello el subdirectorio más apropiado:
    • bugs: modelos escritos con código en lenguaje BUGS,
    • cpp: código en C++,
    • jags: modelos escritos con código en lenguaje JAGS (aunque es similar a BUGS, tiene sus peculiaridades),
    • stan: modelos escritos con código en lenguaje Stan.

Gracias al conjunto de funciones informe_*() y presentacion_*(), se pueden generar informes y presentaciones en varios formatos, todos ellos dentro del directorio informes, el cual a su vez contiene un directorio por formato, albergando también las imágenes y datos de caché:

  • informes:
    • docx: documentos MS Office Word producidos por rmarkdown-knitr,
    • odt: documentos LibreOffice Writer producidos rmarkdown-knitr,
    • pdf: documentos PDF producidos por rmarkdown-knitr-LaTeX,
    • latex: documentos TeX y PDF producidos por knitr-LaTeX,
    • beamer: presentaciones TeX y PDF producidos por rmarkdown-knitr-LaTeX,
    • html: documentos HTML producidos por rmarkdown-knitr.
      • cache: conjuntos de datos *.Rdata generados durante el análisis, los cuales se guardan de manera temporal como copia de respaldo que evita tener que ejecutar una y otra vez todos los datos. También alberga aquellos datos procedentes de informes elaborados con knitr para los que se establezca como opción cache = TRUE los cuales, dependiendo del programa empleado para generarlos, se almacenaran en subdirectorios creados junto con el informe.
      • figuras: gráficos en diversos formatos generados tanto en el análisis como en la redacción de informes.

Instalación

Puedes instalar este paquete empleando la función install_github() del paquete devtools, para lo cual debes ejecutar el siguiente código:

install.packages("devtools")
devtools::install_github("fisabio/fisabior")

Acerca de fisabior

fisabior es el nombre que nos hemos dado como grupo de usuarios de R dentro de la Fundación para el Fomento de la Investigación Sanitaria y Biomédica de la Comunidad Valenciana (FISABIO). A febrero de 2017, el grupo está compuesto por:

Si al igual que nosotros te encanta la estadística en R, o si tuvieras alguna duda acerca del grupo o su actividad, puedes contactarnos sin problema.

fisabior's People

Contributors

carlosvergara avatar

Watchers

 avatar  avatar  avatar

fisabior's Issues

Error en la instalación de dependencias

Al instalar de la forma habitual con devtools::install_github('fisabio/fisabior') se obtiene la siguiente salida en Win 7, con algunas de las dependencias ya instaladas (otras no):

Failed with error:packagecodarequired byR2WinBUGScould not be foundIn addition: Warning messages:
1: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledggplot22: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledhaven3: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledlme44: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledmapproj5: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledmaptoolsError in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]) : 
  there is no package calledrprojrootIn addition: Warning messages:
1: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledreadr2: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledreadxl3: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledtableone4: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledtidyr5: In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE,  :
  there is no package calledxtableNo he podido cargar los paquetes: ggplot2, haven, lme4, mapproj, maptools, R2WinBUGS, readr, readxl, tableone, tidyr, xtable, rmarkdown

Creo que el posible problema está en la definición del fichero NAMESPACE del paquete, aunque lo tengo que confirmar.

La rutina a resolver:

  • revisar documentación sobre NAMESPACE,
  • revisar archivo NAMESPACE y ver si contiene las dependencias,
  • revisar compilación del paquete con devtools,
  • modificaciones y propuesta de cambios a realizar (PULL REQUEST).

Función de informes y desarrollo de plantillas .Rmd y .Rmw

Justificación

Dado que la preparación de informes es algo habitual en nuestro trabajo creo que, del mismo modo que el uso de un sistema de directorios es ventajoso para todos, el desarrollo y puesta en práctica de un sistema de plantillas asociadas al paquete también puede os en nuestro grupo. Es por ello que abro este issue que, en principio, recojo yo mismo.

Tareas

Las tareas a desarrollar serían:

  • búsqueda de un estilo fisabior (documento, logotipo, tipografía...) apropiado,
  • función para generar informes con diversas salidas (en principio LaTeX y Markdown, para generar informes en PDF, DOCX, ODT, y HTML),
  • confección de la plantilla LaTeX,
  • confección de la plantilla Markdown (DOCX -- ODT),
  • confección de la plantilla HTML.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.