Eseguire un semi join
Alcune delle tracce che hanno generato il maggior fatturato provengono da serie TV o sono altri contenuti audio non musicali. Ti è stata fornita una tabella di fatture che include gli articoli con i ricavi più alti. Inoltre, hai una tabella di tracce non musicali del servizio di streaming. In questo esercizio userai un semi join per trovare le tracce non musicali con i ricavi più alti.
Le tabelle non_mus_tcks, top_invoices e genres sono già state caricate per te.
Questo esercizio fa parte del corso
Unire i dati con pandas
Istruzioni dell'esercizio
- Unisci
non_mus_tcksetop_invoicessutidusando un inner join. Salva il risultato cometracks_invoices. - Usa
.isin()per selezionare le righe dinon_mus_tcksin cuitidè presente nella colonnatidditracks_invoices. Salva il risultato cometop_tracks. - Raggruppa
top_trackspergide conta le righe ditid. Salva il risultato incnt_by_gid. - Unisci
cnt_by_gidcon la tabellagenressugide stampa il risultato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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(____)