Funcție definită de utilizator pentru grafice
În exercițiul anterior, a trebuit să scrii acest cod pentru a crea graficul:
# Subset tech and fmcg companies
subset_dat = dataset.loc[dataset["comp_type"].isin(["tech", "fmcg"])]
# Compute yearly average gross margin ratio of tech and fmcg companies
subset_dat_avg = subset_dat.pivot_table(index=["Year", "comp_type"], values = "gross_margin").reset_index()
# Add column company
subset_dat_avg["company"] = np.where(subset_dat_avg["comp_type"]=="tech", "Avg tech", "Avg fmcg")
# Concat the DataFrames
plot_df = pd.concat([subset_dat, subset_dat_avg], axis=0)
# Make the plot
sns.relplot(data=plot_df.reset_index(drop=True), x="Year", y="gross_margin", hue="company", col="comp_type", kind="line")
plt.show()
plt.close()
Observă că în acest exercițiu efectuăm aceleași operații atât pe DataFrame-ul tech, cât și pe cel FMCG. Aceasta este o abordare repetitivă și încalcă un principiu de programare numit DRY – Don't Repeat Yourself (Nu te repeta). Codul repetitiv este problematic deoarece îți mărește volumul de lucru și face codul mai predispus la erori. În acest exercițiu vei defini o funcție proprie pentru a procesa datele și a genera grafice.
Acest exercițiu face parte din cursul
Analiza situațiilor financiare în Python
Exercițiu interactiv practic
Transformă teoria în practică cu unul dintre exercițiile noastre interactive
Începe exercițiul