Рассмотрим dat1
, созданный здесь:
dat1 <- data.frame(Region = rep(c("r1","r2"), each = 100),
State = rep(c("NY","MA","FL","GA"), each = 10),
Loc = rep(c("a","b","c","d","e","f","g","h"),each = 5),
ID = rep(c(1:10), each=2),
var1 = rnorm(200),
var2 = rnorm(200),
var3 = rnorm(200),
var4 = rnorm(200),
var5 = rnorm(200))
Я хочу написать функцию, которая позволит мне указать данные, группирующую переменную (Region
, State
или Loc
) , и имена строк переменных (var1
: var5
), с которыми я хочу, чтобы он проводил манову и возвращал результаты в аккуратном формате. Запуск функции будет выглядеть примерно так: manova.test(dat = dat1, groupvar = "Region", cols = 5:9)
Функция будет выглядеть примерно так (что не работает):
manova.test <- function(dat, groupvar, cols){
var.mat <- as.matrix(dat[, cols])
group.man <- manova(cbind(var.mat) ~ groupvar, data = dat)
summary(group.man)
}
Как это сделать? Меня особенно смущает, как указать формулу в таком формате!