始める無料で始める

ブロッキングによる実験データの分割

あなたは、労働生産性に関する実験を行いたい製造業の企業と一緒に取り組んでいます。データセットは 100 行しかないため、実験グループのバランスを取ることが重要です。

ここは、ブロッキングの知識を活用する絶好の機会です。企業からは productivity_subjects という DataFrame が提供されています。与えられたデータセットを 50 件ずつ、2 つの均等なグループに分割してください。

ライブラリ numpypandas はそれぞれ nppd としてインポート済みです。

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

Pythonで学ぶ実験計画法

コースを見る

演習の手順

  • productivity_subjects DataFrame から重複なしでランダムに 50 名を選び、新しい DataFrame block_1 に格納します。
  • block_1 に新しい列 block を追加し、値を 1 に設定します。
  • 残りの被験者を block_2 という DataFrame に割り当て、この DataFrame の block 列を 2 に設定します。
  • 2 つのブロックを 1 つの DataFrame に連結し、block 列の各値の件数を出力して、ブロッキングが正しく行われたことを確認します。

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

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

# Randomly assign half
block_1 = productivity_subjects.____(____, random_state=42, ____)

# Set the block column
block_1['block'] = ____

# Create second assignment and label
block_2 = ____
block_2['block'] = ____

# Concatenate and print
productivity_combined = pd.____([block_1, block_2], axis=0)
print(productivity_combined['block'].value_counts())
コードを編集して実行