在Stata中,可以定義一個像global PETS cats dogs rabbits mice
這樣的全局變量,它在某個名爲PETS
的存儲桶中收集這些變量。然後人們可以使用它在在R中定義全局變量集合
reg happiness $PETS
其有效運行reg happiness cats dogs rabbits mice
。在R中有這樣的一個等價物,允許像m <- lm(happiness ~ PETS + other_variable)
這樣的東西嗎?
在Stata中,可以定義一個像global PETS cats dogs rabbits mice
這樣的全局變量,它在某個名爲PETS
的存儲桶中收集這些變量。然後人們可以使用它在在R中定義全局變量集合
reg happiness $PETS
其有效運行reg happiness cats dogs rabbits mice
。在R中有這樣的一個等價物,允許像m <- lm(happiness ~ PETS + other_variable)
這樣的東西嗎?
您可以使用此解決方法:
PETS <- c("dogs", "rabbits", "mice")
m <- lm(as.formula(paste("happiness ~ other_variable +", paste(PETS, collapse=" + "))))
你應該學習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。
是的,所有變量都在data.frame中。我想到的這種集合僅僅是爲了方便。想象一下,你想要使用_some_控件適應10-15個模型,但總是包含其他一組控件(基本規範的排序)。 – Durden