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

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


偿债能力分析

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

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

运营能力分析

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

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


成长能力分析

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

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

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

相关文章
|
2月前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
3月前
|
JSON 开发工具 git
基于Python和pygame的植物大战僵尸游戏设计源码
本项目是基于Python和pygame开发的植物大战僵尸游戏,包含125个文件,如PNG图像、Python源码等,提供丰富的游戏开发学习素材。游戏设计源码可从提供的链接下载。关键词:Python游戏开发、pygame、植物大战僵尸、源码分享。
|
3月前
|
存储 数据可视化 数据挖掘
使用Python进行数据分析和可视化
本文将引导你理解如何使用Python进行数据分析和可视化。我们将从基础的数据结构开始,逐步深入到数据处理和分析的方法,最后通过实际的代码示例来展示如何创建直观的数据可视化。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索数据的世界,发现隐藏在数字背后的故事!
129 5
|
3月前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势
|
Linux C语言 开发者
源码安装Python学会有用还能装逼 | 解决各种坑
相信朋友们都看过这个零基础学习Python的开篇了
473 0
源码安装Python学会有用还能装逼 | 解决各种坑
|
2月前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
2月前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
2月前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
123 80

热门文章

最新文章