CommencerCommencer gratuitement

ANOVA à proximité des employés

Sur la base de vos analyses précédentes avec l'entreprise manufacturière, où la productivité des travailleurs a été examinée dans différents blocs et où un programme d'incitation a été mis en place, vous approfondissez maintenant les données. L'entreprise, dotée d'un ensemble de données plus complet dans le DataFrame de la productivité, comprenant 1200 employés supplémentaires et leur productivity_score, a structuré la main-d'œuvre en trois blocs basés sur les niveaux de productivité. Chaque employé s'est vu attribuer au hasard l'une des trois options d'incitation : 'Bonus', 'Profit Sharing', ou 'Work from Home'.

Avant d'évaluer l'impact complet de ces traitements incitatifs sur la productivité, il est essentiel de vérifier que l'affectation initiale du traitement était bien aléatoire et équitable entre les différents blocs de productivité. Cette étape permet de s'assurer que les différences de productivité observées après le traitement peuvent être attribuées avec certitude aux programmes d'incitation eux-mêmes, plutôt qu'à des disparités préexistantes dans les blocs.

La fonction f_oneway() de scipy.stats a été chargée pour vous.

Cet exercice fait partie du cours

Conception expérimentale en Python

Afficher le cours

Instructions

  • Regroupez prod_df en fonction de la colonne appropriée qui représente les différents blocs de vos données.
  • Utilisez une fonction lambda pour appliquer le test ANOVA dans chaque bloc, en spécifiant l'argument de la fonction lambda.
  • Pour chaque groupe de traitement au sein des blocs, filtrez prod_df sur la base des valeurs de la colonne 'Treatment' et sélectionnez la colonne 'productivity_score'.

Exercice interactif pratique

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

# Perform the within blocks ANOVA, first grouping by block
within_block_anova = prod_df.groupby('____').apply(
  # Set function
  lambda x: ____(
    # Filter Treatment values based on outcome
    x[x['____'] == '____']['____'], 
    x[x['____'] == '____']['____'],
    x[x['____'] == '____']['____'])
)
print(within_block_anova)
Modifier et exécuter le code