这应该很简单,但我无法理解发生了什么:
> m <- 6
> bquote(risk.(m) <- risk[list(.(m))])
risk.(m) <- risk[list(6)]
为什么不返回
risk6 <- risk[list(6)]
这是我想要实现的目标?我已阅读文档,不知道我缺少什么。
答案 0 :(得分:1)
您似乎只需要在risk
和.()
之间设置有效的分隔符:
> m <- 6
> bquote(risk*.(m) <- risk[list(.(m))])
risk * 6 <- risk[list(6)]
如果将其传递给plotmath调用绘图标题或其他注释,那么我认为它会显示:“risk6&lt; - risk.subscript(6)”。但是它以功能表示法显示:<-(risk6, risk.subscript(6) )
。如果解决语法问题不是你需要的帮助,那么你应该解释你对risk
- 对象的价值所做的事情,并扩展最终结果可能是什么。
png(height=200); plot(1,1,main=bquote(risk*.(m) <- risk[list(.(m))]) ); dev.off()
有时您会使用substitute
获得不同的结果,但在这种情况下,结果与以下内容相同:
plot(1,1,main=substitute(risk*m <- risk[list(m)], list(m=6)) )
......事情更有趣:
plot(1,1,main=as.character(substitute(risk*m <- risk[list(m)], list(m=6))) )
所以......我认为你需要引用赋值运算符是否要将<-
的解释抑制为函数。:
png(height=200); plot(1,1,main=bquote(risk*.(m)~"<-"~risk[list(.(m))]) ); dev.off()