R 选择所有正确的选项`~`

R 选择所有正确的选项`~`,r,R,我编写了一个函数,用户在其中指定一个线性模型(例如,y~x+tx+x*tx)。用户指定此模型后,我想使用他们的输入创建一个具有不同y的新公式 我想我只需要选择公式的~x+tx+x*tx部分,然后用一个新的y变量粘贴它。我该怎么做?还是有更好的办法 也许是最明显的(直到现在我才想到这一点……多悲哀啊) 但这是假设公式有一个右手边 form <- y~x+tx+x*tx update(form, new_y ~ .) form <- y~x+tx+x*tx rhs <- sub(

我编写了一个函数,用户在其中指定一个线性模型(例如,
y~x+tx+x*tx
)。用户指定此模型后,我想使用他们的输入创建一个具有不同
y
的新公式

我想我只需要选择公式的
~x+tx+x*tx
部分,然后用一个新的
y
变量粘贴它。我该怎么做?还是有更好的办法

也许是最明显的(直到现在我才想到这一点……多悲哀啊)

但这是假设公式有一个右手边

form <- y~x+tx+x*tx
update(form, new_y ~ .)
form <- y~x+tx+x*tx
rhs <- sub(".+~", "", deparse(form))
as.formula(paste0("new_y ~", rhs))
tail(as.character(form), 1)