Comencemos trazando los datos y echémosles un vistazo. Esta es una cantidad muy limitada de datos, por lo que será algo ad hoc con muchos supuestos.
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")
Así que estos son los datos, los puntos rojos representan frutas podridas:

Tienes razón al suponer que parece haber dos tipos de frutas. Los supuestos que hago son los siguientes:
- El diámetro divide las frutas en dos grupos.
- Las frutas con un diámetro mayor a 10 están en un grupo, otras en el grupo más pequeño.
- Solo hay una fruta podrida en el gran grupo de frutas. Supongamos que si una fruta está en el grupo grande, estar podrido no afecta el peso. Esto es esencial, ya que solo tenemos un punto de datos en ese grupo.
- Si la fruta es una fruta pequeña, estar podrido afecta la masa.
- Supongamos que las variables diam y mass están normalmente distribuidas.
Debido a que se da que la suma del diámetro es de 64,2 cm, lo más probable es que dos frutos sean grandes y cuatro pequeños. Ahora hay 3 casos para el peso. Hay 2, 3 o 4 frutas pequeñas podridas ( una fruta grande podrida no afecta a la masa por suposición ). Entonces, ahora puede obtener límites en su masa calculando estos valores.
Podemos estimar empíricamente la probabilidad de que el número de frutos pequeños se pudra. Utilizamos las probabilidades para ponderar nuestras estimaciones de la masa, dependiendo del número de frutos podridos:
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)
Dándonos una estimación final de 691.5183g . Creo que tiene que hacer la mayor parte de las suposiciones que he hecho para llegar a una conclusión, pero creo que podría ser posible hacerlo de una manera más inteligente. También tomo muestras empíricamente para obtener la probabilidad del número de frutos pequeños podridos, eso es solo pereza y se puede hacer "analíticamente".