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

Ladění korelací

Pracuješ pro americké Ministerstvo zdravotnictví. Tvůj tým zkoumá, zda vícečetné těhotenství (dvojčata, trojčata apod.) koreluje s vyšším přírůstkem hmotnosti v průběhu těhotenství. Výsledné korelace ses spočítal/a, ale tvoje hodnoty se výrazně liší od odhadů jiného analytika. Ten upozornil, že tvoje data nezaznamenávají hodnoty přírůstku hmotnosti vyšší než 99 liber. Rozhodl/a ses výpočet zopakovat a tentokrát chceš zalogovat maximální hodnotu přírůstku hmotnosti.

V pracovním prostředí máš k dispozici seznam datových rámců ls_df. Každý prvek ls_df obsahuje data o porodech pro jeden stát. Napsal/a jsi smyčku foreach, která výpočet spouští paralelně.

Balíčky foreach a doParallel jsou již načteny.

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

Paralelní programování v R

Zobrazit kurz

Pokyny k cvičení

  • Vytvoř cluster se čtyřmi jádry.
  • Zadej soubor state_log.txt, do kterého se budou logovat zprávy z clusteru.
  • V těle smyčky zaloguj maximální hodnotu sloupce weight_gain_pounds v datovém rámci df.
  • Načti soubor state_log.txt a zkontroluj vypsané zprávy.

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

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

# Create a cluster of four cores
cl <- ___(___,
# Specify a file to log print statements                    
          ___ = "___")
registerDoParallel(cl)
res <- foreach(df = ls_df) %dopar% {
   print(paste(unique(df$state), ":",
# Calculate maximum of weight_gain_pounds in df
               ___(___)))
                 
  cor(df$plurality, df$weight_gain_pounds)
}
stopCluster(cl)
# Read log file to check print messages
read.delim("___", sep = ";")
Upravit a spustit kód