我正在尝试使用以向量元素表示的公式。但是,在构建公式时,元素不会被替换;相反,它是作为一个组件留下的 - 我更愿意,如果实际值立即被替换。 (这会在代码中稍后打破其他内容。)
c <- c(5:8) #made a vector on purpose, even though only use c[1]
form <- as.formula(y ~ exp(-(x-c[1])^2/2))
此时form
包含y ~ exp(-(x - c[1])^2/(2))
,但我希望它包含y ~ exp(-(x - 5)^2/(2))
。
答案 0 :(得分:6)
bquote
使得将vlaues插入公式非常容易。例如
form <- bquote(y ~ exp(-(x- .( c[1]) )^2/2))
form
# y ~ exp(-(x - 5L)^2/2)
注意,添加“L”表示整数文字值(与一般数值相对)。这是因为5:8
创建了一个整数向量。