Análise de Demonstrativos Financeiros em Python
Rohan Chatterjee
Risk modeler

pivot_table para calcular a média dos índices por empresa:avg_company_ratio = plot_dat.pivot_table(index=["comp_type",
"company"],
values=["Gross Margin", "Operating Margin",
"Debt-to-equity", "Equity Multiplier"],
aggfunc="mean").reset_index()
print(avg_company_ratio.head())
pivot_table para calcular a média por setor:avg_industry_ratio = plot_dat.pivot_table(index="comp_type",
values=["Gross Margin", "Operating Margin",
"Debt-to-equity",
"Equity Multiplier"],
aggfunc="mean").reset_index()
print(avg_industry_ratio.head())
seaborn, os dados precisam estar no formato "longo". Use pd.melt para transformar os DataFrames avg_industry_ratio e avg_company_ratio para o formato longo:molten_plot_company = pd.melt(avg_company_ratio, id_vars=["comp_type",
"company"])
molten_plot_industry = pd.melt(avg_industry_ratio,
id_vars=["comp_type"])
print(molten_plot_company.head())
print(molten_plot_industry.head())
pd.concat para concatenar molten_plot_company e molten_plot_industrymolten_plot_industry não tem a coluna company porque traz a média dos índices por setorpd.concat requer que ambos tenham as mesmas colunas, então adicionamos company a molten_plot_industrymolten_plot_industry["company"] = "Industry Average"
molten_plot = pd.concat([molten_plot_company, molten_plot_industry])
sns.barplot(data=molten_plot, y="variable", x="value", hue="company", ci=None)
plt.xlabel(""), plt.ylabel("")
plt.show()

Análise de Demonstrativos Financeiros em Python