У меня есть матрица 7 на 3, и я хочу выполнить тест перестановки с использованием пакета boot
.Но у меня есть проблемы с определением статистики.Я хочу переставить столбцы в строке (чтобы строки оставались фиксированными), но перестановка не должна быть одинаковой для всех строк (поэтому не следует менять местами первый и второй столбцы для всех строк).
Если бы i
мог быть вектором индексов, я думал, что следующий код справится с задачей:
T.stat<-function(data,i)
{
d<-data
for(t in 1:7){
d[t,]<-data[t,i[t]]
}
av <- 1/3*(mean(d[,1])+mean(d[,2])+mean(d[,3]))
(mean(d[,1])-av)^2+(mean(d[,2])-av)^2+(mean(d[,3])-av)^2
}
B<-10000
trtA<-c(2.9,2.56,2.88,2.73,2.5,3.18,2.83)
trtB<-c(2.97,2.45,2.76,2.2,2.16,2.89,2.87)
trtC<-c(2.67,2.62,1.84,2.33,1.27,2.39,2.39)
trt<-data.frame(trtA,trtB,trtC)
perm.trt<-boot(trt,T.stat,R=B,sim="permutation")
Но я получаю ошибку: undefined columns selected
.
Заранее спасибо за любую помощь.
РЕДАКТИРОВАТЬ: я добавил данные в коде выше.