【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进行横向对比,招商银行的每股收益较为稳定,表现出较强的盈利能力;而中国石油的每股收益则受国际油价波动和国内外市场环境影响较大,波动幅度较大。纵向分析中,招商银行通过持续的业务创新和高效的风险管理,保持了稳健的盈利增长;而中国石油则在能源价格剧烈波动和全球经济不确定性增加的背景下,盈利能力有所波动。总体来看,招商银行的盈利能力较强且稳定,而中国石油的盈利能力虽具备一定的增长潜力,但受外部市场影响较大,需要进一步提升其抗风险能力。

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


偿债能力分析

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

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

运营能力分析

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

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


成长能力分析

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

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

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

相关文章
|
1天前
|
机器学习/深度学习 数据挖掘 大数据
大数据时代的“淘金术”:Python数据分析+深度学习框架实战指南
在大数据时代,数据被视为新财富源泉,而从海量信息中提取价值成为企业竞争的核心。本文通过对比方式探讨如何运用Python数据分析与深度学习框架实现这一目标。Python凭借其强大的数据处理能力及丰富库支持,已成为数据科学家首选工具;而TensorFlow和PyTorch等深度学习框架则为复杂模型构建提供强有力的技术支撑。通过融合Python数据分析与深度学习技术,我们能在各领域中发掘数据的无限潜力。无论是商业分析还是医疗健康,掌握这些技能都将为企业和社会带来巨大价值。
19 6
|
8天前
|
数据采集 传感器 数据可视化
利用Python进行数据分析与可视化
【9月更文挑战第11天】在数字化时代,数据已成为企业决策和科学研究的关键。本文将引导读者了解如何使用Python这一强大的工具进行数据分析和可视化,帮助初学者理解数据处理的流程,并掌握基本的可视化技术。通过实际案例,我们将展示如何从原始数据中提取信息,进行清洗、处理,最终以图形方式展现结果,使复杂的数据变得直观易懂。
|
8天前
|
机器学习/深度学习 数据可视化 数据挖掘
深入浅出:使用Python进行数据分析的入门指南
【9月更文挑战第11天】本文旨在为初学者提供一条清晰的道路,通过Python探索数据科学的奇妙世界。我们将从基础语法讲起,逐步深入到数据处理、可视化以及机器学习等高级话题。文章不仅分享理论知识,还将通过实际代码示例,展示如何应用这些知识解决实际问题。无论你是编程新手,还是希望扩展技能的数据分析师,这篇文章都将是你宝贵的资源。
|
1天前
|
机器学习/深度学习 数据挖掘 TensorFlow
解锁Python数据分析新技能,TensorFlow&PyTorch双引擎驱动深度学习实战盛宴
在数据驱动时代,Python凭借简洁的语法和强大的库支持,成为数据分析与机器学习的首选语言。Pandas和NumPy是Python数据分析的基础,前者提供高效的数据处理工具,后者则支持科学计算。TensorFlow与PyTorch作为深度学习领域的两大框架,助力数据科学家构建复杂神经网络,挖掘数据深层价值。通过Python打下的坚实基础,结合TensorFlow和PyTorch的强大功能,我们能在数据科学领域探索无限可能,解决复杂问题并推动科研进步。
11 0
|
1月前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
44 2
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
|
1月前
|
机器学习/深度学习 算法 数据挖掘
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
本文介绍了2023年第二届钉钉杯大学生大数据挑战赛初赛A题的Python代码分析,涉及智能手机用户监测数据分析中的聚类分析和APP使用情况的分类与回归问题。
52 0
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
|
18天前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
【9月更文挑战第2天】数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
45 5
|
1月前
|
供应链 数据可视化 数据挖掘
【2023年第十一届泰迪杯数据挖掘挑战赛】B题:产品订单的数据分析与需求预测 建模及python代码详解 问题一
本文详细介绍了第十一届泰迪杯数据挖掘挑战赛B题的解决方案,涵盖了对产品订单数据的深入分析、多种因素对需求量影响的探讨,并建立了数学模型进行未来需求量的预测,同时提供了Python代码实现和结果可视化的方法。
70 3
【2023年第十一届泰迪杯数据挖掘挑战赛】B题:产品订单的数据分析与需求预测 建模及python代码详解 问题一
|
1月前
|
机器学习/深度学习 数据采集 数据挖掘
【2023年第十一届泰迪杯数据挖掘挑战赛】B题:产品订单的数据分析与需求预测 建模及python代码详解 问题二
本文提供了第十一届泰迪杯数据挖掘挑战赛B题问题二的详细解题步骤,包括时间序列预测模型的建立、多元输入时间预测问题的分析、时间序列预测的建模步骤、改进模型的方法,以及使用Python进行SARIMA模型拟合和预测的具体实现过程。
46 1