Blokkeren van experimentele data
Je werkt met een productiebedrijf dat experimenten wil uitvoeren naar arbeidproductiviteit. Hun gegevensset bevat maar 100 rijen, dus het is belangrijk dat de experimentele groepen in balans zijn.
Dit is een mooie kans om je kennis van blokkeren toe te passen. Ze hebben een DataFrame productivity_subjects aangeleverd. Splits de gegevensset in twee gelijke groepen van elk 50 regels.
De libraries numpy en pandas zijn geïmporteerd als respectievelijk np en pd.
Deze oefening maakt deel uit van de cursus
Experimenteel ontwerpen in Python
Oefeninstructies
- Selecteer willekeurig 50 personen uit het DataFrame
productivity_subjectsin een nieuw DataFrameblock_1zonder teruglegging. - Zet een nieuwe kolom
blockop 1 voor het DataFrameblock_1. - Wijs de overgebleven personen toe aan een DataFrame
block_2en zet de kolomblockvoor dit DataFrame op 2. - Concateneer de blokken tot één DataFrame en print de telling van elke waarde in de kolom
blockom te controleren of het blokkeren gelukt is.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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())