在使用 LaTeX/beamer 的 knitr 演示文稿中,我想说明这个sem
包,其中有几个函数在内部用于scan()
读取然后解析数据和模型规范。
以下块给出了 knitr 错误
<<union1>>=
library(sem)
union <- readMoments(diag=TRUE,
names=c('y1', 'y2', 'y3', 'x1', 'x2'))
14.610
-5.250 11.017
-8.057 11.087 31.971
-0.482 0.677 1.559 1.021
-18.857 17.861 28.250 7.139 215.662
@
此处显示:
<text>:5:13: unexpected numeric constant
4: 14.610
5: -5.250 11.017
^
即使我eval=FALSE
在块中使用,我也会收到错误,但我确实得到了一些合理的 PDF 文件输出。
另一个例子,同样给出错误的是这个块来指定一个 sem 模型:
<<union2, eval=FALSE >>=
union.mod <- specifyEquations(covs=c("x1", "x2"))
y1 = gam12*x2
y2 = beta21*y1 + gam22*x2
y3 = beta31*y1 + beta32*y2 + gam31*x1
@
这些都在 R 控制台中工作。如何使用 knitr 完成它们?
我理解为什么scan()
在块中不起作用以及如何使用参数解决这个问题,但是当块中调用的函数在内部text
使用时,我不知道如何解决这个问题。scan()
我也明白我可以将数据放在一个文件中,union.txt
并使用类似的东西
<<union1>>=
library(sem)
union <- readMoments(file='union.txt', diag=TRUE,
names=c('y1', 'y2', 'y3', 'x1', 'x2'))
@
但后来我不知道如何在演示文稿中显示这个文件的内容。