始める無料で始める

基本のジャックナイフ推定 - 平均

ジャックナイフ再標本化は古くからある手法で、ブートストラップほど頻繁には使われませんが、基本的な推定の進め方を知っておくと役に立ちます。最初の演習では、平均に対するジャックナイフ推定量を計算します。スパナ工場の例に戻りましょう。

あなたはスパナ工場を経営しており、製品が仕様を満たしているか確認するため、スパナの平均の長さを測定したいと考えています。工場では毎日何千本も生産しますが、すべての長さを測るのは現実的ではありません。一方で、代表性のある100本のサンプルは手元にあります。ジャックナイフ推定を使って平均の長さを求めてみましょう。

シェルで変数 wrench_lengths を確認してください。

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

Pythonで学ぶ統計シミュレーション

コースを見る

演習の手順

  • wrench_lengths から1つずつ観測値を抜き取って除外する操作を繰り返し、ジャックナイフ標本を作成して jk_sample に代入します。
  • jk_sample の平均を計算し、mean_lengths に追加します。
  • 最後に、配列 mean_lengths の平均をとり、ジャックナイフ推定量 mean_lengths_jk を計算します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Leave one observation out from wrench_lengths to get the jackknife sample and store the mean length
mean_lengths, n = [], len(wrench_lengths)
index = np.arange(n)

for i in range(n):
    jk_sample = ____[index != i]
    mean_lengths.append(____)

# The jackknife estimate is the mean of the mean lengths from each sample
mean_lengths_jk = ____(np.array(mean_lengths))
print("Jackknife estimate of the mean = {}".format(mean_lengths_jk))
コードを編集して実行