0
假設下面的簡單的自舉過程:查看選定的樣品用於引導環路中的每個複製
x <- c(20,54,18,65,87,49,45,94,22,15,16,15,84,55,44,13,16,65,48,98,74,56,97,11,25,43,32,74,45,19,56,874,3,56,89,12,28,71,93)
n <- length(x)
nBoot <- 5; mn <- numeric(nBoot)
for(boots in 1:nBoot){
set.seed(830219+boots)
repl <- sample(x,n,replace=TRUE)
mn[boots] <- mean(repl)
}
是否有我可以查看重採樣數據集「REPL」對於每個重複5次的方法嗎?
非常感謝您的答覆。提前感謝
編輯
我試過如下:
x <- c(20,54,18,65,87,49,45,94,22,15,16,15,84,55,44,13,16,65,48,98,74,56,97,11,25,43,32,74,45, 19,56,874,3,56,89,12,28,71,93)
n <- length(x)
nBoot <- 5; mn <- numeric(nBoot)
for(boots in 1:nBoot){
set.seed(830219+boots)
repl <- sample(x,n,replace=TRUE)
print(repl)
mn[boots] <- mean(repl)
}
這樣我就可以查看每個5個採樣數據集,但不允許我與每個數據集seperately工作如REPL [1],REPL [2],...
EDIT2
我嘗試以下:
x <- c(20,54,18,65,87,49,45,94,22,15,16,15,84,55,44,13,16,65,48,98,74,56,97,11,25,43,32,74,45,19,56,874,3,56,89,12,28,71,93)
n <- length(x)
nBoot <-3; mn <- numeric(nBoot); repl <- x
for(boots in 1:nBoot){
set.seed(830219+boots)
repl[boots] <- sample(x, n, replace=TRUE)
pr <- print(repl)
mn[boots] <- mean(repl)
}
然後我然而得到5個警告消息:「在REPL [靴] < - 樣品(X,N,替換= TRUE): 數項替換的不是的倍數更換長度」
,並呼籲REPL [1]只給了我一個號碼
如果我理解正確,它似乎是一個簡單的'R'編程問題。如果您需要在每次迭代中查看重新採樣的數據集,爲什麼不在'sample()'調用之後使用適當的函數,如'print(repl)'或類似的函數? –
感謝您的評論。在循環內使用打印選項確實可以查看每個重採樣數據集。但是,似乎這不允許我使用每個重採樣數據集進行分析。是不是有可能將重採樣數據集輸出爲某種列表,這樣我就可以像repl [1],repl [2]一樣單獨處理每個數據集?我appoligize我的可憐的R知識,並再次感謝你的幫助。 – user3387899
非常歡迎你,不用道歉。關於使用每個重採樣數據集,您當然可以單獨引用每個集合(起初我不清楚),但爲此您需要將'repl'定義爲一個向量並初始化該向量的相應元素在每次迭代中:在for循環之前:repl < - x(爲了簡單起見);在'seed()'後面:'repl [boots] < - sample(x,n,replace = TRUE)'。然後,可以在循環之後將每個重採樣數據集稱爲「repl [1]」等。 –