knitr es un motor de software para la generación dinámica de informes con R. [1] [2] Es un paquete en el lenguaje de programación R que permite la integración de código R en documentos LaTeX , LyX , HTML , Markdown , AsciiDoc y reStructuredText . El propósito de knitr es permitir la investigación reproducible en R a través de la programación alfabetizada . Está licenciado bajo la Licencia Pública General de GNU . [3]
knitr se inspiró en Sweave y se escribió con un diseño diferente para lograr una mejor modularización , por lo que es más fácil de mantener y extender. Sweave puede considerarse un subconjunto de knitr en el sentido de que todas las características de Sweave también están disponibles en knitr. Algunas de las extensiones de knitr incluyen el formato R Markdown [4] (usado en informes publicados en RPubs [5] ), almacenamiento en caché, gráficos TikZ y soporte para otros lenguajes como Python , Perl , C++ , scripts de Shell y CoffeeScript , etc.
knitr es oficialmente compatible con RStudio IDE para R, LyX , Emacs/ESS y Architect IDE para ciencia de datos.
Knitr consta de un documento estándar, por ejemplo, Markdown, con fragmentos de código R integrados en el documento. Los fragmentos de código pueden considerarse como scripts R que
La implementación de condiciones lógicas en R puede proporcionar elementos de texto para el informe dinámico en función del análisis estadístico. Por ejemplo:
Se aplicó la prueba de signos de Wilcoxon como comparación estadística del promedio de las dos muestras dependientes anteriores. En este caso, el valor P calculado fue 0,56 y, por lo tanto, mayor que el nivel de significancia (0,05 por defecto). Esto implica que no se puede rechazar "H0: no hay diferencia entre los resultados en datos1 y datos2".
Los fragmentos de texto se seleccionan según los resultados del script. En este ejemplo, si el valor P fuera inferior al nivel de significación, se insertarían fragmentos de texto diferentes en el informe dinámico. En particular, la segunda oración cambiaría "menor" por "mayor" y la tercera oración se reemplazaría para reflejar el rechazo de la hipótesis nula. El uso de este flujo de trabajo permite crear nuevos informes simplemente suministrando nuevos datos de entrada, lo que garantiza que la metodología se reproduzca de forma idéntica.