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

Vše v jednom volání

Aby byl tento kód ještě více znovupoužitelný, vytvoříme funkci, která vše zvládne v jediném volání. Připravili jsme pro tebe kostru funkce – teď je řada na tobě, abys ji dokončil/a!

V předchozích cvičeních jsme celý postup rozepsali do několika kroků. Teď chceme totéž stihnout v jediném volání: napíšeme funkci, která přijme seznam URL adres a vrátí názvy těch prvků, které nejsou dostupné.

Až tuto funkci napíšeš, můžeš ji uložit a kdykoli ji znovu použít při čištění seznamu URL adres. Třeba ji jednou přidáš i do vlastního balíčku ;)

Seznam urls z předchozího cvičení máš k dispozici ve svém pracovním prostředí.

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

Intermediate Functional Programming with purrr

Zobrazit kurz

Pokyny k cvičení

  • Uvnitř volání map() vytvoř verzi possibly() funkce read_lines(), která v případě chyby vrátí hodnotu 404.

  • Nastav názvy výstupních prvků.

  • Pomocí funkce paste() s argumentem collapse nastaveným na " " převeď každý podseznam na znakový vektor.

  • Odstraň prvky, jejichž hodnota se rovná 404.

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

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

url_tester <- function(url_list){
  url_list %>%
    # Map a version of read_lines() that otherwise returns 404
    map( ___(___, otherwise = ___) ) %>%
    # Set the names of the result
    ___( urls ) %>% 
    # paste() and collapse each element
    map(___, ___ = " ") %>%
    # Remove the 404 
    ___(___) %>%
    names() # Will return the names of the good ones
}

# Try this function on the urls object
url_tester(urls)
Upravit a spustit kód