Verileri çizerek başlayalım ve bir göz atalım. Bu çok sınırlı miktarda veri olduğundan, bol miktarda varsayımla bir miktar geçici olacak.
rotten <- c(0,1,1,0,0,0,1,1,1,1,0,0,0)
rotten <- as.factor(rotten)
mass <- c(139.08,
91.48,
74.23,
129.8,
169.22,
123.43,
104.93,
103.27,
169.01,
83.29,
157.57,
117.72,
128.63)
diam <- c(17.28,
6.57,
7.12,
16.52,
14.58,
6.99,
6.63,
6.75,
15.38,
7.45,
13.06,
6.61,
7.19)
plot(mass,diam,col=rotten,lwd=2)
title("Fruits")
Veriler bu, kırmızı noktalar çürük meyveleri temsil ediyor:
İki çeşit meyve olduğunu varsayarak haklısınız. Yaptığım varsayımlar şunlardır:
- Çap meyveleri iki gruba ayırır
- Çapı 10'dan büyük olan meyveler bir grupta, diğerleri küçük gruptadır.
- Büyük meyve grubunda sadece bir çürük meyve var. Bir meyvenin büyük grupta olması durumunda, çürük olmanın ağırlığı etkilemediğini varsayalım. Bu önemlidir, çünkü bu grupta sadece bir veri noktamız vardır.
- Meyve küçük bir meyvedirse, çürük olmak kütleyi etkiler.
- Diam ve kütle değişkenlerinin normal olarak dağıldığını varsayalım.
Çapın toplamının 64,2 cm olduğu verildiği için, iki meyvenin büyük ve dörtünün küçük olması muhtemeldir. Şimdi ağırlık için 3 vaka var. Çürümüş 2, 3 veya 4 küçük meyve vardır (çürümüş büyük bir meyve, varsayımla kütleyi etkilemez ). Böylece, bu değerleri hesaplayarak kütleniz üzerinde sınırlar elde edebilirsiniz.
Çürük küçük meyve sayısının olasılığını ampirik olarak tahmin edebiliriz. Çürük meyve sayısına bağlı olarak kitle tahminlerimizi ağırlıklandırmak için olasılıkları kullanırız:
samps <- 100000
stored_vals <- matrix(0,samps,2)
for(i in 1:samps){
numF <- 0 # Number of small rotten
numR <- 0 # Total number of rotten
# Pick 4 small fruits
for(j in 1:4){
if(runif(1) < (5/8)){ # Empirical proportion of small rotten
numF <- numF + 1
numR <- numR + 1
}
}
# Pick 2 large fruits
for(j in 1:2){
if(runif(1) < 1/5){# Empirical proportion of large rotten
numR <- numR + 1
}
}
stored_vals[i,] <- c(numF,numR)
}
# Pick out samples that had 4 rotten
fourRotten <- stored_vals[stored_vals[,2] == 4,1]
hist(fourRotten)
table(fourRotten)
# Proportions
props <- table(fourRotten)/length(fourRotten)
massBig <- mean(mass[diam>10])
massSmRot <- mean(mass[diam<10 & rotten == 1])
massSmOk <- mean(mass[diam<10 & rotten == 0])
weights <- 2*massBig + c(2*massSmOk+2*massSmRot,1*massSmOk+3*massSmRot,4*massSmRot)
Est_Mass <- sum(props*weights)
Bize 691.5183g son bir tahmin veriyoruz . Bir sonuca varmak için yaptığım varsayımların çoğunu yapmak zorunda olduğunuzu düşünüyorum, ancak bence bunu daha akıllı bir şekilde yapmak mümkün olabilir. Ayrıca çürük küçük meyvelerin sayısının olasılığını elde etmek için ampirik olarak örnek alıyorum, bu sadece tembellik ve "analitik olarak" yapılabilir.