확률변수의 평균
이상적인 기대값 계산 방법
이산형 확률변수의 평균(기대값)
확률변수가 취할 수 있는 ㄱ밧과 그 확률의 곱의 총합 정의
sum of xk x f(xk)
기대값이 기호로 표현될 때 E(X)라는 표기 주로 사용
2X+3 으로 변환한 확률변수 Y의 기대값
기대값은 xk라는 값을 그대로 2xk + 3으로 치환 후 정의
E(Y) = E(2X+3) = sum of (2xk+3)f(xk)
확률 변수 X가 변환된 함수 g(X)의 기대값
a,b를 실수, X를 확률변수라고 한다.
편차 제곱의 기대값
분산은 기호로 시그마를 사용하고, 시그마 제곱이나 V(X)로 표기
시그마는 확률변수 X의 표준편차를 나타낸다.
분산의 선형성
a,b를 실수, X를 확률변수라하면 V(aX+b) = a^2V(X)
결과: V(2X+3) = 4*V(X)
#확률 p_k = p(x_k) 계산
prob = np.array([f(x_k) for x_k in x_set])
#x_k와 p_k의 대응을 사전식으로 표시
dic_k = dict(zip(x_set, prob))
dic_k
{1: 0.048, 2: 0.095, 3: 0.143, 4: 0.190, 5: 0.238, 6: 0.286}
#확률 정의
np.all(prob >=0)
True
np.sum(prob)
1.000
## 기대값(Expectation, Expected Value)
np.sum([x_k * f(x_k) for x_k in x_set])
4.333
#무작위
sample = np.random.choice(x_set, int(1e6), p=prob)
np.mean(sample)
4.332
#변환된 확률변수 g(X)의 기대값
def E(X, g=lambda x: x):
x_set, f=X
return np.sum([g(x_k) * f(x_k) for x_k in x_set])
E(X)
4.333
E(X, g=lambda x: 2*x+3)
11.667
#기대값의 선형성
E(X, g=lambda x: 2*x+3)
11.667
2*E(X) + 3
11.667
#분산
mean = E(X)
np.sum([(x_k-mean) **2 *f(x_k) for x_k in x_set])
2.222
#변환된 확률변수의 분산
def V(X, g = lambda x:x):
x_set, f=X
mean = E(X,g)
return np.sum([(g(x_k)- mean) **2 * f(x_k) for x_k in x_set])
#g(X) =X
V(X)
2.222
#g(X) = 2X + 3
V(X, lambda x: 2*x + 3)
# 2**@ * V(X)
8.889