Triển khai thiết kế khối ngẫu nhiên
Công ty sản xuất mà bạn đã làm việc trước đó vẫn muốn thực hiện một số thí nghiệm về năng suất lao động. Trước đây, hai khối được đặt ngẫu nhiên. Cách này có thể dùng được, nhưng sẽ tốt hơn nếu nhóm các đối tượng dựa trên những đặc điểm tương đồng.
Những nhân viên tương tự lại được nạp vào, lần này trong một DataFrame tên là productivity cùng với 1200 đồng nghiệp khác. DataFrame này còn có cột 'productivity_score' của mỗi lao động dựa trên số đơn vị sản phẩm mỗi giờ. Cột này đã được chia thành ba nhóm (binned) để tạo các khối dựa trên các giá trị năng suất tương tự. Công ty muốn áp dụng một chương trình khuyến khích mới với ba lựa chọn ('Bonus', 'Profit Sharing' và 'Work from Home') trên toàn công ty, với việc gán điều trị ngẫu nhiên.
numpy và pandas lần lượt được nạp với bí danh 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
- Xáo trộn các
blockđể tạo DataFrame mới tênprod_df. - Đặt lại index để
blockkhông vừa là index vừa là cột. - Gán ngẫu nhiên ba giá trị điều trị trong cột
'Treatment'.
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 workers to blocks
prod_df = productivity.____('____').apply(
lambda x: x.____(____)
)
# Reset the index
prod_df = prod_df.____(____)
# Assign treatment randomly
prod_df['Treatment'] = np.random.choice(
['____', '____', '____'],
size=len(____)
)