import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
#读取数据
stock = pd.read_csv(‘D:/0py-stock analysis/predict/600425test2.csv’, parse_dates=[0], index_col=0)#usecols=range(15)读取前15列
#parse_dates=[0]将第一列数据解析成时间格式。index_col=0将第一列数指定为索引。
stock = stock[::-1] #逆序排列
print(stock.head())
#stock.info() #查看是否有缺失值
stock[‘close’].plot(grid=True)#绘图grid=True为生成网格线
plt.show()
stock[‘p_change’].plot(grid=True).axhline(y=0, color=’black’, lw=2)#绘制涨跌幅的曲线图
plt.show()
close_price = stock[‘close’]
log_change = np.log(close_price) – np.log(close_price.shift(1))#当前值减去上一行的值
log_change.plot(grid=True).axhline(y=0, color=’black’, lw=2)
small = stock[[‘close’, ‘price_change’, ‘ma20′,’volume’, ‘v_ma20’]]
_ = pd.scatter_matrix(small)
#相关性分析,观测这些指标之间的关系
small = stock[[‘close’, ‘price_change’, ‘ma20′,’volume’, ‘v_ma20’]]
cov = np.corrcoef(small.T)
print(cov)#计算各个指标之间的相关系数
img = plt.matshow(cov,cmap=plt.cm.winter)
plt.colorbar(img, ticks=[-1,0,1])
plt.show()#将相关系数可视化
stock[[‘close’,’volume’]].plot(secondary_y=’volume’, grid=True)#将两个量绘制在一张图上