我想引導的飲食項目7個人的比例發生和計算sd()
工作與應用()函數
比方說有菜單上9個獵物。
Diet <- c("Beaver","Bird", "Bobcat","Coyote", "Deer", "Elk",
"Porcupine", "Raccoon", "SmMamm")
而且這些獵物是由7口不同的同種
Inds <- c("P01", "P02", "P03", "P04", "P05", "P06", "P07")
的人吃我的目標是引導每個單獨的每種飲食項目的比例發生。
下面的循環產生用於每個單獨的5個飲食即用更換採樣(含有N = 20餵養各飲食)。數據存儲爲個人列表,每個列表包含樣本飲食列表。
BootIndDiet <- list()
IndTotboot <- list()
for(i in Inds){
for(j in 1:5){
BootIndDiet[[j]] <- prop.table(table(sample(Diet, 20 ,replace = T)))
}
IndTotboot[[i]] <- BootIndDiet
}
下面我已經包括個人P07的前兩個日糧作爲循環的示例結果
$P07
$P07[[1]]
Beaver Bird Bobcat Deer Elk
0.05 0.15 0.20 0.10 0.15
Porcupine Raccoon SmMamm
0.15 0.15 0.05
$P07[[2]]
Beaver Bird Bobcat Coyote Deer
0.15 0.10 0.20 0.05 0.05
Elk Porcupine Raccoon SmMamm
0.05 0.20 0.10 0.10
然後我想要計算每個物種的比例的SD()爲每個單獨的。同樣,對於每個人(P01 - P07),我希望在5種日糧中每種獵物的比例出現的sd()
。
雖然我的循環運行上面,我懷疑有避免列出一個更好的方法(可能使用boot()函數)...
雖然我只包括5個樣本(引導程序),爲每個在這裏,我希望能產生一個不同的策略或如何申請sd()
跨子列表是極大的讚賞10000
建議。
除非存在內存問題,否則可以將數據以長格式「data.frame」與列-say- [ind,No_diet,prey,prop]存儲在一起,然後您可以調用'aggregate(prop〜ind +獵物,mydataframe,SD)'。 – 2014-08-31 20:26:00