Numpy 库的简单介绍和使用

python在处理数据时,会涉及到很多线性代数的运算,比如矩阵的计算,Nump的存在,大大简化了在使用python计算的复杂性,下面简单介绍下numpy的一些基础。

Numpy库中存在两种数据类型,数组(ndarray)和矩阵(matrix):

生成数组(ndarray):

arr = np.array([[1, 2, 3, 4, 5, 6],[2,3, 4, 5, 6, 7]])

arr = np.array((1, 2, 3, 4, 5))

arr = np.arange(5)  # [0 1 2 3 4] 

arr = np.linspace(0, 5,  5)

linspace(a, b , c, d)   在[a, b]中均匀的取c个数,d为False 不包含b, 默认为True

 

生成元素全为0的数组:

zero_arr = np.zeros((7, 7))

 

生成元素全为1的数组:

one_arr = np.ones((7,7))

 

生成单位矩阵形式的数组:

eye = np.eye(7)

 

生成随机数组:

random_arr = np.random.random((7, 7))

 

从ndarray中取值:

类似 切片,例如 random_arr 为7*7的数组

取前两行:

random_arr[:2], 其实真正的形式为 random[:2, :],即 获取前两行的所有列的元素

那前两列就为:

random_arr[:, :2], 前面的冒号不能省略

故 前两行和前两列的元素为: 

random[:2, :2]

以此类推可以获取任何的形式的元素

间隔取就是这种形式:

randim[::2, ::2]  从0开始 行列都间隔一行获取元素

 

四则运算:

numpy的加减乘除运算和普通类型一样 直接 + - * / 就可以

arr1 = np.random.random((5, 5))

arr2 = np.random.random((5, 5))

sum = arr1 + arr2

minus = arr1 - arr2

mult = arr1 * arr2

divid = arr1 / arr2

值得注意的是,四则运算都是对应位置元素之间的运算,特别是乘法,要和矩阵乘法区分,由于是对应元素,故相互运算的两个数组的尺寸即shape 要相同。

矩阵乘法运算要使用 dot

arr1.dot(arr2)

 

numpy 数组的属性:

简单介绍几个,可以通过dir 查看所有属性

arr.ndim  数组的维度

arr.size 数组的大小

arr.itemsize 数组的一个元素所占用的字节

arr.nbytes 数组所有元素所占用的字节

 

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值