<jupyter_start><jupyter_text>조건부기대값과 예측문제 - 조건부 기대값 (conditional expectation) & 조건부 평균 (conditional mean)  - 주변 확률밀도함수 $p_Y(y)$ 를 사용하여 가중치를 계산하지 않고 조건부 확률밀도함수 $p_{Y|X}(y|x)$ 를 이용하여 가중치를 계산한다.    --- 조건부 기대값의 성질 1) 결정론적 함수인 경우 $Y = g(X)$ $X$의 값을 $x$로 정하는 순간 $Y$의 값도 결정되어 버리기 때문에 $Y = g(X)$는 상수가 된다.    $E[Y|X] = E[g(X)|X] = g(X)$   2) 결정론적 함수관계가 아닐 경우   $E[g(X)Y|X] = g(X)E[Y|X]$  ---- 전체 기대값의 법칙 $E_X[E_Y[Y|X]] = E_Y[Y]$  $E[E[Y|X]] = E[Y]$ --- 조건부분산 $Var_Y[Y|X] = E_Y[(Y-E_Y[Y|X])^2|X] = \int(Y-E_Y[Y|X])^2p_{Y|X}(y|x)dy$  --- 전체 분산의 법칙 $Var[Y] = E[Var[Y|X]]+Var[E[Y|X]]$  Scipy를 이용한 확률분포 분석 1. 이산      1) bernoulli : 베르누이분포          2) binom : 이항분포          3) multinomial : 다항분포   2. 연속      1) uniform 균일분포          2) norm : 정규분포          3) beta : 베타분포          4) gamma : 감마분포          5) t : 스튜던트 t 분포          6) chi2 : 카이분포          7) f : F분포          8) dirichlet : 디리클리분포          9) multivariate_normal : 다변수 정규분포<jupyter_code>rv = sp.stats.norm()<jupyter_output><empty_output><jupyter_text>모수지정 - loc : 분포의 기대값 - scale : 분포의 표준편차<jupyter_code>rv = sp.stats.norm(loc=1, scale=2)<jupyter_output><empty_output><jupyter_text>확률분포 메서드 - pmf : 확률질량함수 - pdf : 확률밀도함수 - cdf : 누적분포함수 - ppf : 누적분포함수의 역함수 - sf : 생존함수 = 1-누적분포함수 - isf : 생존함수의 역함수 - rvs : 랜덤표본 생성  확률밀도함수 ( pdf )<jupyter_code>xx = np.linspace(-8, 8, 100)
pdf = rv.pdf(xx)
plt.plot(xx, pdf)
plt.title('pdf')
plt.xlabel("$x$")
plt.ylabel("$p(x)$")
plt.show()<jupyter_output><empty_output><jupyter_text>연습문제 8.1.11) loc = 0 , sclae = 0.1 확률밀도함수 그리기2) 최대값  = 0.4<jupyter_code>rv = sp.stats.norm(loc=0, scale=0.1)
xx = np.linspace(-1, 1, 100)
pdf = rv.pdf(xx)
plt.plot(xx, pdf)
plt.xlabel("$x$")
plt.ylabel("$p(x)$")
plt.grid(True)
plt.show()<jupyter_output><empty_output><jupyter_text>누적분포함수 ( cdf )<jupyter_code>xx = np.linspace(-8, 8, 100)
cdf = rv.cdf(xx)
plt.plot(xx, cdf)
plt.grid(True)
plt.title("cdf")
plt.xlabel("$x$")
plt.ylabel("$F(x)$")
plt.show()<jupyter_output><empty_output><jupyter_text>무작위 표본 생성 ( rvs ) - size : 표본 생성시 생성될 표본 크기 - random_state : 표본 생성시 사용되는 시드(seed)값<jupyter_code>rv.rvs(size=(3, 5), random_state=0)
sns.distplot(rv.rvs(size=10000, random_state=0))
plt.title("random value result")
plt.grid(True)
plt.xlabel("sample")
plt.ylabel("count")
plt.xlim(-8, 8)
plt.show()<jupyter_output><empty_output><jupyter_text>변환확률변수의 시뮬레이션<jupyter_code>rv1 = sp.stats.uniform()
rv2 = sp.stats.uniform()

np.random.seed(0)
N = 50000
x_1 = rv1.rvs(N)
x_2 = rv2.rvs(N)
x_3 = x_1 + x_2

plt.figure(figsize=(12, 5))

plt.subplot(131)
sns.distplot(x_1, kde=False)
plt.xlim(-0.2, 2.2)
plt.grid(True)

plt.subplot(132)
sns.distplot(x_2, kde=False)
plt.xlim(-0.2, 2.2)
plt.grid(True)

plt.subplot(133)
sns.distplot(x_3, kde=False)
plt.xlim(-0.2, 2.2)
plt.grid(True)


plt.show()
x = sp.stats.uniform().rvs((10, 1000))
s = x.sum(axis=0)
sns.distplot(s)
plt.grid(True)

plt.show()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.197500867754252, 'fraction_numerical': 0.03818118708781673, 'mean_word_length': 3.8682432432432434, 'pattern_counts': {'":': 0, '<': 29, '<?xml version=': 0, '>': 29, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '7', 'dir': 'jupyter-structured-clean-dedup', 'id': '215243', 'license': 'MIT', 'n_tokens_mistral': 1791, 'n_tokens_neox': 2055, 'n_words': 270, 'path': 'MATH/25_Conditional_expectation_Conditional_mean.ipynb', 'repo_name': 'CATERINA-SEUL/Data-Science-School', 'size': '2881'}