Randomized-Block-Design implementieren
Das Produktionsunternehmen, mit dem du zuvor gearbeitet hast, möchte weiterhin Experimente zur Arbeitsproduktivität durchführen. Zuvor wurden die beiden Blöcke zufällig festgelegt. Das kann funktionieren, aber oft ist es besser, Probanden anhand ähnlicher Merkmale zu gruppieren.
Dieselben Mitarbeitenden werden erneut geladen, diesmal in einem DataFrame namens productivity zusammen mit 1200 weiteren Kolleginnen und Kollegen. Außerdem enthält er eine Spalte 'productivity_score' basierend auf produzierten Einheiten pro Stunde. Diese Spalte wurde in drei Gruppen eingeteilt, um Blöcke mit ähnlichen Produktivitätswerten zu bilden. Das Unternehmen möchte ein neues Anreizprogramm mit drei Optionen ('Bonus', 'Profit Sharing' und 'Work from Home') im gesamten Unternehmen einführen, wobei die Behandlung zufällig zugewiesen wird.
numpy und pandas sind als np bzw. pd geladen.
Diese Übung ist Teil des Kurses
<Kurs>Versuchsplanung mit Python</Kurs>Übungsanweisungen
- Mische die
blocks, um einen neuen DataFrame namensprod_dfzu erstellen. - Setze den Index zurück, damit
blocknicht gleichzeitig Index und Spalte ist. - Weise die drei Behandlungswerte in der Spalte
'Treatment'zufällig zu.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# 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(____)
)