Tworzenie ramki danych z kolumną listową
Zakończmy ten rozdział implementacją naszego ekstraktora linków – tym razem z użyciem kolumny listowej. Główna idea zagnieżdżonej ramki danych (czyli ramki danych z kolumną listową) polega na tym, żeby przechowywać wszystko w jednej ramce danych i utrzymać porządek w całym przepływie pracy.
Masz do dyspozycji tibble o nazwie df, który zawiera kolumnę urls z czterema adresami URL używanymi od początku tego rozdziału. Jeśli chcesz przejrzeć tę ramkę danych, możesz ją wypisać w konsoli.
Utworzysz nową kolumnę o nazwie links, która będzie zawierać wyniki funkcji get_links() (dostępnej w twoim środowisku pracy). Ponieważ wyniki tej funkcji mają różne długości, kolumna wyjściowa będzie kolumną listową – następnie użyjesz unnest(), aby przekształcić ją z powrotem w standardową ramkę danych.
To ćwiczenie jest częścią kursu
Funkcyjne programowanie średnio zaawansowane z purrr
Instrukcje do ćwiczenia
Wczytaj trzy niezbędne pakiety:
dplyr,tidyripurrr.Weź element
dfi wywołaj na nimmutate(). Wewnątrzmutate()zmapuj funkcjęget_links()na kolumnęurls.Wypisz wynik.
Wykonaj
unnest()na wyniku.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Load dplyr, tidyr, and purrr
# Create a "links" columns, by mapping get_links() on urls
df2 <- df %>%
mutate(___ = map(___, get_links))
# Print df2 to see what it looks like
# unnest() df2 to have a tidy dataframe
df2 %>%
___(cols=c(links))