Трудно ответить на ваш вопрос, не зная, как выглядят ваши данные.Но я могу сказать вам, что вызывает эту ошибку.Просматривая исходный код функции clean.boudt
, я обнаружил следующую причину вашей ошибки:
T = dim(R)[1]
...
for (t in c(1:T)) {
d2t = as.matrix(R[t, ] - mu) %*% invSigma %*% t(as.matrix(R[t,
] - mu))
vd2t = c(vd2t, d2t)
}
...
dim (R) [1] извлекает количество строк в данных, переданных в аргумент Rв функции.Похоже, что в ваших данных нет строк, поэтому проверьте тип данных pgfzc_elev
Причина ошибки, вероятно, связана с использованием $ для подмножества pgfzc_all
.
pgfzc_elev <- pgfzc_all$ELEV
Я считаю, что это целое число класса, поэтому dim (R) [1] не работает в функции.
Скорее поднабор вашего объекта следующим образом:
pgfzc_elev <- pgfzc_all[, ELEV, drop = F]
Попробуйте и посмотрите, работает ли он.