2023 年“泰迪杯”数据分析技能赛B 题企业财务数据分析与造假识别

2023 年“泰迪杯”数据分析技能赛B 题企业财务数据分析与造假识别

一、背景

财务数据是指企业经营活动和财务结果的数据记录,反映了企业的财务状况
与经营成果。对行业、企业的财务数据进行分析,就是要评价其过去的经营业绩、
衡量现在的财务状况、预测未来的发展趋势。财务数据分析不仅对企业生产经营
管理有着重要的作用,而且对企业外部投资、贷款、赊销等决策有重要作用;经
济管理部门也可以通过财务数据分析了解行业经济的运行状况,合理配置资源,
科学调控经济运行,促进经济高质量发展。而财务造假则会对企业、投资者和整
个市场带来极大的危害,准确甄别财务造假企业,帮助投资者识别风险,促进企
业诚信经营,对营造良性的市场竞争环境有非常重要的现实意义。

二、目标

  1. 财务数据预处理。
  2. 财务数据指标分析及可视化。
  3. 建立企业利润预测模型,预测企业营收情况;并根据财务报表数据的特
    点,筛查财务造假的企业。

三、任务

请根据提供的数据,选择分析工具完成以下任务,并撰写报告。

任务 1 财务数据处理

任务 1.1

读取“LR.csv”,提取表 1 中所列字段的数据,筛选出字段“Typrep”
值为“A”的数据,将筛选出的数据另存为文件“LR_1.csv”(文件编码设置为
UTF-8),并在报告中呈现筛选后的数据行数、列数。
在这里插入图片描述

df1_1 = pd.read_csv('数据/LR.csv')
df1_1.head()# 提取表 1 中所列字段的数据
df1_1 = df1_1[['Stkcd', 'Accper', 'Typrep', 'B001000000', 'B001100000', 'B001101000','B001200000', 'B001201000', 'B001207000', 'B001209000', 'B001210000','B001211000', 'B001212000', 'B001303000', 'B002300000'
]]df1_1 = df1_1[df1_1['Typrep'] == 'A']  # 筛选出字段“Typrep”值为“A”的数据
df1_1.reset_index(inplace=True, drop=True)  # 重置索引
df1_1df1_1.to_csv('LR_1.csv',encoding='utf-8',index=False)
筛选后的数据行数:  33414
筛选后的数据列数:  15

任务 1.2

读取“LR_1.csv”、“ZCFZ.csv”、“Stk_ind.csv”三个数据文件。
根据“Stkcd”、“Accper”和“Typrep”三个字段,提取“ZCFZ.csv”中字段为
“A002000000”和“A001000000”的相应数据,合并到“LR_1.csv”中。根据字
段“Stkcd”,提取“Stk_ind.csv”中字段为“Indnme”和“Nindnme”的相应数
据,合并到“LR_1.csv”中。将完成合并的数据另存为文件“LR_2.csv”(文件
编码设置为 UTF-8),并在报告中呈现合并后数据的行数、列数。

df1_2_1 = pd.read_csv('LR_1.csv')
df1_2_1.head()df1_2_2 = pd.read_csv('数据/ZCFZ.csv')
df1_2_2.head()df1_2_3 = pd.read_csv('数据/Stk_ind.csv',encoding='gbk')
df1_2_3.head()df1_2_2 = df1_2_2[['Stkcd','Accper','Typrep','A002000000','A001000000']]
df1_2_2
# 左连接,连接字段为'Stkcd','Accper','Typrep'
data = df1_2_1.merge(df1_2_2,how='left',on=['Stkcd','Accper','Typrep'])
data
data1_2_2_1 = data1_2_2[["Stkcd", "Accper", "Typrep","A002000000", "A001000000"]]

在这里插入图片描述

df1_2 = df1_2_3.merge(data,how='right',on='Stkcd')  # 右连接
df1_2df1_2.to_csv('LR_2.csv',encoding='utf-8',index=False)

在这里插入图片描述

任务 1.3

读取“LR_2.csv”,删除空值占比达 70%及以上的数据列,将处理后的数据另存为文件“LR_3.csv”(文件编码设置为 UTF-8),并在报告中呈处理后数据的列数。

任务 1.4

读取“LR_3.csv”,删除包含空值的行,将处理后的数据另存为文件“LR_4.csv”(文件编码设置为 UTF-8),并在报告中呈现处理后数据的行数。

处理后数据的行数为30888
在这里插入图片描述

任务 1.5

