Jupyter Notebook工具中ndarry数组的使用(一)

今天学习了jupyter notebook工具中ndarray数组的使用。具体包括:

第一步,导入numpy包 -------import numpy as np

在这里插入图片描述

第二步,创建ndarray数组。通过numpy模块中的常用的几个函数进行创建ndarray多维数组对象,主要函数如下:

array函数:接收一个普通的python序列,并将其转换为ndarray----np.array([x,y,z,…])
zeros函数:创建指定长度或者形状的全零数组。------np.zeros((x,y))
ones函数:创建指定长度或者形状的全1数组。-----np.ones((x,y))
empty函数:创建一个没有任何具体值的数组(准备地说是创建一些未初始化的ndarray多维数组)----np.empty((x,y))
arange函数: 类似python的range函数,通过指定开始值、终值和步长来创建一个一维数组,注意:最终创建的数组不包含终值-----np.arange(x,y,z)
x起始值 y终止值(但是创建的数组不包括y) z步长
linspace函数:通过指定开始值、终值和元素个数来创建一个一维数组,数组的数据元素符合等差数列,可以通过endpoint关键字指定是否包含终值,默认包含终值------np.linsapce(x,y,z,endpoint=True) x起始值 y终止值 z个数
logspace函数:和linspace函数类似,不过创建的是等比数列数组—np.logsapce(x,y,z,endpoint=True,base=…) x起始值 y终止值 (x,y是次数) z个数 , base指定底数默认值是10
使用随机数填充数组,即使用numpy.random中的random()函数来创建0-1之间的随机元素,数组包含的元素数量由参数决定 —np.random.random((x,y,z))

第三步,ndarray数组的属性。

ndim 数组轴(维度)的个数,轴的个数被称作秩 arr.ndim
shape 数组的维度, 例如一个2排3列的矩阵,它的shape属性将是(2,3),这个元组的长度显然是秩,即维度或者ndim属性 arr.shape
size 数组元素的总个数,等于shape属性中元组元素的乘积。 arr.size
dtype 一个用来描述数组中元素类型的对象,可以通过创造或指定dtype使用标准Python类型。不过NumPy提供它自己的数据类型。 arr.dtype
itemsize 数组中每个元素的字节大小。例如,一个元素类型为float64的数组itemsiz属性值为8(=64/8),又如,一个元素类型为complex32的数组item属性为4(=32/8). arr.itemsize
创建numpy数组的时候可以通过属性dtype显示指定数据类型,如果不指定的情况下,numpy会自动推断出适合的数据类型,所以一般不需要显示给定数据类型。np.array([],dtype=…)
如果需要更改一个已经存在的数组的数据类型,可以通过astype方法进行修改从而得到一个新数组 arr.astype(…)

在这里插入图片描述
在这里插入图片描述

第四步,ndarray修改形状

对于一个已经存在的ndarray数组对象而言,可以通过修改形状相关的参数/方法从而改变数组的形状。
直接修改数组ndarray的shape值, 要求修改后乘积不变。arr.shape(x,y)
直接使用reshape函数创建一个改变尺寸的新数组,原数组的shape保持不变,但是新数组和原数组共享一个内存空间,也就是修改任何一个数组中的值都会对另外一个产生影响,另外要求新数组的元素个数和原数组一致。arr.reshape(x,y)
当指定某一个轴为-1的时候,表示将根据数组元素的数量自动计算该轴的长度值。

第五步,ndarray基本操作。—元素级运算

数组不用循环即可对每个元素执行批量的算术运算操作,这个过程叫做矢量化,即用数组表达式代替循环的做法。
矢量化数组运算性能比纯Python方式快上一两个数据级。
大小相等的两个数组之间的任何算术运算都会将其运算应用到元素级上的操作。
元素级操作:在NumPy中,大小相等的数组之间的运算,为元素级运算,即只用于位置相同的元素之间,所得的运算结果组成一个新的数组,运算结果的位置跟操作数位置相同。
元素级矩阵运算结果

第六步,ndarray的矩阵积,

两个二维矩阵(行和列的矩阵)满足第一个矩阵的列数与第二个矩阵的行数相同,那么可以进行矩阵的乘法,即矩阵积,矩阵积不是元素级的运算。也称为点积、数量积。
矩阵级运算

  • 2
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值