usar tutorial knit como r knitr rstudio vignette

tutorial - Knitr: error de comprobación del paquete R, no se encontró el objeto ''opts_chunk''



knit r (3)

Recibo el siguiente error al revisar mi paquete R

> Error: could not find function "locdata" > Execution halted > when running code in ‘DFSurvey.Rnw’ > ... > > > opts_chunk$set(cache = TRUE, fig.path = "DFSurveyImages/", dev = "pdf") > > When sourcing ‘DFSurvey.R’: > Error: object ''opts_chunk'' not found > Execution halted

Yihui Xie (desarrollador de knitr) dijo que esto se debía a que en RStudio, knitr no estaba configurado como método para tejer archivos .Rnw, https://groups.google.com/forum/?fromgroups#!topic/knitr/9672CBbc8CM . He establecido knitr tanto en las herramientas como en las opciones de compilación, en el archivo de DESCRIPCIÓN del paquete R tengo:

VignetteBuilder: knitr Suggests: knitr

y en la viñeta tengo:

%/VignetteEngine{knitr} %/VignetteDepends{knitr,xtable,TSP}

Cuando uso compilar el pdf en RStudio o usar knit ("KNITR.Rnw"), se compila correctamente. Cuando reviso el paquete, recibo los errores anteriores para cada viñeta. Incluso puse

require(knitr)

antes de mi opts_chunk $ establecer declaración. Eso no ayudó. También he ejecutado la comprobación desde la línea de comandos y he recibido el mismo error. Gracias por cualquier ayuda.

Knitr es un paquete útil. Ejecuto simulaciones largas en viñetas, y el caché hace posible corregir errores sin ejecutar las simulaciones cada vez. Tampoco tiene el problema de intentar encontrar el archivo Sweave.sty.

Aquí está mi sessionInfo()

> R version 3.0.0 (2013-04-03) > Platform: x86_64-apple-darwin10.8.0 (64-bit) > > locale: > [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8 > > attached base packages: > [1] tcltk grid stats graphics grDevices utils datasets methods > [9] base > > other attached packages: > [1] DualFrame_0.5 xtable_1.7-1 TSP_1.0-7 > [4] maptools_0.8-23 lattice_0.20-15 foreign_0.8-53 > [7] spsurvey_2.5 sp_1.0-9 stringr_0.6.2 > [10] sqldf_0.4-6.4 RSQLite.extfuns_0.0.1 chron_2.3-43 > [13] gsubfn_0.6-5 proto_0.3-10 RSQLite_0.11.3 > [16] DBI_0.2-7 knitr_1.2 gpclib_1.5-5 > > loaded via a namespace (and not attached): > [1] deldir_0.0-22 digest_0.6.3 evaluate_0.4.3 formatR_0.7 MASS_7.3-26 > [6] rgeos_0.2-17 tools_3.0.0


Cambiar la opción Sweave a knitr en las opciones de Herramientas funcionó para mí.


Para una viñeta de knitr que puede compilar usando knit () o con el botón "Compilar PDF" en RStudio, pero eso obtiene una

Error: el objeto ''opts_chunk'' no se encuentra Ejecución detenida

error al verificar o crear el paquete, el código de verificación del paquete no reconoce que su archivo .Rnw debe ser knit y no editado. Comprueba que tienes lo siguiente:

  1. Las viñetas están en el directorio de viñetas, si tiene R 3.0.0 o superior (esta fue la solución a esta publicación), cran.r-project.org/doc/manuals/r-devel/R-exts.html#Non_002dSweave -viñetas

  2. Incluya %/VignetteEngine{knitr::knitr} en los metadatos de viñeta, yihui.name/knitr/demo/vignette/

  3. Especifique VignetteBuilder: knitr en el archivo de DESCRIPCIÓN del paquete, y

  4. Agregar Suggests: knitr en DESCRIPCIÓN si se necesita knitr solo para viñetas

Si eso no funciona, agregue una declaración de requerimiento (knitr) antes de configurar sus opciones globales en opts_chunk() , como sugirieron Ben Bolker, Yuhui y Tyler Rinker.

Si está en RStudio: en AMBOS, la configuración de compilación y las opciones de la herramienta, configure la opción Sweave en knitr, www.rstudio.com/ide/docs/authoring/rnw_weave


ponga la library(knitr) antes de este opts_chunk$set(cache = TRUE, fig.path = "DFSurveyImages/", dev = "pdf")