读取“LR_4.csv”,将字段“Accper”的日期数据转换为“YYYYmm-dd”的格式,例如:“2018-1-31”转换为“2018-01-31”,将处理后的数据
另存为文件“LR_5.csv”(文件编码设置为 UTF-8)。

略。。。。。。。。。。。。

任务 1.6 读取“LR_5.csv”,插入“利润率”和“资产负债率”两列。根据

下表公式,计算对应的利润率和资产负债率,追加到“LR_5.csv”对应字段。分
别删除表中利润率、资产负债率不在[-300%,300%]范围内的行,将处理后的数
据另存为文件“LR_new.csv”(文件编码设置为 UTF-8),并在报告中呈现处理
后的数据行数、列数,及前 5 个企业的利润率、资产负债率。
在这里插入图片描述

数据的行数为30690,列数为19

任务 2 财务数据指标分析及可视化

任务 2.1 读取“LR_new.csv”,根据表 3 要求统计数据,绘制相关的“行业营业利润对比分析”图,每张图表需在报告中进行呈现及分析。

读取数据
import numpy as np
import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Bar, Line, Pie, Grid, Page
df2_1 = pd.read_csv('../result/LR_new.csv')

在这里插入图片描述

20199 月各行业大类的利润对比
data = df2_1[('2019-09-01'<=df2_1['Accper'])&(df2_1['Accper']<='2019-09-30')]  # 筛选出2019年9月data = data.groupby('Indnme')['B001000000'].mean()  # 按行业大类分组,求利润总额的均值
bar1 = (Bar(init_opts=opts.InitOpts(chart_id=1,bg_color='#ffffff')).add_xaxis(data.index.tolist()).add_yaxis("",data.values.tolist()).set_global_opts(title_opts=opts.TitleOpts(title="2019年9月各行业大类的利润对比"),datazoom_opts=opts.DataZoomOpts(type_="inside"),).set_series_opts(label_opts=opts.LabelOpts(is_show=False),)
)
bar1.render_notebook()

在这里插入图片描述

20181 月至2019 年 9 月各行业大类利润率变化
data2 = df2_1[(df2_1['Accper']>='2018-01-01')&(df2_1['Accper']<='2019-09-30')]data2['Accper'] = pd.to_datetime(data2['Accper'])
data2['季度'] = data2['Accper'].dt.quarter
data2['年份'] = data2['Accper'].dt.yeardf_test = data2.groupby(['Indnme','年份','季度'],as_index=False)['利润率'].mean()
df_test['Indnme'].unique()

在这里插入图片描述

任务 2.2 读取“LR_new.csv”,根据任务 2.1 结果,确定 2019 年 9 月营业

利润率均值排名第 1 的行业大类,并按表 4 要求绘制该行业大类相关的“行业企
业营收分析”图,每张图表需在报告中进行呈现及分析。
在这里插入图片描述
在这里插入图片描述

2.2.1
2019 年该行业各细类利润率对比

20199 月营业利润率均值排名第  1 细类为证券、期货业

在这里插入图片描述

2.2.2

在这里插入图片描述

2.2.3

在这里插入图片描述

 2.2.4

在这里插入图片描述

任务 2.3 利用可视化大屏制作工具,将任务 2.1 和任务 2.2 所列的 6 张图制

作成一个大屏,大屏命名为“行业与企业营业数据分析”,并在报告中呈现。要
求大屏整体设计美观、布局清晰直观。

# 导入必要的库  
from pyecharts import options as opts  
from pyecharts.charts import Bar, Line, Pie, Scatter, Map, Grid  
from pyecharts.faker import Faker  
from pyecharts.charts import Bar, Line, Pie, Scatter, Map
from pyecharts import options as opts
from pyecharts.render import make_snapshot
from pyecharts.globals import ChartType
# 柱状图
............................................................................................
# 折线图
............................................................................................# 饼图
pie1 ............................................................................................
# 散点图
............................................................................................
# 地图
............................................................................................
grid.render("行业与企业营业数据分析.html")

在这里插入图片描述

任务 3 企业利润预测及财务造假识别

任务 3.1

读取“financial_data.csv”,计算各个指标与利润总额的相关性,
挑选相关度最高的 5 个指标。

