python数据分析案例3:每天股票涨了多少?

这里是南京财经大学的Mooc课程的个人学习笔记,课程网址是:https://www.icourse163.org/course/NJUE-1458311167,课程是免费的,老师讲的很好很认真,欢迎学习。


数据集
网盘下载
提取码: hrmi

import pandas as pd

# 显示所有列
pd.set_option('display.max_columns', None)
# 显示所有行
pd.set_option('display.max_rows', None)
# 显示宽度为1000
pd.set_option('display.width', 1000)
# 注意,这里读取的文件带有中文,防止出错的方法就是把文件名改成英文的,或者加入参数engine='python'
df = pd.read_csv('股票数据.csv', engine='python')
print(df)

在这里插入图片描述


设置日期为索引

df = df.set_index('日期')
# 把索引转换为datatime类型
df.index = pd.to_datetime(df.index)
print(df.head(5))

在这里插入图片描述


位移操作

print(df.shift(1).head(5))

所有数据索引不变,数据向下移动一行。
在这里插入图片描述


查看收盘价的变化

print((df['收盘价']-df['收盘价'].shift(-1)).head(55))

python数据分析案例3:每天股票涨了多少?_第1张图片


查看每个月的股票收盘价趋势

df = df['收盘价'].resample('M').agg(['mean'])

python数据分析案例3:每天股票涨了多少?_第2张图片


收盘价的可视化
需要导入的包:

import matplotlib.pyplot as plt

输入:

plt.figure(figsize=(8, 4), dpi=100)
plt.plot(df['收盘价'])
plt.show()

python数据分析案例3:每天股票涨了多少?_第3张图片


收盘价可视化的优化
可以发现上图有很多奇怪的突然下降点,如何处理这些地方?

# 把绘图的Y轴设置成每个点向前取200个数据的平均值
plt.plot(df['收盘价'].rolling(200).mean())

python数据分析案例3:每天股票涨了多少?_第4张图片
这个图的数据出现了一部分的缺失,原因是一开始的点之前并没有200个点那么多,进行如下优化,加入min_periods=2

plt.figure(figsize=(8, 4), dpi=100)
plt.plot(df['收盘价'].rolling(200, min_periods=2).mean())
plt.show()

python数据分析案例3:每天股票涨了多少?_第5张图片

你可能感兴趣的:(Python大数据分析)