Anti join
V předchozím cvičení nebyl spojený dataset tak velký, jak bys možná čekal/a – ne všichni umělci totiž měli přiřazené štítky. Anti join se hodí právě tehdy, když chceš odhalit problémy s jinými typy joinů.
Anti join vrátí ty řádky první tabulky, pro které nelze najít shodu ve druhé tabulce. Princip je znázorněn v následujícím diagramu.

Anti join patří mezi tzv. filtrující joiny – vrací obsah první tabulky, ale s řádky vyfiltrovanými podle podmínek shody.
Syntax anti joinu je prakticky stejná jako u left joinu: stačí nahradit left_join() za anti_join().
anti_join(a_tibble, another_tibble, by = c("id_col1", "id_col2"))
Toto cvičení je součástí kurzu
Úvod do Sparku se sparklyr v R
Pokyny k cvičení
Připojení ke Sparku je pro tebe připraveno jako spark_conn. Tibble s metadaty skladeb a tibble s termíny umělců uloženými ve Sparku jsou předem definovány jako track_metadata_tbl a artist_terms_tbl.
- Pomocí anti joinu spoj termíny umělců s metadaty skladeb podle sloupce
artist_id. Výsledek ulož do proměnnéjoined. - Pomocí
sdf_dim()zjisti, kolik řádků a sloupců spojená tabulka obsahuje.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# track_metadata_tbl and artist_terms_tbl have been pre-defined
track_metadata_tbl
artist_terms_tbl
# Anti join artist terms to track metadata by artist_id
joined <- ___
# How many rows and columns are in the joined table?
___