首页 > 编程语言 > 详细

python (七、Numpy高效数据处理)

时间:2018-02-18 12:32:19      阅读:436      评论:0      收藏:0      [点我收藏+]

 

Numpy的主要作用是进行矩阵运算

在使用时首先要导入包

import numpy as np

 

np.version.version 用来查看版本信息

 

# 构建一维数组
n1=np.array([1,2,3])    注意外面是小括号


n1.shape 输出维度数

# 构建二维数组
n2= np.array([[1,2,3],[4,5,6]]) 一个大方括号,里面是两个小方括号
n2.shape   

(2, 3)

 

下面这几个比较绕人,多看多记

# 快速构建 ndarray
# 序列创建:
np.arange(15)#类似于 python 中的 range,创建一个第一个维度为 15 的 ndarray 对象。
Out[154]:
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14])
In [156]:
np.arange(2,3,0.1) #起点,终点,步长值。含起点值,不含终点值。
Out[156]:
array([ 2. ,  2.1,  2.2,  2.3,  2.4,  2.5,  2.6,  2.7,  2.8,  2.9])
In [159]:
 
np.linspace(1,10,10) #起点,终点,区间内点数。起点终点均包括在内。
Out[159]:
array([  1.,   2.,   3.,   4.,   5.,   6.,   7.,   8.,   9.,  10.])
In [160]:
np.arange(0,1,0.1) #0 到 1 之间步长为 0.1 的数组, 数组中不包含 1
Out[160]:
array([ 0. ,  0.1,  0.2,  0.3,  0.4,  0.5,  0.6,  0.7,  0.8,  0.9])
In [163]:
np.linspace(0, 1, 5) # 开始:0, 结束 1, 元素数 5。
Out[163]:
array([ 0.  ,  0.25,  0.5 ,  0.75,  1.  ])

np.eye(3)# 对角线矩阵  (三行三列)

array([[ 1.,  0.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  0.,  1.]])

np.random.rand(3,2) #随机数矩阵:   三行两列

 

 

注意点:

a[:,:] # 第一个冒号代表切出所有的行,第二个冒号代表切出所有的列。

 

 

c1=np.arange(50).reshape(2,5,5)
np.save(‘d:/c1‘,c1)      
# 保存好的数组,默认后缀为 npy
# 多个数组保存使用 savez 方法。

# 在根路径的情况下如上就直接写

 # 但在其他的路径时,np.save(‘C:\\Users\\asus\\Desktop\\python课程\\a1‘,a1)

a1=np.arange(50).reshape(2,5,5) # ????
np.save(‘C:\\Users\\asus\\Desktop\\python课程\\a1‘,a1)
np.load(‘C:\\Users\\asus\\Desktop\\python课程\\a1.npy‘)


# 读取
# load 方法载入 numpy 格式的数据
# savetxt,loadtxt 方法载入文本格式的数据同理

 

numpy y 函数 参考
生成函数 作用
np.array( x)将输入数据转化为一个 ndarray
np.array( x, dtype)将输入数据转化为一个类型为 type 的 ndarray
np.asarray( array ) 将输入数据转化为一个新的(copy)ndarray
np.ones( N )生成一个 N长度的一维全一 ndarray
np.ones( N , dtype)生成一个 N长度类型是 dtype 的一维全一 ndarray
np.ones_like( ndarray )生成一个形状与参数相同的全一 ndarray
np.zeros( N )生成一个 N长度的一维全零 ndarray
np.zeros( N , dtype)生成一个 N长度类型位 dtype 的一维全零 ndarray
np.zeros_like(ndarray)类似 np.ones_like( ndarray )
np.em pty( N )生成一个 N长度的未初始化一维 ndarray
np.em pty( N , dtype)q生成一个 N长度类型是 dtype 的未初始化一维 ndarray
np.em pty(ndarray)类似 np.ones_like( ndarray )
np.eye( N )创建一个 N * N的单位矩阵(对角线为 1,其余为 0)
np.identity( N )
np.arange( num ) 生成一个从 0 到 num-1 步数为 1 的一维 ndarray
。。。。。。

诸如此类不再附上

 

 

 

 

 

 

 

技术分享图片

技术分享图片

技术分享图片

 技术分享图片

 

技术分享图片

技术分享图片

 

股票相关统计量计算
? 读入的给定的 ibm 股价数据中的收盘价及成交量
? 计算成交量加权平均价 VWAP(收盘价)
? 计算时间加权平均价 TWAP(收盘价)
? 找出 IBM 股票收盘价的极差
? 计算其收盘价的中位数,均值及方差
? 计算股票的收益率(简单收益率与对数收益率)
? 计算对数收益收益率大于 1%的天数有多少?

 

python (七、Numpy高效数据处理)

原文:https://www.cnblogs.com/qianyuesheng/p/8451937.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!