numpy基础

这篇博客介绍了numpy库在Python中的基础用法,包括如何创建数组、执行数组操作,如乘法、矩阵乘法,以及各种索引方式。还详细讲解了数组的属性,如形状、大小和数据类型,并探讨了求解方程组和计算欧式距离的方法。

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

numpy :numerical python,多用于多维数组执行计算

创建数组

一般创建数组有三种方式:

  • numpy内部功能函数
  • 从python列表转换
  • numpy内部功能函数

  • 使用特殊的库函数
    1.指定数据
    np.full((a,b),k)生成填充k的a * b数组
    np.eye(n,n)生成n * n,对角线为1的数组
    np.linspace(a,b,num=k)
    返回均匀间隔的数据[a,a+(b-a)/(k-1) …]
    2.初始化
    np.zeros(2,2)生成2* 2的0数组
    np.ones(2,3)生成2* 3的1数组
    np.empty(2,3)生成2 * 3的随机数数组
    np.random.random(2,3)生成2* 3的随机数组
    3.np.arange(n)
    创建以0-n-1的一维数组
    4.由一维数组变为2维数组
    a = np.arange(20).reshape(4,5)
    则声称4* 5的二维数组

  • 从python列表转换
    np.array([1,2,3,4,5])
    即将列表传递给np.array
  • 使用特殊的库函数
    如创建0-1填充的数组,使用random函数
    np.random.random((2,2))
    在这里插入图片描述
数组操作

array1* array2表示数组间字符相乘,即逐元素乘法
array1.dot(array2)表示矩阵乘法

数组属性

type(a)为ndarray
array.shape表示形状(行* 列)
array.size表示元素数
array.itemsize表示每项占用的字节数
array.dtype表示数组的数据类型
例数据类型为int 64 有64位,一个字节为8位,64/8=8得到每项占用的字节数
array.ndim表示属性,即数组的维数
array.nbytes数组中的所有数据消耗掉的字节数
array.sum; array.min; array.max字面功能
array.cumsum

花式索引

a = []
b = [1,2,3]
a[b]返回索引为1,2,3的元素

缺省索引

array[:5]
array[a>=5]

整数数组索引

a = np.array()

print(a[[1,0,1],[1,0,0]])
将得到[(1,1),(0,0),(1,0)]

where函数

根据条件返回数组中的值的方法
a = np.arange(0,10)
b = np.where(a>5) b = (array[6,7,8,9],int 64)
c = np.where(a>5)[0] c = [6,7,8,9]
np.tile(array1,tuple或常数)
若为常数,则一行重复次数
a = np.array([1,0,1])
np.tile(a,2) = array([1,0,1,1,0,1,1,0,1])
若为tuple,
np.tilt(a,(3,1))表示得到3行1列
在这里插入图片描述

np.tile(a,(1,3))表示得到1行3次
在这里插入图片描述

构造向量

v= np.array([1],[2],[3])
方便的方法是转置相应的行向量
v= np.transpose(np.array([1,2,3]))

求解方程组

Ax = b
已知A,b求x
x = np.linalg.solve(A,b)

数组a和b之间的欧式距离

dist = np.linalg.norm(a-b)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值