1. Nauka
  2. /
  3. Kursy
  4. /
  5. Wprowadzenie do Spark z pakietem sparklyr w R

Connected

ćwiczenie

Najczęstsi artyści

Funkcja distinct() pokazuje unikalne wartości. Przydatne bywa też poznanie liczby wystąpień każdej z nich. W bazowym R służy do tego funkcja table(), jednak sparklyr jej nie obsługuje – nie wpisuje się ona w filozofię tidyverse, która zakłada przechowywanie wszystkiego w postaci tibble. Zamiast niej należy używać count(). Przekaż jej nieujęte w cudzysłów nazwy kolumn. Na przykład, aby znaleźć liczby unikalnych kombinacji kolumn x, y i z, wpisz:

a_tibble %>%
  count(x, y, z)

Wynik jest taki sam jak w przypadku

a_tibble %>%
  distinct(x, y, z)

… z tą różnicą, że pojawia się dodatkowa kolumna n zawierająca liczby wystąpień.

Bardzo praktyczne zastosowanie count() to wyszukiwanie najczęstszych wartości. W tym celu wywołaj count() z argumentem sort = TRUE, który posortuje wiersze malejąco według kolumny n, a następnie użyj slice_max(), aby ograniczyć wyniki do określonej liczby najwyższych wartości. (slice_max() działa podobnie do bazowej funkcji head(), ale obsługuje również zdalne zbiory danych, takie jak te przechowywane w Sparku.) Na przykład, aby uzyskać 20 najczęstszych kombinacji kolumn x, y i z, użyj poniższego kodu:

a_tibble %>%
  count(x, y, z, sort = TRUE) %>%
  slice_max(20)

Instrukcje

100 XP

Połączenie ze Sparkiem zostało już utworzone i jest dostępne jako spark_conn. Tibble powiązany z metadanymi utworów przechowywanymi w Sparku jest wstępnie zdefiniowany jako track_metadata_tbl.

  • Zlicz wartości w kolumnie artist_name z track_metadata_tbl.
    • Przekaż sort = TRUE, aby posortować wiersze malejąco według popularności.
  • Ogranicz wyniki do 20 najlepszych za pomocą slice_max().