Zacznij terazZacznij za darmo

Implementacja losowego planu blokowego

Firma produkcyjna, z którą wcześniej pracowano, nadal chce przeprowadzić eksperymenty dotyczące wydajności pracowników. Poprzednio dwa bloki były tworzone losowo. Choć takie podejście może działać, lepszym rozwiązaniem jest grupowanie uczestników na podstawie podobnych cech.

Te same dane pracowników są ponownie wczytane, tym razem w ramce danych o nazwie productivity, obejmującej 1200 dodatkowych pracowników. Zawiera ona również kolumnę 'productivity_score' z wynikami wydajności wyrażonymi w jednostkach produkowanych na godzinę. Kolumna ta została podzielona na trzy grupy, aby na podstawie zbliżonych wartości wydajności wygenerować bloki. Firma chce wdrożyć nowy program motywacyjny z trzema opcjami ('Bonus', 'Profit Sharing' i 'Work from Home'), przy czym przypisanie wariantu do pracowników ma przebiegać losowo.

Biblioteki numpy i pandas są wczytane odpowiednio jako np i pd.

To ćwiczenie jest częścią kursu

Projektowanie eksperymentów w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Przetasuj bloki (block), tworząc nową ramkę danych o nazwie prod_df.
  • Zresetuj indeks, aby block nie był jednocześnie indeksem i kolumną.
  • Losowo przypisz trzy wartości wariantów do kolumny 'Treatment'.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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(____)
)
Edytuj i uruchom kod