Chặn (blocking) dữ liệu thực nghiệm
Bạn đang làm việc với một công ty sản xuất muốn tiến hành vài thí nghiệm về năng suất lao động. Bộ dữ liệu của họ chỉ có 100 hàng, nên việc cân bằng giữa các nhóm thí nghiệm là rất quan trọng.
Đây là cơ hội tuyệt vời để bạn áp dụng kiến thức về blocking. Họ đã cung cấp một DataFrame productivity_subjects. Hãy chia bộ dữ liệu này thành hai nhóm bằng nhau, mỗi nhóm 50 dòng.
Các thư viện numpy và pandas đã được import lần lượt là np và pd.
Bài tập này là một phần của khóa học
Thiết kế thí nghiệm với Python
Hướng dẫn bài tập
- Chọn ngẫu nhiên 50 đối tượng từ DataFrame
productivity_subjectsvào một DataFrame mớiblock_1mà không lấy lặp. - Tạo một cột mới
blockvà đặt giá trị 1 cho DataFrameblock_1. - Gán các đối tượng còn lại vào một DataFrame tên
block_2và đặt cộtblockbằng 2 cho DataFrame này. - Nối hai block lại thành một DataFrame duy nhất và in số lượng của từng giá trị trong cột
blockđể xác nhận việc blocking đã thực hiện đúng.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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())