Vamos começar plotando os dados e dar uma olhada neles. Como é uma quantidade muito limitada de dados, será um pouco ad hoc com muitas suposições.
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")
Portanto, estes são os dados, pontos vermelhos representam frutos podres:
Você está certo ao supor que parece haver dois tipos de frutas. As suposições que faço são as seguintes:
- O diâmetro divide os frutos em dois grupos
- Frutas com diâmetro maior que 10 estão em um grupo, outras no grupo menor.
- Há apenas uma fruta podre no grupo de frutas grandes. Vamos supor que, se uma fruta estiver no grupo grande, ficar podre não afeta o peso. Isso é essencial, pois só temos um ponto de dados nesse grupo.
- Se a fruta é uma fruta pequena, ser podre afeta a massa.
- Vamos assumir que as variáveis diam e massa são normalmente distribuídas.
Como é dado que a soma do diâmetro é 64,2 cm, é mais provável que dois frutos sejam grandes e quatro pequenos. Agora existem 3 casos para o peso. Existem 2, 3 ou 4 frutos pequenos podres ( um fruto grande sendo podre não afeta a massa por suposição ). Então agora você pode obter limites em sua massa calculando esses valores.
Podemos estimar empiricamente a probabilidade de o número de frutos pequenos estar podre. Usamos as probabilidades para ponderar nossas estimativas de massa, dependendo do número de frutos podres:
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)
Dando-nos uma estimativa final de 691.5183g . Eu acho que você precisa fazer a maioria das suposições que fiz para chegar a uma conclusão, mas acho que pode ser possível fazer isso de uma maneira mais inteligente. Também faço amostras empiricamente para obter a probabilidade de número de pequenos frutos podres, que é apenas preguiça e pode ser feito "analiticamente".