Depanarea corelațiilor
Lucrezi pentru Departamentul de Sănătate din SUA. Echipa ta investighează dacă existența sarcinilor multiple (gemeni, tripleți etc.) este corelată cu o creștere mai mare în greutate în timpul sarcinii. Ai calculat corelația, însă valorile tale diferă semnificativ față de estimările unui alt analist. Aceasta a semnalat că datele tale nu înregistrează valori pentru creșterea în greutate mai mari de 99 de livre. Ai decis să rulezi din nou calculul și, de această dată, vrei să loghezi valoarea maximă a creșterii în greutate.
În spațiul tău de lucru ai o listă de date frames, ls_df. Fiecare element din ls_df conține date despre nașteri pentru fiecare stat. Ai scris o buclă foreach pentru a rula calculul în paralel.
foreach și doParallel au fost deja încărcate.
Acest exercițiu face parte din cursul
Programare paralelă în R
Instrucțiuni pentru exercițiu
- Creează un cluster cu patru nuclee.
- Specifică un fișier numit
state_log.txtîn care vor fi înregistrate mesajele din cluster. - În corpul buclei, loghează valoarea maximă a coloanei
weight_gain_poundsdin data frame-uldf. - Citește
state_log.txtpentru a verifica mesajele afișate.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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 = ";")