ÎncepețiÎncepe gratuit

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

Vezi cursul

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_pounds din data frame-ul df.
  • Citește state_log.txt pentru 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 = ";")
Editează și rulează codul