在R

时间:2016-09-09 00:52:39

标签: r grouping lm

在Stata中,可以定义一个全局的global PETS cats dogs rabbits mice,它在名为PETS的某个存储桶中收集这些变量。然后可以在

中使用它
reg happiness $PETS

有效地运行reg happiness cats dogs rabbits mice。在R中是否存在等效的m <- lm(happiness ~ PETS + other_variable)

2 个答案:

答案 0 :(得分:3)

您可以使用此解决方法:

PETS <- c("dogs", "rabbits", "mice")
m <- lm( as.formula( paste( "happiness ~ other_variable +", paste(PETS, collapse=" + ") ) ) )

答案 1 :(得分:3)

你应该学习help("formula")。我假设你的变量在data.frame中。如果他们不是,那么他们应该是。

使用内置iris数据集的可重现示例:

predictors <- c("Sepal.Width", "Petal.Length")

fit <- lm(Sepal.Length ~ ., data = iris[, c("Sepal.Length", predictors)])
summary(fit)

如您所见,我使用DV ~ .对所有变量进行回归,并将传递给lm的data.frame子集化为感兴趣的列。