numpy模块

4由于python对数字的不准确,不只是python

其他很多编程语言对数字都不是很敏感

但python又可以做人工智能,量化交易等,数据必须精确无误,就需要用到numpy模块

 


 

numpy简介

1.Numpy是高性能科学计算和数据分析的基础包
2.也是pandas等其他数据分析的工具的基础
3.NumPy具有多维数组功能,运算更加高效快速

打开anaconda软件 点击 notebook 

 


单维数组与多维数数组

在numpy中

 

 为单维数组

 

 为二维数组(矩阵)

同一个数组内的数组类型是一致的 ,一旦有小数,其他整数都会转换成x.的形式表示


 

数据类型

布尔型 bool_ 后面的下划线是为了和python语言做区分

整形int_ int8 int16 int32 int64

无符号整型 uint8 uint16 uint32 uint64

浮点型 float_ float16 float32 float64

复数型 complex_ complex64 complex128


常用属性

T  数组的转置(二维数组以上)

 

 

dtype 数组元素数据类型

 

 

 size 元素个数

 

 

 ndim 数组个数

 

 

 shape 数组维度大小(两行三列)


 

常用方法

如何查看使用方法 

方法1 在方法后加?即可查看

方法2 在方法名后 按住shift+tab 查看(推荐使用)

 

 

 

 array()将列表转为数组

arrange()range的numpy版,支持浮点数

 

 

 也可以支持小数

 

 

 linspace()这个方法顾头顾尾

 

 

 zero() 根据参数和dtype创建全0数组

np.zero((3,4))创建一个三行四列的全零数组

 

 

 ones()根据参数和dtype创建全1数组

np.ones((2,3)) 创建一个两行三列的全1数组

 

 

 empty()根据参数和dtype创建一个空数组

np.empty(40)创建随机数组

 

 

 np.eye(10)根据指定边长和dtype创建单位矩阵(10*10)


 

索引和切片

 

 

 

 

 

 

 间断索引(通过指定索引值取数据)

 

 

逻辑索引res[res>100]

 

 

 

 针对二维数组索引与切片

res[行索引(切片),列索引(切片)]  

 

 

 res1[0:2,1,4]

 

 

 

 

 

 res1[2,:] 取第三行

 

 

 res1[:,3] 取第四列

 

 

 res1[2,2] 取15


 

运算符

数学运算符

 + 数组对应元素相加

 

 

 -数组对应元素相减

 

 

 *数组元素相乘

 

 

 /数组元素相除

 

 

 %数组元素商的余数

 

 

  // 数组元素的整除数

 

 

 **数组对应元素的幂指数

 

 

 比较运算符

> 判断res1元素是否>res2元素

 

 

 <判断res1元素是否<res2元素

 

 

 >=判断res1元素是否大于等于res2元素

 

 

  <=判断res1元素是否小于等于res2元素

 

 

 ==判断res1元素是否等于res2元素

 

 

 != 判断res1元素 是否不等于res2元素


 

函数

np.round(res1)对res1的元素四舍五入

 

   np.sqrt(res1) 对res1的元素算术平方根

 

  np.square(res1) 计算res1元素的平方值

 

   np.exp(res1)计算res1以e为底的指数

 

np.power(res1, α) 计算各元素的指数    

 

   np.log2(res1)   计算以2为底各元素的对数

 

   np.log10(res1) 计算以10为底各元素的对数

 

  np.log(res1)   计算以e为底各元素的对数

 

 常用统计函数:

np.min(res1)求最小值

 

 np.max(res1) 求最大值

 

 np.mean(res1)求平均值

 

 np.median(res1)计算中位数

 

 np.sum(res1) 按照轴的方向计算和

 

 np.std(res1)按照轴的方向计算标准差  

 

 也可以通过axis=0 对一个二维数组求各列的统计值

                   axis=1 对一个二维数组求各行的统计值

 

 

 


随机数

numpy中的random子模块
np.random

rand    给定形状产生随机数组(0到1之间的数)    
randint    给定形状产生随机整数    
choice    给定形状产生随机选择    
shuffle    与random.shuffle相同    
uniform    给定形状产生随机数组(随机均匀分布)
normal  随机正态分布

 

posted @ 2021-10-13 16:00  查无此人cxc  阅读(107)  评论(0)    收藏  举报