期待されるカウント数の計算
前の演習では、カニ(crab)データの平均と分散を計算し、それらが一致しないことを確認しました。本演習では、すでに計算した平均を用いて、特定のカウント値(たとえばゼロカウント)に対する「期待されるカウント数」を計算し、過分散の別の観点から分析を練習します。言い換えると、標本平均が与えられたとき、ゼロ個の satellite をどれくらい観測すると期待できるかを考えます。
crab データセットの図を思い出してください。ゼロカウントが多いことに気づくはずです。

パラメータが与えられたときの期待カウント数を求めるには、次のポアソン分布を用います。
$$ P(y)=\frac{\lambda^ye^{-\lambda}}{y!} $$
crab データセットと、計算済みの平均 sat_mean はワークスペースに読み込まれています。
この演習はコースの一部です
Pythonで学ぶ一般化線形モデル
演習の手順
- 計算済みの平均
sat_meanとゼロカウント \(y = 0\) を用いて、期待されるゼロカウント数を計算します。mathのfactorial()を使ってください。 sum()を使ってsat変数におけるゼロカウントの観測数を求め、len()を使って標本の総観測数を求めます。- 実際のゼロカウント観測数と総観測数の比を出力してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Expected number of zero counts
exp_zero_cnt = ((____**____)*np.____(-____))/math.____(____)
# Print exp_zero_counts
print('Expected zero counts given mean of ', round(____,3),
'is ', round(____,3)*100)
# Number of zero counts in sat variable
actual_zero_cnt = sum(____[____] == 0)
# Number of observations in crab dataset
num_obs = len(____)
# Print the percentage of zero count observations in the sample
print('Actual zero counts in the sample: ', round(____ / ____,3)*100)