r - 从 R 中的公式中提取模型框架时排除变量

我正在使用 model.frame()在 R 中(在函数中使用),但我无法通过使用 - 设法用公式排除某些变量.
例如,在具有变量“y”、“x1”、“x2”和“x3”的数据框(数据)中,通过使用:

model.frame(y ~ . - x3, data)

我会得到一个包含所有“y”、“x1”、“x2”和“x3”的数据框。

有没有办法使用公式排除“x3”而不是直接删除变量,如:data[,-4] ?

最佳答案

我不知道如何做到这一点 super 干净,但你可以通过几个步骤来做到:

# example data
data <- data.frame(y=0,x1=1,x2=2,x3=3)

data 的上下文中获取完整的扩展公式然后删除 x3 :
mf <- model.frame(y ~ ., data, subset=FALSE)
#formula(mf)
##y ~ x1 + x2 + x3
model.frame(update(formula(mf), ~ . -x3), data=data)

https://stackoverflow.com/questions/43644847/

相关文章:

atom-editor - 原子氢 : How is "run cell" used?

regex - 正则表达式 : convert a list of name and value p

r - 每种可能组合的 Wilcoxon 秩和检验

docker - 在 alpine 容器中使用 confluent-kafka python 客户端

azure - 在 Debian 上安装 AzureAD 模块

r - 交叉比较相同数据框的列

java - 使用 lambda 计算列表中的列表

java - 将 long 列表转换为 double 列表

java - 找不到属性 : Error in spring boot 的设置方法

junit4 - Wiremock 模拟返回 HTTP 500