CommencerCommencer gratuitement

Mise en œuvre d'un plan en blocs aléatoires

L'entreprise manufacturière avec laquelle vous avez travaillé précédemment souhaite toujours mener des expériences sur la productivité des travailleurs. Auparavant, les deux blocs étaient définis de manière aléatoire. Bien que cela puisse fonctionner, il peut être préférable de regrouper les sujets sur la base de caractéristiques similaires.

Les mêmes employés sont à nouveau chargés, mais cette fois dans un DataFrame appelé productivity comprenant 1200 autres collègues. Il comprend également une colonne 'productivity_score' basée sur les unités produites par heure. Cette colonne a été répartie en trois groupes afin de générer des blocs basés sur des valeurs de productivité similaires. L'entreprise souhaite appliquer un nouveau programme d'incitation comportant trois options ('Bonus', 'Profit Sharing' et 'Work from Home') dans l'ensemble de l'entreprise, le traitement étant appliqué de manière aléatoire.

numpy et pandas comme np et pd respectivement sont chargés.

Cet exercice fait partie du cours

Conception expérimentale en Python

Afficher le cours

Instructions

  • Mélangez les blocks pour créer un nouveau DataFrame appelé prod_df.
  • Réinitialisez l'index pour que block ne soit pas à la fois un index et une colonne.
  • Attribuez au hasard les trois valeurs de traitement dans la colonne 'Treatment'.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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(____)
)
Modifier et exécuter le code