ÎncepețiÎncepe gratuit

Filtrarea rândurilor

Pe lângă selectarea coloanelor, o altă modalitate de a extrage părțile importante din setul de date este filtrarea rândurilor. Aceasta se realizează cu ajutorul funcției filter(). Pentru a folosi filter(), îi transmiți un tibble și câteva condiții logice. De exemplu, pentru a returna doar rândurile în care valorile coloanei x sunt mai mari decât zero și valorile lui y sunt egale cu valorile lui z, folosești următorul cod.

a_tibble %>%
  filter(x > 0, y == z)

Înainte de a trece la exercițiu, ține cont de două avertismente. În primul rând, nu confunda funcția filter() din dplyr cu funcția filter() din pachetul stats. În al doilea rând, sparklyr convertește codul tău dplyr în cod SQL de bază de date înainte de a-l trimite către Spark. Asta înseamnă că doar un număr limitat de operații de filtrare sunt acceptate în prezent. De exemplu, nu poți filtra rânduri de tip caracter folosind expresii regulate cu cod de genul

a_tibble %>%
  filter(grepl("a regex", x))

Pagina de ajutor pentru translate_sql() descrie funcționalitățile disponibile. Poți folosi operatori de comparație precum >, != și %in%; operatori aritmetici precum +, ^ și %%; și operatori logici precum &, | și !. Multe funcții matematice, cum ar fi log(), abs(), round() și sin(), sunt de asemenea acceptate.

Ca și înainte, indexarea cu paranteze pătrate nu funcționează momentan.

Acest exercițiu face parte din cursul

Introducere în Spark cu sparklyr în R

Vezi cursul

Instrucțiuni pentru exercițiu

O conexiune Spark a fost creată pentru tine sub numele spark_conn. Un tibble asociat metadatelor despre piese, stocat în Spark, a fost predefinit ca track_metadata_tbl.

  • Ca în exercițiul anterior, selectează coloanele artist_name, release, title și year folosind select().
  • Direcționează rezultatul prin pipe către filter() pentru a obține piesele din anii '60.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# track_metadata_tbl has been pre-defined
glimpse(track_metadata_tbl)

# Manipulate the track metadata
track_metadata_tbl %>%
  # Select columns
  ___ %>%
  # Filter rows
  ___
Editează și rulează codul