使用summary()函数时出现错误 Lyx的Knitr。它之前的功能有效。
<<>>=
library(faraway)
head(teengamb)
mdl <- lm(gamble ~ sex + status, data=teengamb)
summary(mdl)
@
我通过Lyx中的Insert Tex Code输入此代码。我刚刚测试过我可以运行摘要(teengamb)而不是摘要(mdl)。这两个代码都在RStudio中工作。
错误是“未定义的控制序列”,描述为“\ end {verbatim} ...”
答案 0 :(得分:6)
1.1版之后knitr
已解决此问题。您无需在LyX或R中更改任何内容。现在,您可以从以下位置安装开发版本:
install.packages('knitr', repos = 'http://www.rforge.net/')
请忽略以下两个答案:
我终于找到了这个错误的原因(这是我见过的最深的错误)。这是因为upquote
包在加载后声明T1
编码时不起作用,例如。
\documentclass{article}
\usepackage{upquote}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\begin{document}
\begin{verbatim}
'
\end{verbatim}
\end{document}
但是,如果我们在upquote
之后移动fontenc
,则可行:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{upquote}
\begin{document}
\begin{verbatim}
'
\end{verbatim}
\end{document}
或者只是不使用T1编码 - 取消选中首选项中字体编码前的复选框:
Ubuntu用户无法重现问题的原因是因为upquote.sty
来自R的texmf树而不是TeXLive中的那个,而且R的upquote
版本有效。
解决问题的另一种方法是在Windows下将R的texmf树添加到MikTeX。
请忽略以下答案:
自options(show.signif.stars = FALSE)
工作以来,我将其作为一个可能的答案发布,但这对我来说仍然是一个非常奇怪的问题。设置show.signif.stars = FALSE
会从以下结果中删除重要性代码(来自summary(mdl)
):
Call:
lm(formula = gamble ~ sex + status, data = teengamb)
Residuals:
Min 1Q Median 3Q Max
-35.873 -15.755 -3.007 10.924 111.586
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 60.2233 15.1347 3.979 0.000255 ***
sex -35.7094 9.4899 -3.763 0.000493 ***
status -0.5855 0.2727 -2.147 0.037321 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 27.99 on 44 degrees of freedom
Multiple R-squared: 0.2454, Adjusted R-squared: 0.2111
F-statistic: 7.154 on 2 and 44 DF, p-value: 0.002042
错误来自行Signif. codes
,我不明白为什么这些字符中的任何一个都可能导致LaTeX中的错误:所有这些都是ASCII并且应该在verbatim
环境中工作。< / p>
从上面的评论中,@ mrdwab和我都无法重现问题。我想OP的LaTeX装置一定有些奇怪。