1、random 随机模块
import random
code = random.choice(stock_list)
# 从一个列表中随机选取元素下面是我目前经常用到的模块,为了方便使用,不是有特殊需求的话,个人觉得一开始没比亚每个模块都很深入学习,只要知道自己常用的一些方法就行。随时更新,请搜索使用。
random 随机选取模块:
1
2
3
4
|
import random a = [ 1 , 2 , 3 , 4 , 5 ] print (random.choice(a)) # 随机从列表中抽取一个元素 code = random.choice(stock_list) # 从一个列表中随机选取元素 |
os 文件夹模块:
1
2
3
4
5
6
7
|
import os # 设置默认文件路径 os.chdir() os.chdir(u 'C:/Users/Ocean/OneDrive/class5/data/input_data/stock_data' ) df = pd.read_csv( 'sz300001.csv' ) print df |
程序根目录地址,os.pardir:父目录 parent directory
1
2
|
root_path = os.path.abspath(os.path.join(current_file, os.pardir, os.pardir)) # 两级父目录 print root_path |
输入数据根目录地址
1
|
input_data_path = os.path.abspath(os.path.join(root_path, 'data' , 'input_data' )) |
time 时间模块:
1
|
import time |
获取当前日期
1
|
date_now = time.strftime( '%Y-%m-%d' , time.localtime(time.time())) |
计时器
1
2
3
4
|
start = time.time() end = time.time() used_time = str (end - start) print "used_time: " + used_time |
2、matplotlab.pyplot 作图模块
1
|
import matplotlib.pyplot as plt |
添加空白画布
1
|
fig = plt.figure(figsize = ( 12 , 5 )) |
在空白画布上设置一块区域
1
|
ax = fig.add_subplot( 1 , 1 , 1 ) |
设置画块的标题
1
2
3
|
ax.set_title( str (code)) ax.set_xlabel( 'Time' ) # 设置横坐标x轴的名字 ax.set_ylabel( 'Return' ) # 设置Y轴 |
画一根2D线图,并设置名称为 'stock_return'
1
|
plt.plot(df[equity], label = 'stock_return' ) |
绘制散点图
1
|
plt.scatter(df[ 'ma_long' ], df[ 'final_ratio' ], label = 'ma_long' ) |
还有更多的图形可以绘制,如果真的有需要,可以网上再搜索
1
2
|
plt.legend(loc = 'best' ) # 显示图线的名字 plt.show() # 绘出图像结果 |
3、mpl_toolkits.mplot3d 绘制3D图模块
1
2
3
4
5
6
7
8
9
|
from mpl_toolkits.mplot3d import Axes3D fig = plt.figure() ax = Axes3D(fig) ax.scatter(df[ 'ma_long' ],df[ 'ma_short' ],df[ 'final_ratio' ], c = 'b' ) #绘制数据点 # 设置坐标轴名字 ax.set_zlabel( 'final_ratio' ) #坐标轴 ax.set_ylabel( 'ma_short' ) ax.set_xlabel( 'ma_long' ) plt.show() |
原文链接:https://zhuanlan.zhihu.com/p/33375411