Sexpr在sweave中未正确评估?

Sexpr在sweave中未正确评估?,r,sweave,R,Sweave,我正在尝试用考试包做一道选择题。我创建了一个由5个问题组成的向量,称为问题。例如,第一个条目的创建方式如下: questions[1]<-"$f(x)=\\Sexpr{a}x^2+1$" 问题是输出包含a,而不是表示a的数值。但是,如果我手动键入 answerlist(questions) 将结果复制到命令行并粘贴到 <<echo=FALSE,results=hide, results=tex>>= answerlist(questions) @

我正在尝试用考试包做一道选择题。我创建了一个由5个问题组成的向量,称为问题。例如,第一个条目的创建方式如下:

questions[1]<-"$f(x)=\\Sexpr{a}x^2+1$"
问题是输出包含
a
,而不是表示
a
的数值。但是,如果我手动键入

answerlist(questions)
将结果复制到命令行并粘贴到

 <<echo=FALSE,results=hide, results=tex>>=
    answerlist(questions)
 @
=
答覆名单(问题)
@
然后我得到了想要的结果

我怎么能强迫你呢

<<echo=FALSE,results=hide, results=tex>>=
        answerlist(questions)
        @
=
答覆名单(问题)
@

要在命令行中准确地输出answerlist(问题)的功能?

阅读代码时,answerlist仅粘贴值

function (..., sep = ". ", markup = c("latex", "markdown")) 
{
    if (match.arg(markup) == "latex") {
        writeLines(c("\\begin{answerlist}", paste("  \\item", 
            do.call("paste", list(..., sep = sep))), "\\end{answerlist}"))
    }
    else {
        writeLines(c("Answerlist", "----------", paste("*", do.call("paste", 
            list(..., sep = sep)))))
    }
}
<environment: namespace:exams>
函数(…,sep=“.”,markup=c(“latex”,“markdown”))
{
if(match.arg(标记)=“latex”){
写行(c(“\\begin{answerlist}”),粘贴(\\item),
do.call(“粘贴”,列表(…,sep=sep)),“\\end{answerlist}”))
}
否则{
writeLines(c(“应答列表”)、“------------”、粘贴(“*”、do.call(“粘贴”),
列表(…,sep=sep()()))
}
}
从我的测试来看,以下几点没有问题

\documentclass{exam}
\usepackage{Sweave}
\newenvironment{question}{\item \textbf{Problem}\newline}{}
\newenvironment{solution}{\textbf{Solution}\newline}{}
\begin{document}

<<init, echo=FALSE,results=hide, results=tex>>=
require(exams)
a=2;b=2
@

\begin{question}
When testing inside the R chunk I get :\\
<<test, echo=FALSE,results=hide, results=tex>>=
answerlist(a,b)
@
\newline
And this result is similar to what I get in Sexpr :\\
\Sexpr{paste(a,b,sep=". ")}
\end{question}
\end{document}
\documentclass{exam}
\usepackage{swave}
\新环境{question}{\item\textbf{Problem}\newline}{
\新环境{solution}{\textbf{solution}\newline}{
\开始{document}
=
要求(考试)
a=2;b=2
@
\开始{问题}
在R区块内进行测试时,我得到:\\
=
回答者名单(a、b)
@
\新线
这个结果与我在Sexpr中得到的结果相似:\\
\Sexpr{粘贴(a,b,sep=“.”)
\完{问题}
\结束{document}
只给

这意味着你必须给出更多的细节,我不能重现你的问题。请注意,我曾尝试使用考试包进行测试,试图使用
问题等结果来理解您的结果
\documentclass{exam}
\usepackage{Sweave}
\newenvironment{question}{\item \textbf{Problem}\newline}{}
\newenvironment{solution}{\textbf{Solution}\newline}{}
\begin{document}

<<init, echo=FALSE,results=hide, results=tex>>=
require(exams)
a=2;b=2
@

\begin{question}
When testing inside the R chunk I get :\\
<<test, echo=FALSE,results=hide, results=tex>>=
answerlist(a,b)
@
\newline
And this result is similar to what I get in Sexpr :\\
\Sexpr{paste(a,b,sep=". ")}
\end{question}
\end{document}