Realizarea unui semi-join
Unele dintre piesele care au generat cele mai mari venituri provin din emisiuni TV sau sunt alte înregistrări audio non-muzicale. Ai la dispoziție un tabel cu facturi care includ elementele cu cele mai mari venituri, precum și un tabel cu piesele non-muzicale ale serviciului de streaming. În acest exercițiu, vei folosi un semi-join pentru a identifica piesele non-muzicale cu cele mai mari venituri.
Tabelele non_mus_tcks, top_invoices și genres au fost deja încărcate pentru tine.
Acest exercițiu face parte din cursul
Îmbinarea datelor cu pandas
Instrucțiuni pentru exercițiu
- Îmbină
non_mus_tcksșitop_invoicesdupătidfolosind un inner join. Salvează rezultatul catracks_invoices. - Folosește
.isin()pentru a filtra rândurile dinnon_mus_tcksundetidse află în coloanatida luitracks_invoices. Salvează rezultatul catop_tracks. - Grupează
top_tracksdupăgidși numără rândurile dintid. Salvează rezultatul încnt_by_gid. - Îmbină
cnt_by_gidcu tabelulgenresdupăgidși afișează rezultatul.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Merge the non_mus_tcks and top_invoices tables on tid
tracks_invoices = ____.merge(____)
# Use .isin() to subset non_mus_tcks to rows with tid in tracks_invoices
top_tracks = _____[non_mus_tcks['tid'].isin(____)]
# Group the top_tracks by gid and count the tid rows
cnt_by_gid = top_tracks.groupby(['gid'], as_index=False).agg({'tid':____})
# Merge the genres table to cnt_by_gid on gid and print
print(____)