Numpy库中常用函数:基本操作、矩阵运算和数组处理
Numpy库是Python中用于科学计算的基础包之一,它提供了一些基本的数据结构和操作,包括多维数组、基本运算、线性代数和随机数生成等等。在此文中,将着重介绍Numpy库中常用的函数,包括基本操作、矩阵运算和数组处理。
一、基本操作
1.创建数组:使用numpy.array()函数创建一个多维数组。例如,创建一个1x3的数组:
import numpy as np a = np.array([1, 2, 3]) print(a)
输出:
2.数组属性:通过shape、dtype、ndim、size等属性了解数组的信息,其中shape表示数组的维度,dtype表示数组中元素的数据类型,ndim表示数组的维数,size表示数组中元素的总数。
a = np.array([[1, 2, 3], [4, 5, 6]]) print(a.shape) #输出(2,3) print(a.dtype) #输出int64 print(a.ndim) #输出2 print(a.size) #输出63.数组切片:可以通过切片方式访问数组元素。例如,访问数组a中的第0行第2列元素,可以使用a[0,2]。
a = np.array([[1, 2, 3], [4, 5, 6]]) print(a[0,2]) #输出3 print(a[1,:]) #输出[4,5,6] print(a[:,1]) #输出[2,5]4.数组重塑:可以使用reshape函数将一个数组变成另一种形状的数组。例如,将一个3x3的数组转换成一个9x1的数组。
a = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) b = a.reshape(9,1) print(b)输出:
[[1] [2] [3] [4] [5] [6] [7] [8] [9]]二、矩阵运算
1.矩阵乘法:numpy库中提供dot()函数实现矩阵乘法,使用前提是两个矩阵的行列数匹配。
a = np.array([[1,2],[3,4]]) b = np.array([[5,6],[7,8]]) c = np.dot(a, b) print(c)输出:
[[19 22] [43 50]]2.矩阵转置:numpy库中的transpose()函数用于矩阵转置。
a = np.array([[1, 2, 3], [4, 5, 6]]) print(np.transpose(a))输出:
[[1 4] [2 5] [3 6]]3.逆矩阵:numpy库中提供linalg.inv()函数用于矩阵求逆。
a = np.array([[1, 2], [3, 4]]) b = np.linalg.inv(a) print(b)输出:
[[-2. 1. ] [ 1.5 -0.5]]4.行列式:numpy库中提供linalg.det()函数用于矩阵行列式的求解。
a = np.array([[1, 2], [3, 4]]) b = np.linalg.det(a) print(b)输出:
-2.0三、数组处理
1.数组去重:numpy库中的unique()函数用于返回输入数组中的无重复元素的版本。
a = np.array([1, 2, 3, 1, 2, 4, 5]) print(np.unique(a))输出:
[1 2 3 4 5]2.数组连接:将两个或多个数组合并成一个数组,numpy库中的concatenate()函数可以完成数组的拼接操作。
a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6]]) c = np.concatenate((a,b), axis=0) print(c)输出:
[[1 2] [3 4] [5 6]]3.数组重复:numpy库中的repeat()函数用于重复数组中的元素。例如,将数组[1,2,3]中每个元素重复3次,可以使用repeat()函数完成。
a = np.array([1, 2, 3]) b = np.repeat(a, 3) print(b)输出:
[1 1 1 2 2 2 3 3 3]4.数组间操作:numpy库中有一些函数用于在数组间进行操作,比如取交集、并集和差集等,常用的函数有intersect1d()、union1d()和setdiff1d()。
a = np.array([1, 2, 3, 4]) b = np.array([3, 4, 5, 6]) c = np.intersect1d(a, b) d = np.union1d(a, b) e = np.setdiff1d(a, b) print(c) print(d) print(e)输出:
[3 4] [1 2 3 4 5 6] [1 2]总结:本文中介绍了Numpy库中常用的函数,包括基本操作、矩阵运算和数组处理等。熟练应用这些函数可以提升科学计算的效率和精度,在数据分析和科学研究等领域有着广泛的应用。
