Ce stat este cel mai prietenos cu piețele?
Explorând datele despre piețele fermierilor, te întrebi ce tipare ar putea apărea dacă ai agrega datele la nivel de stat. Sunt unele state mai „prietenoase cu piețele" decât altele? Pentru a investiga acest lucru, grupezi datele după stat și obții numărul de piețe transformat logaritmic (log_markets) și populația statelor (log_pop).
markets_and_pop = (markets
.groupby('state', as_index = False)
.agg({
'name': lambda d: log(len(d)),
'state_pop': lambda d: log(d.iloc[0]) })
.rename(columns = {
'name': 'log_markets',
'state_pop': 'log_pop' }))
Pentru vizualizare, alegi să folosești un grafic de regresie pentru a înțelege relația „normală" dintre numărul de piețe și cel al populației, și un text-scatter pentru a identifica rapid valorile extreme interesante.
Acest exercițiu face parte din cursul
Îmbunătățirea vizualizărilor de date în Python
Instrucțiuni pentru exercițiu
- Iterează peste rândurile DataFrame-ului
markets_and_pop. - Plasează adnotările lângă punctele corespunzătoare din graficul scatter.
- Reduce dimensiunea textului adnotărilor la
10puncte.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
g = sns.regplot(
"log_markets", "log_pop",
ci = False,
# Shrink scatter plot points
scatter_kws = {'s':2},
data = markets_and_pop)
# Iterate over the rows of the data
for _, row in markets_and_pop.____():
state, _, _, log_markets, log_pop = row
# Place annotation and reduce size for clarity
g.annotate(state, (____,____), ____ = ____)
plt.show()