1

当我.rnw在 RStudio 中编译文件并创建 pdf 时,.tex/.pdf 中有一些错误的内联值。我试图创建该问题的通用示例,但无法在新示例中重现它。所以我的问题有一些具体的问题。我希望读者可以帮助我解决问题的过程。我尝试过的任何方法似乎都不起作用。

我将从我的 WORKING 示例开始,因为它展示了我的整体设置:

\documentclass[11pt,fullpage,titlepage]{article}

\title{Test}
\begin{document}
\bibliographystyle{apalike}
\maketitle

<<setup, include=FALSE>>=
# set working directory
  wd <- "/Users/ericpgreen/Desktop/test/"
  setwd(wd)

# rnw file saved in "/Users/ericpgreen/Desktop/test/scripts"

# load packages
  require(knitr)  
  require(formatR)
# set chunk options
  opts_knit$set(root.dir = '../') # up one level from scripts folder
@

Create data 

<<data>>=
set.seed(1)
dat <- data.frame(v1 = rnorm(10),
                  v2 = factor(sample(c(0,1), 10, replace=TRUE)),
                  v3 = rnorm(10),
                  v4 = rnorm(10) )
mean.v1 <- mean(dat$v1)
mean.v1
@

mean is equal to \Sexpr{mean.v1}

\end{document}

同样,这个例子有效。R 中的 mean.v1 对象等于 0.1322028,这是编译文档时出现在 \Sexpr{mean.v1} 位置的值。

但是,在我的情况下(此处未显示),R 对象的值与编译文档时 \Sexpr{} 替换的值不匹配。R 对象的正确值为rr.ipt.init1.4。

在此处输入图像描述

但是,当文档编译以下行时:

A relative risk of \Sexpr{round(rr.ipt.init, digits=2)}

我得到的值为 1.92。

在此处输入图像描述

关于这个不正确的值来自哪里的任何想法?我已经清除了缓存,清除了工作区,重新启动了 R,但我无法获取文档来编译正确的rr.ipt.init.

sessionInfo() R 版本 3.0.1 (2013-05-16) 平台: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] splines   parallel  compiler  grid      stats     graphics  grDevices utils     datasets  methods  
[11] base     

other attached packages:
[1] survival_2.37-4    reshape2_1.2.2     mice_2.17          nnet_7.3-6         experiment_1.1-1  
[6] boot_1.3-9         compute.es_0.2.1   corpcor_1.6.6      MASS_7.3-26        lme4_0.999999-2   
[11] Matrix_1.0-12      lattice_0.20-15    RColorBrewer_1.0-5 scales_0.2.3       gridExtra_0.9.1   
[16] ggplot2_0.9.3.1    lubridate_1.3.0    data.table_1.8.8   xtable_1.7-1       formatR_0.7       
[21] knitr_1.2          plyr_1.8          

loaded via a namespace (and not attached):
[1] colorspace_1.2-2 dichromat_2.0-0  digest_0.6.3     evaluate_0.4.3   gtable_0.1.2     labeling_0.1    
[7] memoise_0.1      munsell_0.4      nlme_3.1-109     proto_0.3-10     rpart_4.1-1      stats4_3.0.1    
[13] stringr_0.6.2    tools_3.0.1   
4

1 回答 1

1

我决定再次清除缓存并从工作区中删除所有对象(包括隐藏对象)。但是这次我还删除了 R 创建的几个隐藏文件(历史和数据)。当我再次运行代码块并编译文档时,一切正常。我相信唯一的新步骤是删除隐藏的文档。

于 2013-06-30T18:18:23.667 回答