Python数据分析-A股市场成交量计算

兰叶春葳蕤,桂华秋皎洁。

1 前言

在前文中,作者已经分析了股票、基金的相关分析和计算,在本文中将继续分享A股市场成交量的计算,数据导出以及数据展示,主要是为了分享 pandas 数据处理的方法和思路,在本文中将涉及到 pandas 的数据合并以及 pandas 的数据导出。

2 数据准备

在之前的文章matplotlib 绘制上证指数图形 中,已经介绍了获取上证指数数据的方法,在本文中将使用同样的方法获取k线数据(数据来源为 eastmoney)。目前A股市场的总成交额包括上证指数和深证指数,因此需要综合计算两大指数的数据,即可获取最终的结果。上证指数代码 000001 和深证指数代码 399106。获取指数数据的代码如下所示: 通过方法会得到截止到当天的交易数据,可以通过 print 函数来输出指数的交易历史数据,包括交易日期,指数点位,成交金额,成交量以及换手率等信息。

3 数据计算

在准备好交易历史数据后,就可以进行数据的合并计算。A 股市场的成交金额是两大市场的总和,在 pandas 中,我们需要先将数据进行提取并进行重命名,我们需要计算两个指数的交易总额,首先需要使用 pandas merge 方法进行数据合并,数据合并使用日期进行关联,这个类似于 sql 语法的关联查询。同时需要将交易金额进行格式化处理,毕竟都是跟着好几位零的数据。

在 pandas 中,进行数据的计算十分简单,类似于四则运算即可生成一个新的数据列,两市的换手率计算比较复杂,需要根据成交总额除以两市总市值即可。接下来需要对日期进行格式化处理,提取出日期和年份数据,以方便图形化展示。

由于历史数据是从20年开始抓取的,在图形展示时会形成较多的数据线,这里只需要展示22年以来的数据即可,在进行数据截取时,需要将 pandas 的 index 进行重置,否则截取的数据还是保留原来的索引,在后续计算中会导致计算错误。即使采用了近两年的数据,也会导致数据图形的 x 坐标密集化展示,因此需要使用 xticks 对坐标进行处理,该项处理在图形化展示中至关重要。

4 数据导出

在上节中已经进行了数据的图形化处理,在本节中将把之前的数据进行导出,以便进行查看和接下来的处理。这里的数据导出采用两种方式,一种是简单的,一种是可以定制化的,以便设置单元格样式。

导出的结果如下所示:

3 总结

综上,本文使用了 pandas 进行数据计算和导出,主要介绍了数据计算的思路和方式,以及数据分析的一些技巧。相关代码已经上传至 github, 欢迎大家 star, 项目地址 fund_python。

相关推荐
做萤石二次开发的哈哈1 小时前
连锁门店、园区、交通枢纽的视频如何统一汇集?应用模板的接入与分权管理详解
人工智能·物联网·音视频·二次开发·视频监控·蓝海aiot一站式工作台·萤石云开放平台
高级程序源2 小时前
django校园寻物通失物招领平台32261-计算机课程设计、毕业设计
vue.js·python·mysql·小程序·django·flask·课程设计
老金带你玩AI2 小时前
全程拿着手机,我让dot准备了一场AI分享
人工智能
WeiXin_DZbishe2 小时前
基于springboot宠物领养系统-计算机毕设 附源码【课程设计】94217
vue.js·spring boot·python·django·php·课程设计
nvd112 小时前
Flink 批处理驱动的湖仓 AI 财务研报流水线:从双流广播汇聚到 Agent 智能决策与原生 Iceberg 落盘全景实战
大数据·人工智能·flink
kimnoic2 小时前
Python数据库学习心得:SQLite、MySQL、PostgreSQL优缺点
开发语言·python
snhna2 小时前
向量数据库深度实战:从 HNSW 到 pgvector、Milvus 选型与 RAG 落地
数据库·人工智能·python·postgresql·milvus
架构技术专栏2 小时前
Agent 工具调用:从工具声明到执行反馈
前端·人工智能·后端
点云-激光雷达-Slam-三维牙齿2 小时前
100,000 Records CSV File - India Traffic Accident Analysis Dataset.7z
人工智能·数据集
TechWayfarer2 小时前
精度极限的突破:AI与IPv6如何重塑高精度IP查询
人工智能·网络协议·tcp/ip·transformer