我需要进行分析,我们需要将GBM算法应用于一系列自举复制。另一个缺点是每个重复都需要分位标准化结果。 我试图最终实现的是 1.从 开始主数据集2.创建一个包含200个重采样的3维阵列 3.分位数在每个重采样内标准化结果变量 4.全部运行GBM样本R中的子采样和分位数标准化
现在,我甚至无法进入重采样步骤。
#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),]
}
}}
我敢肯定这是因为我没有正确指定的循环,但搜索的星期后,我无法找到范例代码,这将有助于我。
我目前得到的错误消息: 错误在重新采样的[I,J,K] =主[样品(nrow(主),大小= 1000,替换= TRUE),: 数项替换的是不替换长度的倍数
你可以问一个最小的可重复的问题,以小数据集和预期的结果? – shayaa
当您创建一个最小可重现的示例时,它将有助于获得您的预期结果和您获得的实际结果。 – pdb
我在上面。这对我来说是非常新的。将在今晚晚些时候更新,当我弄清楚如何得到一个可重复的例子。 – BobaAddict