데이터를 플로팅하여 시작해 봅시다. 이것은 매우 제한된 양의 데이터이므로 많은 가정 으로 다소 임시적 입니다.
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")
따라서 이것은 데이터이며, 빨간 점은 썩은 과일을 나타냅니다.
두 종류의 과일이 있다고 가정하면 옳습니다. 내가 가정하는 것은 다음과 같습니다.
- 직경은 과일을 두 그룹으로 나눕니다.
- 직경이 10보다 큰 과일은 한 그룹에, 다른 그룹은 더 작은 그룹에 속합니다.
- 큰 과일 그룹에는 썩은 과일이 하나뿐입니다. 과일이 큰 그룹에 있다면 썩은 것이 체중에 영향을 미치지 않는다고 가정 해 봅시다. 해당 그룹에는 하나의 데이터 포인트 만 있기 때문에 이것은 필수입니다.
- 과일이 작은 과일이면 썩은 것이 덩어리에 영향을 미칩니다.
- 변수 diam과 mass가 정상적으로 분포되어 있다고 가정합시다.
지름의 합이 64.2cm라고 가정하기 때문에 과일 2 개가 크고 과일 4 개가 작을 가능성이 높습니다. 이제 무게에 대한 세 가지 경우가 있습니다. 썩은 과일은 2 개, 3 개 또는 4 개가 있습니다 ( 썩은 과일은 질량에 영향을 미치지 않습니다 ). 이제이 값을 계산하여 질량에 한계를 설정할 수 있습니다.
작은 과일 수가 썩을 확률을 경험적으로 추정 할 수 있습니다. 우리는 확률을 사용하여 썩은 과일의 수에 따라 질량의 추정치를 가중합니다.
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)
우리에게 691.5183g 의 최종 견적을 제공 합니다. 나는 결론에 도달하기 위해 가정 한 대부분의 가정을해야한다고 생각하지만, 더 현명한 방법으로이 작업을 수행 할 수 있다고 생각합니다. 또한 나는 썩은 작은 과일의 수의 확률을 얻기 위해 경험적으로 샘플링합니다. 그것은 단지 게으름이며 "분석적으로"수행 될 수 있습니다.