Numpy介绍

本文详细介绍Numpy库的功能,包括强大的N维数组对象ndarray的创建与操作,线性代数、傅里叶变换、随机数生成等功能,以及如何整合C/C++/Fortran代码。同时,讲解了ndarray的属性、类型变换、维度变换和运算方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Numpy是一个开源的Python科学数据库

  1. 一个强大的N维数组对象 ndarray
  2. 广播功能函数
  3. 整合C/C++/Fortran代码工具
  4. 线性代数、傅里叶变换、随机数生成等功能

N维数组对象ndarray

np.array()生成一ndarray数组
np.array()输出成[]形式,元素由空格分割

ndarray对象的属性

属性说明
a.ndim秩,即轴的数量或维度的数量
a.shapendarray对象的尺度,对于矩阵,n行m列
a.sizendarray对象元素的个数,相当于.shape中n*m的值
a.dtypendarray对象的元素类型
a.itemsizendarray对象中每个元素的大小,以字节为单位

ndarray数组的创建

  1. x=np.array(list/tuple,dtype=np.float32)
  2. 使用NumPy中函数创建ndarray数组
    np.arange(n)
    np.ones(shape) 生成一个全1数组,shape是元组类型
    np.zeros(shape) 根据shape生成一个全0数组,shape是元组类型
    np.full(shape,val) 根据shape生成一个数组,每个元素值都是val
    np.eye(n) 创建一个正方的n*n单位矩阵,对角线为1,其余为0
    np.ones_like(a) 根据数组a的形状生成一个全1数组
    np.zeros_like(a) 根据数组a的形状生成一个全0数组
    np.full_like(a,val) 根据数组a的形状生成一个数组,每个元素值为val
    np.linspace() 根据起止数据等间距地填充数据,形成数组
    np.concatenate() 将两个或多个数组合并成一个新的数组

ndarray数组的维度变换

方法说明
a.reshape(shape)不改变原数组,返回一个shape形状的数组,原数组不变
a.resize(shape)与a.reshape()功能一致,但修改原数组
a.swapaxes(ax1,ax2)将数组n个维度中两个维度进行调换
a.flatten()对数组进行降维,返回折叠后的一维数组,原数组不变

ndarray数组的类型变换

new_a=a.astype(new_type)
astype()方法一定会创建新的数组(原始数组的一个拷贝),即使两个类型一致。

ndarray数组向列表的转换 ls=a.tolist()

ndarray数组的运算

数组与标量之间的运算作用于数组的每一个元素。
a.mean()
a=a/a.mean()

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)不超过元素的整数值,小于这个元素的最大整数值
np.rint(x)各元素的四舍五入值
np.modf(x)将数组各元素的小数和整数部分以两个独立数组形式返回

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值