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

Chyba v bootstrapu

Pracuješ jako R programátor/ka v klinické laboratoři. Statistička v laboratoři provádí rozsáhlou analýzu s cílem stanovit referenční rozsahy průměrných hmotností různých druhů myší. Napsala funkci bootstrap(), která se pomocí futures backendu paralelně aplikuje na každý prvek seznamu weight_list. Kód ale vyhodí následující chybu:

Error in checkForRemoteErrors(val) : 
  one node produced an error: missing values and NaN's not allowed if 'na.rm' is FALSE

Statistička nedokáže najít, který prvek seznamu weight_list chybu způsobuje. Navíc přichází o všechny výsledky zdlouhavého výpočtu. Tvým úkolem je kód opravit. Balíček furrr je již načten a pro futures je naplánována multisession.

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

Paralelní programování v R

Zobrazit kurz

Pokyny k cvičení

  • Předej kód ve složených závorkách funkci, která dokáže zachytit chybu.
  • Argumentu error předej funkci, která přijímá jeden argument e a vrací řetězec "Error here!".
  • Namapuj funkci bootstrap() na všechny prvky seznamu weight_list pomocí vhodné funkce z balíčku furrr.

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

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

bootstrap <- function (x) {
  # Supply code to a function for catching errors
       ___({est <- rep(0, 1e3)
            for (i in 1:1e3) {
              b <- sample(x, replace = T)
              est[i] <- mean(b)
              }
    return(quantile(est, c(0.25, 0.75)))
     # Supply a function that returns a string
  }, error = ___
 )
}
# Map bootstrap() to every element of weight_list
___(___, ___)
plan(sequential)
Upravit a spustit kód