ITPub博客

首页 > 数据库 > 数据库开发技术 > Python处理时间数据——每天股票涨了多少?

Python处理时间数据——每天股票涨了多少?

原创 数据库开发技术 作者:阿黎逸阳的代码 时间:2021-01-04 20:12:07 0 删除 编辑
在对数据进行分析的过程中,发现Python对时间数据处理比较费劲。
比如有一个数据集保留了股票的交易日期、开盘价、收盘价,怎么计算当天股价相较上一天是上涨了还是下跌了?上涨和下跌的幅度又是多少?

本节跟大家分享这个具体案例。

本文目录
  1. 读取数据文件

  2. 将日期列设置为数据框索引

  3. 计算股票每天相较于前一天的波动情况



 1   读取数据文件

首先设置文件的存放目录,读取股票数据。
import osimport pandas as pd
os.chdir(r'F:\公众号\6.学习python') #设置成存放数据文件夹路径date = pd.read_csv("股票数据.csv", encoding = 'GBK') #读取数据
注:如需文中数据进行练习,可到公众号中回复“股票数据波动”即可免费获取。
由于文件标题是中文,直接读取会报错,所以加了encoding编码申明。一般encoding设置成GBK、utf-8、GB2312即可满足读取需求。
打印date前5行结果如下:


 2   将日期列设置为数据框索引

接着把数据框中的日期设置为索引,并把索引中的日期转成时间格式。方便后续根据日期计算波动情况。
date = date.set_index('日期')            #把日期列设置为索引date.index = pd.to_datetime(date.index)  #把索引中的日期转成时间格式date.head(5)

得到结果如下:


 3   计算股票每天相较于前一天的波动情况

最后,来看下每天相较于前一天股价的波动情况。为了计算股票波动值,先来介绍shift函数。
这个函数可以把数据框去掉最后一行,再把数据框整体往后移一行,空出来的第一行用NaN填充。
date.head(5).shift(1)
得到结果如下:

接着计算后一天收盘价减去前一天收盘价,并把结果保存到原始数据中去,具体代码如下:
date['每日相较前一天波动'] = (date['收盘价'].shift(1) - date['收盘价']).shift(-1)    #计算后一天收盘价减去前一天收盘价date.head(5)
得到结果如下:

至此,在python中计算每天股票波动情况已介绍完毕,大家可以动手练习一下。
往期回顾:
微信头像加圣诞树
520表白代码合集
黑客帝国中的代码雨
用python绘制皮卡丘
娱乐圈排行榜动态条形图绘制
Python人脸识别—我的眼里只有你
3D星空图V2版——添加背景图片和音乐


扫一扫关注我

19967879837

投稿微信号、手机号

原文作者:阿黎逸阳的代码;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-02-15

  • 博文量
    282
  • 访问量
    130883