import pandas as pd# 读取csv文件
df3 = pd.read_csv(r"D:\B题-企业财务数据分析与造假识别\数据\financial_data.csv")
# 导入企业财务数据样本集# 计算各个指标与利润总额的相关性df3.columnscorrelations = df3.corr()['LRZE'].sort_values(ascending=False)# 打印前5个最大相关性的指标,第一个是利润总额本身不算
print(correlations.head(6))
LRZE       1.000000
YYSR       0.782726
YWFY       0.772832
YYCB       0.737736
YYSJJFJ    0.565440
ZCJZSS     0.238524
Name: LRZE, dtype: float64

任务 3.2

利用挑选的 5 个指标建立企业利润预测模型,运用建立的模型预
测“test.csv”表中给定企业的利润总额,并将预测结果以表格的形式在报告中呈
现。
在这里插入图片描述

df3[['YYSR','YWFY','YYCB','YYSJJFJ','ZCJZSS']] 

在这里插入图片描述

  
```bashTICKER_SYMBOL	LRZE
0	4953174			3.983941e+08
1	4961537			4.062123e+08
2	4962538			1.235635e+08
3	4968740			1.684884e+08
4	4973917			8.283722e+07
5	4978589			3.301489e+08
6	4978721			1.136986e+08
7	4986535			1.332788e+08
8	4990739			2.595591e+08
9	4990942			1.135440e+08

任务 3.3

“financial_data.csv”中包含一个“FLAG”字段用于标识财务数据造假(“1”表示财务造假)。请利用表 6 所列关键因子,对样本数据“financial_data.csv”进行分析,挖掘财务造假的识别特征。根据你们的分析,对“financial_data_new.csv”所列 5 个企业的财务数据进行筛查,识别其中唯一的1 个涉嫌财务造假企业,并在报告中描述分析方法与结果。

在这里插入图片描述


```bashTICKER_SYMBOL	FLAG
0	4992858			0
1	4993201			0
2	4998808			0
3	4897311			1
4	4999709			0

四、数据说明

赛题数据文件夹具体内容如下所示。
在这里插入图片描述

完整代码请私聊 博主

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/486562.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Android】View的工作流程——measure

1.View的工作流程入口 1.1DecorView被加载到Window中 看到这里你对Activity的构成有一定的了解&#xff0c;每个 Activity 都有一个与之关联的 Window 对象&#xff0c;而 DecorView 是这个 Window 的根视图。当DecorView被创建以及加载资源的时候&#xff0c;此时它的内容还…

4.opengl中变换

