以區組法分配實驗資料
你正在與一家製造公司合作,他們想針對員工生產力進行實驗。資料集只有 100 列,因此讓實驗組之間保持平衡很重要。
這正是運用你對區組設計(blocking)理解的好機會。他們提供了一個 productivity_subjects 的 DataFrame。請把這個資料集平均分成兩組,各 50 筆。
numpy 與 pandas 已分別以 np 與 pd 匯入。
本練習屬於課程
Python 的實驗設計
練習說明
- 從
productivity_subjectsDataFrame 隨機選出 50 位受試者,不放回,存成新的 DataFrameblock_1。 - 在
block_1DataFrame 新增一個欄位block,其值設為 1。 - 將其餘受試者指定到名為
block_2的 DataFrame,並將其中的block欄位設為 2。 - 將兩個區組串接為單一 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())