Numpy学习笔记

目录

一、简介

二、主要内容

1、ndarray数组的创建方法

 2、ndarray对象的属性

3、ndarray的元素类型

4、 ndarray数组的变换(形状、类型)

 5、ndarray数组的操作(索引与切片)

6、ndarray数组的运算

三、参考资料


一、简介

NumPy(Numerical Python) 是Python语言的一个扩展程序库,支持大量维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。NumPy 最重要的一个特点是其 N 维数组对象 ndarray,它是一系列同类型数据的集合,以 0 下标为开始进行集合中元素的索引。ndarray 对象是用于存放同类型元素的多维数组。

二、主要内容

1、ndarray数组的创建方法

(1)列表与元组的形式

#列表形式
x = np.array([1, 2, 3])
#元组形式
y = np.array((1, 2, 3))

(2)NumPy中函数创建

np.arange(10)#类似range()函数,返回ndarray类型,元素从0到n‐1
np.ones([2, 3])#np.ones(shape),根据shape生成一个全1数组,shape是元组类型
np.zeros([2, 3])#同上
np.full([2,], 5)#np.full(shape,val) 根据shape生成一个数组,每个元素值都是val
np.eye(5)#创建一个正方的n*n单位矩阵,对角线为1,其余为0
np.ones_like([1, 2, 3])#根据数组a的形状生成一个全1数组
np.zeros_like([1, 2])#根据数组a的形状生成一个全0数组
np.full_like([[1, 2, 3],[4, 5, 6]],5)#根据数组a的形状生成一个数组,每个元素值都是val
np.linspace(1, 10, 3)#等差 根据起止数据等间距地填充数据,形成数组
np.concatenate(([1],[2]))#将两个或多个数组合并成一个新的数组

 2、ndarray对象的属性

# N维数组对象:ndarray
a = np.array([1,2,3,4])#一维数组对象
b = np.array([[1,2,3],[4,5,6]])#二维数据对象

# 1、N维数组的维度
a.ndim, b.ndim
# 2、数组的形状
a.shape, b.shape
# 3、数组中元素的个数
a.size, b.size
# 4、数组元素的类型
a.dtype, b.dtype

3、ndarray的元素类型

菜鸟教程-numpy的元素类型

4、 ndarray数组的变换(形状、类型)

#修改数组形状的函数:reshape、resize
np.ones((2,3,4)).reshape([4,6])#根据shape[4,6]修改原数组的形状,但是不改变原数组
x = np.zeros((2, 3))
x.resize((3, 2))#修改形状,同时修改原数组
#修改数组元素的数据类型
x.dtype #先查看数据类型
y = x.astype(np.int64) #类型转换
ls = y.tolist()#数组向列表转换

 5、ndarray数组的操作(索引与切片)

注意:索引就是根据具体位置下标获取元素,而切片是获取一串元素子集(切片表示为“:”)

#索引操作
a = np.array([1,2,3,4,5,6])
a[5],a[-1]#从左开始:0递增;从右开始:-1递减
#切片操作
a = np.array([1,2,3,4,5,6])
a[1:4:2]#起始编号:终止编号(不含):步长

注意:当然也可以选择某一维度进行切片操作

b = np.arange(24).reshape((2,3,4))
b[:,1:3,:]

6、ndarray数组的运算

(1)一元运算

函数说明
np.abs(x) np.fabs(x)
计算数组各元素的绝对值
np.sqrt(x)
计算数组各元素的平方根
np.square(x)
计算数组各元素的平方
np.log(x) np.log10(x)
np.log2(x)
计算数组各元素的自然对数、10底对数和2底对数
np.ceil(x) np.floor(x) 计算数组各元素的ceiling值 或 floor
np.rint(x)
计算数组各元素的四舍五入值
np.modf(x)
将数组各元素的小数和整数部分以两个独立数组形式返回
np.cos(x) np.cosh(x)
np.sin(x) np.sinh(x)
np.tan(x) np.tanh(x)
计算数组各元素的普通型和双曲型三角函数
np.exp(x)
计算数组各元素的指数值
np.sign(x)
计算数组各元素的符号值, 1(+), 0, ‐1(‐)

(2)二元运算 

函数说明
+ ‐ * / **
两个数组各元素进行对应运算
np.maximum(x,y) np.fmax()
np.minimum(x,y) np.fmin()
元素级的最大值/最小值计算
np.mod(x,y)
元素级的模运算
np.copysign(x,y)
将数组y中各元素值的符号赋值给数组x对应元素
> < >= <= == !=
算术比较,产生布尔型数组

三、参考资料

1、菜鸟教程-NumPy教程

2、学习视频

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值