Användardefinierad funktion för att skapa diagram
I den föregående övningen behövde du skriva följande kod för att skapa diagrammet:
# 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()
Lägg märke till att vi utför samma åtgärder på tech- och FMCG-datamängderna i den här övningen. Det är repetitivt och strider mot kodningsprincipen DRY – Don't repeat yourself. Repetitiv kod är problematisk eftersom den ökar ditt arbete och gör koden mer felbenägen. I den här övningen definierar du en egen funktion för att bearbeta data och skapa diagram.
Den här övningen är en del av kursen
Analysera finansiella rapporter i Python
Interaktiv övning med praktiskt arbete
Gör teori till handling med en av våra interaktiva övningar
Starta övningen