\Sexpr 仅显示来自 sweave 中具有两个元素的向量的一个值

\Sexpr 仅显示来自 sweave 中具有两个元素的向量的一个值

我无法使用以下方法获取向量的两个元素:

<<>>=
z=c(1,2)
@

\Sexpr{z}

我已经在 Google 上搜索了很多次,但不明白为什么我只得到第一个元素。

答案1

这是记录的行为。摘自 Sweave 手册(重点是我的):

对于在文本块中使用 R 对象的值的支持有限。任何出现的 \Sexpr{expr } 都会被表达式 expr 的值强制转换为字符向量后得到的字符串替换;仅使用此向量的第一个元素。例如,3 将被替换为字符串“3”(不带任何引号)。

使用[\Sexpr{paste(z, collapse=", ")}]. paste会将向量折叠成一个字符串,由 输出\Sexpr,因此结果为[1, 2]

相关内容