Функція користувача для побудови графіків
У попередній вправі ви писали ось такий код, щоб побудувати графік:
# 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()
Зверніть увагу, що ми виконуємо однакові дії для датафреймів tech і FMCG у цій вправі. Це повторення порушує принцип кодування DRY — Don't repeat yourself („не повторюйтеся"). Повторюваний код — це погано, адже він збільшує обсяг роботи та робить код більш вразливим до помилок. У цій вправі ви визначите власну функцію для обробки даних і побудови графіків.
Ця вправа є частиною курсу
Аналіз фінансової звітності в Python
Практична інтерактивна вправа
Перетворіть теорію на практику за допомогою однієї з наших інтерактивних вправ
Почати вправу