在\ Sexpr {}中使用“if else”(可能还有其他)条件

时间:2011-03-12 07:20:50

标签: sweave

是否可以在Sweave中的\ Sexper {}中使用条件?我正在尝试做的一个例子是

\Sexpr{if(coef(model1)[3]<0){-1*round(coef(model1)[3],3)}else{round(coef(model1)[3],3)}}

更精心的是,我想要像

这样的东西
\Sexpr{if(x<0){paste(-1*x, "lower", sep="")}else{paste(x, "higher", sep=""}}

当我尝试第一段代码时,我收到以下错误:

Error in parse(text = cmd) : <text>:2:0: unexpected end of input
1:if(coef(model1)[3]<0){-1*round(coef(model1)[3],3)

有什么想法吗?

感谢您的帮助,

-Mark

1 个答案:

答案 0 :(得分:4)

Sexpr表达式中不允许使用括号。而是在隐藏代码块中进行计算,并将结果用在Sexpr

请参阅Sweave手册:http://www.stat.uni-muenchen.de/~leisch/Sweave/Sweave-manual.pdf