始める無料で始める

期待されるカウント数の計算

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

crab データセットの図を思い出してください。ゼロカウントが多いことに気づくはずです。

パラメータが与えられたときの期待カウント数を求めるには、次のポアソン分布を用います。

$$ P(y)=\frac{\lambda^ye^{-\lambda}}{y!} $$

crab データセットと、計算済みの平均 sat_mean はワークスペースに読み込まれています。

この演習はコースの一部です

Pythonで学ぶ一般化線形モデル

コースを見る

演習の手順

  • 計算済みの平均 sat_mean とゼロカウント \(y = 0\) を用いて、期待されるゼロカウント数を計算します。mathfactorial() を使ってください。
  • 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)
コードを編集して実行