Začněte nyníZačněte zdarma

ANOVA v rámci bloků zaměstnanců

Navazuješ na předchozí analýzy výrobní firmy, kde byla zkoumána produktivita pracovníků napříč různými bloky a byl zaveden motivační program. Teď se ponoříš do dat hlouběji. Firma má k dispozici rozšířený DataFrame productivity zahrnující 1 200 dalších zaměstnanců a jejich productivity_score. Pracovní síla je rozdělena do tří bloků podle úrovně produktivity. Každému zaměstnanci byla náhodně přiřazena jedna ze tří motivačních možností: 'Bonus', 'Profit Sharing' nebo 'Work from Home'.

Než začneš hodnotit celkový dopad těchto motivačních opatření na produktivitu, je důležité ověřit, že přiřazení do skupin bylo skutečně náhodné a rovnoměrné napříč jednotlivými bloky produktivity. Tento krok zajistí, že případné rozdíly v produktivitě po zavedení opatření lze s jistotou přičíst samotným motivačním programům, a nikoli předchozím rozdílům mezi bloky.

Funkce f_oneway() z knihovny scipy.stats je už načtena.

Toto cvičení je součástí kurzu

Experimentální design v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Seskup prod_df podle sloupce, který reprezentuje jednotlivé bloky v datech.
  • Pomocí funkce lambda aplikuj ANOVA test v rámci každého bloku a zadej argument této funkce.
  • Pro každou skupinu ošetření v rámci bloků filtruj prod_df podle hodnot ve sloupci 'Treatment' a vyber sloupec 'productivity_score'.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# 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)
Upravit a spustit kód