变换 1.向量 向量有一个方向(Direction)和大小(Magnitude&#xff0c;也叫做强度或长度)。 数学家喜欢在字母上面加一横表示向量&#xff0c;比如说vv。当用在公式中时它们通常是这样的&#xff1a; 1.1.向量相乘 1.1.1.点乘 我们该如何计算点乘呢&#xff1f;点乘是通过将…

聊聊开发一个接口用到哪些Swagger 注解

文章目录 常用swagger注解类注解方法注解字段注解 Swagger配置引入依赖编写配置类静态资源映射访问swagger ui 为什么要聊Swagger呢&#xff0c;原因是我发现实际开发中前端同事每次都需要问我枚举是什么&#xff0c;经过反思&#xff0c;我觉得是接口文档写的不够好。所以整理…

【Nginx系列】多个路径指向一个地址

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

fastadmin修改后台登录背景

背景 fastadmin 用习惯了&#xff0c;但是登录界面真的不好看&#xff0c;今天就修改一下。先看界面&#xff1a; 解决方案 1.安装插件&#xff1a;后台登录背景。 2.上传固定图片修改登录页面为如下&#xff1a; <!DOCTYPE html> <html> <head>{include…

Unreal Engine Groom打包没有物理模拟

编辑器中运行头发有物理模拟效果&#xff0c;打包后没有 Project Setting 加/HairStrands

MCU-USB转UART的底层逻辑

USB/UART Bridge: Understand Everything in Animations - Parlez-vous Tech 没有 USB 端口的 PC 如何与单片机通信&#xff1f; 答案就在 USB/UART 桥接器中。 无论是用于调试、连接 IoT 传感器还是进行工业监督&#xff0c;此桥接器都简化了硬件集成并使通信更加可靠。以…

仿真键盘输入遇到Edge环境不识别 回车符如何处理

这个问题我也是最近才遇到&#xff0c;可能现在大家都喜欢用新架构&#xff0c;基于网页来写应用管理软件。 当遇到Edge环境下&#xff0c;文本框不识别回车符如何处理&#xff0c;根据笔者经验可通过配置Edge 基于键盘管理设置来解决这个事情。如图 即在Edge浏览器环境下&…

在做题中学习(79):最小K个数

解法&#xff1a;快速选择算法 说明&#xff1a;堆排序也是经典解决问题的算法&#xff0c;但时间复杂度为&#xff1a;O(NlogK)&#xff0c;K为k个元素 而将要介绍的快速选择算法的时间复杂度为: O(N) 先看我的前两篇文章&#xff0c;分别学习&#xff1a;数组分三块&#…

【html网页页面009】html+css制作学校官网主题网页制作含登录(5页面附效果及源码)

校园网站主题网页制作 &#x1f964;1、写在前面&#x1f367;2、涉及知识&#x1f333;3、网页效果&#x1f308;4、网页源码4.1 html4.2 CSS4.3 源码获取w034学校网页源码及介绍链接 &#x1f40b;5、作者寄语 &#x1f964;1、写在前面 学校网站主题的网页 一共5个页面 网…

2024-12-08 数字人最新论文更新(MEMO, INFP, IF-MDM, SINGER, One Shot, One Talk, FLOAT等)

2024-12-08 数字人最新论文更新(MEMO, INFP, IF-MDM, SINGER, One Shot, One Talk, FLOAT等) 汇总一下最近一个星期的一些数字人论文的更新&#xff0c;我觉得比较有意思的一些文章比如SINGER&#xff0c;用Diffusion来做sing的talking head&#xff0c;确实是一个不错的文章&…

亚马逊云科技用生成式AI,向开发的复杂性动手了

生成式 AI、分布式扩展功能全面进化&#xff0c;还降价了。 同一天的发布&#xff0c;完全不同的方向。 今天凌晨&#xff0c;云计算巨头亚马逊云科技的 re:Invent 与大号创业公司 OpenAI 的发布「撞了车」。后者公布了一系列生成式 AI 应用&#xff0c;价格更贵、性能更强大&a…

HTML+CSS+JS实现简单的打字机

HTMLCSSJS实现简单的打字机 js /*** 动态打字效果函数* (select和element只能选择一个)* param {Object} options - 配置选项* param {string} options.select - 选择器&#xff0c;用于定位要显示文本的DOM元素("#id"或".class")* param {Object} optio…

[Collection与数据结构] 位图与布隆过滤器

&#x1f338;个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 &#x1f3f5;️热门专栏: &#x1f9ca; Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 &#x1f355; Collection与…

探秘AES加密算法:多种Transformation全解析

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…

【Liunx篇】基础开发工具 - vim

文章目录 一.vim的基本概念1.正常/命令模式2.插入模式3.底行模式/末行模式4.视图模式5.替换模式 二.vim的基本操作1.进入vim&#xff1a;2.退出vim: 三.vim正常模式命令集1.光标定位&#xff1a;2.复制/粘贴3.撤销4.剪切/删除5. 更改 四.vim底行模式命令集1.保存/退出2.调出行号…

基于 Python、OpenCV 和 PyQt5 的人脸识别上课打卡系统

大家好&#xff0c;我是Java徐师兄&#xff0c;今天为大家带来的是基于 Python、OpenCV 和 PyQt5 的人脸识别上课签到系统。该系统采用 Python 语言开发&#xff0c;开发过程中采用了OpenCV框架&#xff0c;Sqlite db 作为数据库&#xff0c;系统功能完善 &#xff0c;实用性强…

在Linux(ubuntu22.04)搭建rust开发环境

1.安装rust 1.安装curl: sudo apt install curl 2.安装rust最新版 curl --proto ‘https’ --tlsv1.2 https://sh.rustup.rs -sSf | sh 安装完成后出现&#xff1a;Rust is installed now. Great! 重启当前shell即可 3.检验是否安装成功 rustc --version 结果出现&…

手机租赁系统全面解析与开发指南

内容概要 手机租赁系统已经成为现代商业中不可或缺的一部分&#xff0c;尤其是在智能手机普及的时代。随着消费者对新机型兴趣的不断增加&#xff0c;大家纷纷走上了“试一试再买”的道路&#xff0c;手机租赁这条路因此越走越宽。这部分的市场需求让创业者们看到了机会。不仅…

vue vxe-table 实现财务记账凭证

使用 vxe-table 实现财务记账凭证非常简单&#xff0c;实现在线实时编辑的记账凭证、自动合计金额等 官网&#xff1a;https://vxetable.cn/ <template><div><vxe-grid ref"gridRef" v-bind"gridOptions" v-on"gridEvents">&…