Мне нужно провести анализ, где нам нужно применить алгоритм GBM к серии реплик с начальной загрузкой. Еще одна проблема заключается в том, что каждый повтор должен иметь квантильный нормализованный результат. В конечном итоге я пытаюсь достичь следующего: 1. Начните с основного набора данных с 2. Создайте трехмерный массив, содержащий 200 повторных выборок. 3. Квантильно нормализуйте переменную результата в каждой повторной выборке. 4. Запустите GBM во всех выборках.
Прямо сейчас я даже не могу перейти к шагу повторной выборки.
#generating some data
main<-matrix(
replicate(52,rnorm(1132)),
ncol=52,
nrow=1132,
dimnames = list(
1:1132,
1:52)
)
colnames(main)[1]<-"outcome"
#trying to create 200 resampled replicates
resampled = array (
rep(NA),
dim= c(1000, ncol(main), 200),
dimnames= list(
1:1000,
colnames(main),
1:200
)
)
for (i in 1:dim(resampled)[1]) {
for (j in 1:dim(resampled)[2]) {
for (k in 1:dim(resampled)[3]) {
resampled[i,j,k]= main[sample(nrow(main), size=1000, replace=TRUE),]
}
}}
Я почти уверен, что это потому, что я неправильно указываю цикл, но после нескольких недель поиска я не могу найти образец кода, который мне поможет.
В настоящее время я получаю сообщение об ошибке: Error in resampled[i, j, k] = main[sample(nrow(main), size = 1000, replace = TRUE), : количество заменяемых элементов не кратно длине замены