【python】python企业财务能力数据分析可视化(源码+报告+数据集)【独一无二】

简介: 【python】python企业财务能力数据分析可视化(源码+报告+数据集)【独一无二】

一、设计要求

选取中铁和贵州茅台进行分析

1.选取企业至少有5年的财务数据,能够进行纵向分析;

2.选取至少两家同类具有可比性的公司进行横向比较,并与行业均值进行对比分析;

3.分析结合实际财务数据及指标,有理有据;

3. 分析报告图文结合,具有较好的呈现效果;

import akshare as ak
zcfz = ak.stock_financial_report_sina(stock="sz000858", symbol="资产负债表")
lrb= ak.stock_financial_report_sina(stock="sh601933", symbol="利润表")
zcfz.to_excel(‘资产负债表.xlsx')
lrb.to_excel('b.xlsx')

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


二、设计思路

代码实现了从外部数据源获取两家公司的五年财务数据,并对其进行财务能力分析,主要关注盈利能力、偿债能力、运营能力和成长能力。代码分为两个主要部分:数据获取与存储、财务数据分析与可视化。以下是对每个部分的详细分析。

一、数据获取与存储
  1. 库的导入
  • 代码首先导入了 aksharepandasmatplotlib 以及 seaborn 库。akshare 用于获取股票的财务数据,pandas 用于数据处理,matplotlibseaborn 用于数据可视化。

定义获取财务数据的函数:


定义了 get_financial_data(symbol) 函数,使用 ak.stock_financial_analysis_indicator 获取指定股票的财务数据。该函数接收股票代码作为参数,返回包含财务数据的 DataFrame。如果数据获取失败,函数会捕捉异常并返回一个空的 DataFrame。

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务对比 ” 获取。👈👈👈


获取两家公司的财务数据:

使用字典 stocks 存储两家公司的名称和对应的股票代码。遍历该字典,调用 get_financial_data 函数获取每家公司的财务数据,并存储在 financial_data 字典中。

  • 遍历 financial_data 字典,检查是否成功获取数据。如果成功,将数据保存到对应公司的 Excel 文件中,文件名为 {公司名}_财务摘要.xlsx
# 导入所需的库
import akshare as ak
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 获取五年财务数据
def get_financial_data(symbol):
    try:
        # 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈
        return data
    except Exception as e:
        print(f"Error fetching data for stock {symbol}: {e}")
        return pd.DataFrame()

# 获取两家公司的财务摘要数据
stocks = {
    '中国石油': '601857',
    '招商银行': '600036',
}

financial_data = {}
for company, stock_code in stocks.items():
    # 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈
    financial_data[company] = data

# 检查是否成功获取数据
for company, data in financial_data.items():
    if data.empty:
        print(f"No data found for {company}.")
    else:
        print(f"Data for {company} successfully fetched.")

# 保存数据到Excel文件
for company, data in financial_data.items():
        # 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


二、财务数据分析与可视化

库的导入:

  • 代码导入了 pandasmatplotlib 库,用于数据处理和可视化。
  • 设置 plt.rcParams 参数以支持中文字符显示,并确保负号可以正常显示。
import pandas as pd
import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False #用来正常显示负号

  1. 读取财务数据
  • 从前面保存的 Excel 文件中读取两家公司的财务数据,分别存储在 cmb_datapetrochina_data DataFrame 中。使用 fillna(0) 方法处理空值,将其填充为 0,以避免后续计算中出现错误。
  1. 计算四大能力的平均值
  • 定义了calculate_averages函数,计算每家公司财务数据中的四大能力的平均值:
  • 盈利能力:使用每股收益(调整后)的平均值表示。
  • 偿债能力:使用流动比率的平均值表示。
  • 运营能力:使用总资产周转率的平均值表示。
  • 成长能力:使用主营业务收入增长率的平均值表示。
  • 分别计算招商银行和中国石油的四大能力平均值,存储在相应的变量中。
def calculate_averages(data):
    profitability = data['每股收益_调整后(元)'].mean()
    # 略。。。。
    # 略。。。。
    # 略。。。。        # 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈

    return profitability, solvency, operating, growth

绘制图表:

绘制盈利能力、偿债能力、运营能力和成长能力对比的柱状图:

盈利能力:比较两家公司平均每股收益(调整后),展示盈利能力对比。

偿债能力:比较两家公司平均流动比率,展示偿债能力对比。

运营能力:比较两家公司平均总资产周转率,展示运营能力对比。

成长能力:比较两家公司平均主营业务收入增长率,展示成长能力对比。

  • 使用 matplotlib 库的 bar 方法绘制柱状图,设置适当的标题、标签和颜色,使图表更直观。
# 绘制成长能力图表
plt.figure(figsize=(10, 6))
plt.bar(['招商银行', '中国石油'], [cmb_growth, petro_growth], color=['blue', 'green'])
plt.xlabel('公司')
plt.ylabel('平均主营业务收入增长率(%)')
plt.title('成长能力对比')
plt.show()

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


这段代码通过以下步骤实现了对两家公司的财务数据分析和可视化:


数据获取:使用 akshare 库获取两家公司的五年财务数据,并处理异常情况,确保数据获取的可靠性。

数据存储:将获取的财务数据保存到 Excel 文件中,便于后续的分析和查看。

数据处理:读取并清理数据,处理空值,确保数据的完整性和一致性。

计算分析:计算四大财务能力的平均值,提供量化的财务能力对比指标。

数据可视化:通过柱状图直观展示两家公司在盈利能力、偿债能力、运营能力和成长能力方面的对比情况,为财务分析提供了有力的支持。

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


整个代码设计思路清晰,结构合理,通过数据获取、存储、处理、分析和可视化等一系列步骤,全面展示了两家公司财务能力的多维度对比。这种方法不仅提高了数据分析的效率和准确性,还为进一步的财务决策和市场分析提供了坚实的基础。


三、可视化分析

盈利能力分析

在盈利能力方面,我们选取了每股收益(EPS)作为核心指标。每股收益反映了公司在一定时期内的盈利能力,是衡量企业盈利水平的重要指标。从数据来看,招商银行和中国石油的每股收益在过去几年中呈现出一定的波动性。通过对两家公司的EPS进行横向对比,招商银行的每股收益较为稳定,表现出较强的盈利能力;而中国石油的每股收益则受国际油价波动和国内外市场环境影响较大,波动幅度较大。纵向分析中,招商银行通过持续的业务创新和高效的风险管理,保持了稳健的盈利增长;而中国石油则在能源价格剧烈波动和全球经济不确定性增加的背景下,盈利能力有所波动。总体来看,招商银行的盈利能力较强且稳定,而中国石油的盈利能力虽具备一定的增长潜力,但受外部市场影响较大,需要进一步提升其抗风险能力。

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


偿债能力分析

偿债能力是衡量企业能否按时偿还债务的重要指标之一,我们选取流动比率作为分析指标。流动比率反映了企业流动资产与流动负债的比值,较高的流动比率表明企业有较强的短期偿债能力。横向对比中,招商银行的流动比率明显高于中国石油,这反映出招商银行在短期偿债能力方面具有更强的保障。纵向分析显示,招商银行的流动比率相对稳定,表明其在资产管理和负债控制方面较为稳健;而中国石油的流动比率则呈现出一定的波动,可能与其高资本支出和市场环境变化有关。整体而言,招商银行在短期偿债能力方面表现较好,具有较高的财务安全性;而中国石油需要进一步优化其资产负债结构,提升流动比率,以增强其短期偿债能力。

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈

运营能力分析

在运营能力方面,总资产周转率是一个关键指标。总资产周转率反映了企业通过资产获得收入的效率,较高的周转率意味着企业资产利用效率较高。从横向比较来看,招商银行的总资产周转率明显低于中国石油,这是因为银行业的资产主要集中在贷款和投资,周转速度相对较慢。而中国石油作为能源企业,其总资产周转率较高,反映出其在资产利用效率方面具有优势。纵向分析中,招商银行的总资产周转率变化不大,保持了较为稳定的资产运营效率;而中国石油的总资产周转率则受市场需求和油价波动影响较大,存在一定的波动性。总体来看,中国石油在资产利用效率方面表现较好,但需要关注市场环境变化对其运营能力的影响;而招商银行则需通过提升资产管理效率,进一步提高其总资产周转率。

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈


成长能力分析

成长能力是企业未来发展的关键,我们选取主营业务收入增长率作为指标。主营业务收入增长率反映了企业核心业务的扩张能力和市场竞争力。横向对比中,招商银行的主营业务收入增长率较为平稳,显示出其在金融市场中具有较强的竞争力和稳定的增长潜力;而中国石油的主营业务收入增长率则波动较大,主要受国际油价和市场需求的影响。纵向分析显示,招商银行通过不断创新金融产品和优化客户服务,保持了稳定的收入增长;而中国石油在面对油价波动和市场环境变化时,其收入增长表现出较大波动,需要进一步提升其市场应变能力和业务多元化水平。总体来看,招商银行在成长能力方面表现出色,具有较强的持续增长潜力;而中国石油则需通过多元化经营和提升技术水平,以增强其收入增长的稳定性。

总体而言,通过对招商银行和中国石油在盈利能力、偿债能力、运营能力和成长能力方面的分析,我们可以看出两家公司在各自领域内的财务表现和风险状况。招商银行表现出较强的盈利能力和较低的财务风险,具有稳定的成长潜力;而中国石油则在运营能力和市场扩张方面具备优势,但需要进一步提升其财务稳健性和抗风险能力。通过对比分析,我们可以为企业提供针对性的改进建议,帮助其在复杂的市场环境中实现可持续发展

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 财务 ” 获取。👈👈👈

相关文章
|
3月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
18小时前
|
Python
使用 Python 合并微信与支付宝账单,生成财务报告
这篇博客介绍了如何使用 Python 脚本合并微信与支付宝账单数据,生成自动化财务报告。通过 pandas 库,学习如何清洗、合并和分析账单数据,以及如何生成 Markdown 格式的财务报告。
|
20天前
|
机器学习/深度学习 存储 数据可视化
这份Excel+Python飞速搞定数据分析手册,简直可以让Excel飞起来
本书介绍了如何将Python与Excel结合使用,以提升数据分析和处理效率。内容涵盖Python入门、pandas库的使用、通过Python包操作Excel文件以及使用xlwings对Excel进行编程。书中详细讲解了Anaconda、Visual Studio Code和Jupyter笔记本等开发工具,并探讨了NumPy、DataFrame和Series等数据结构的应用。此外,还介绍了多个Python包(如OpenPyXL、XlsxWriter等)用于在无需安装Excel的情况下读写Excel文件,帮助用户实现自动化任务和数据处理。
|
4月前
|
存储 数据可视化 数据挖掘
使用Python进行数据分析和可视化
本文将引导你理解如何使用Python进行数据分析和可视化。我们将从基础的数据结构开始,逐步深入到数据处理和分析的方法,最后通过实际的代码示例来展示如何创建直观的数据可视化。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索数据的世界,发现隐藏在数字背后的故事!
166 5
|
4月前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势
|
6月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
在数据科学领域,数据可视化是连接数据与洞察的桥梁,能让复杂的关系变得直观。本文通过实战案例,介绍Python数据分析师必备的Matplotlib与Seaborn两大可视化工具。首先,通过Matplotlib绘制基本折线图;接着,使用Seaborn绘制统计分布图;最后,结合两者在同一图表中展示数据分布与趋势,帮助你提升数据可视化技能,更好地讲述数据故事。
106 1
|
6月前
|
机器学习/深度学习 数据可视化 数据挖掘
数据可视化大不同!Python数据分析与机器学习中的Matplotlib、Seaborn应用新视角!
在数据科学与机器学习领域,数据可视化是理解数据和优化模型的关键。Python凭借其强大的可视化库Matplotlib和Seaborn成为首选语言。本文通过分析一份包含房屋面积、卧室数量等特征及售价的数据集,展示了如何使用Matplotlib绘制散点图,揭示房屋面积与售价的正相关关系;并利用Seaborn的pairplot探索多变量间的关系。在机器学习建模阶段,通过随机森林模型展示特征重要性的可视化,帮助优化模型。这两个库在数据分析与建模中展现出广泛的应用价值。
73 2
|
6月前
|
数据可视化 数据挖掘 Python
逆袭之路!Python数据分析新手如何快速掌握Matplotlib、Seaborn,让数据说话更响亮?
在数据驱动时代,掌握数据分析技能至关重要。对于Python新手而言,Matplotlib和Seaborn是数据可视化的两大利器。Matplotlib是最基本的可视化库,适合绘制基础图表;Seaborn则提供高层次接口,专注于统计图形和美观样式。建议先学Matplotlib再过渡到Seaborn。快速上手Matplotlib需多实践,示例代码展示了绘制折线图的方法。Seaborn特色功能包括分布图、关系图及分类数据可视化,并提供多种主题和颜色方案。两者结合可实现复杂数据可视化,先用Seaborn绘制统计图,再用Matplotlib进行细节调整。熟练掌握这两者,将显著提升你的数据分析能力。
79 4
|
6月前
|
数据可视化 数据挖掘 Python
惊呆了!Python数据分析师如何用Matplotlib、Seaborn秒变数据可视化大师?
在数据驱动时代,分析师们像侦探一样在数字海洋中寻找线索,揭示隐藏的故事。数据可视化则是他们的“魔法棒”,将复杂数据转化为直观图形。本文将带你探索Python数据分析师如何利用Matplotlib与Seaborn这两大神器,成为数据可视化大师。Matplotlib提供基础绘图功能,而Seaborn在此基础上增强了统计图表的绘制能力,两者结合使数据呈现更高效、美观。无论是折线图还是箱形图,这两个库都能助你一臂之力。
67 4
|
7月前
|
数据可视化 数据挖掘 API
Python数据分析:数据可视化(Matplotlib、Seaborn)
数据可视化是数据分析中不可或缺的一部分,通过将数据以图形的方式展示出来,可以更直观地理解数据的分布和趋势。在Python中,Matplotlib和Seaborn是两个非常流行和强大的数据可视化库。本文将详细介绍这两个库的使用方法,并附上一个综合详细的例子。