使用SciPy是否需要显式导入NumPy函数?
导入SciPy后,无需显式导入NumPy函数,因为默认情况下所有NumPy函数都可通过SciPy命名空间访问。但由于SciPy构建在NumPy数组之上,我们必须了解NumPy的基础知识。
由于线性代数的大部分内容都只处理向量和矩阵,让我们了解NumPy向量和矩阵的基本功能。
通过转换Python类数组对象创建NumPy向量
让我们通过以下示例来理解这一点:
示例
import numpy as np list_objects = [10,20,30,40,50,60,70,80,90] array_new = np.array(list_objects) print (array_new)
输出
[10 20 30 40 50 60 70 80 90]
NumPy数组创建
NumPy有各种函数可以从头开始创建数组。让我们结合示例来了解它们:
使用zeros()
此函数将创建一个用0值填充的数组,其形状已指定。
示例
import numpy as np print (np.zeros((3, 4)))
输出
[[0. 0. 0. 0.] [0. 0. 0. 0.] [0. 0. 0. 0.]]
使用ones()
此函数将创建一个用1值填充的数组,其形状已指定。
示例
import numpy as np print (np.ones((3, 4)))
输出
[[1. 1. 1. 1.] [1. 1. 1. 1.] [1. 1. 1. 1.]]
使用arange()
此函数将创建一个具有规律递增值的数组。
示例
import numpy as np print (np.arange(15))
输出
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
使用linspace()
此函数将创建在指定的起始值和结束值之间均匀间隔的数组。
示例
import numpy as np print (np.linspace(1.0, 3.0, num=5))
输出
[1. 1.5 2. 2.5 3. ]
使用NumPy创建矩阵并在矩阵上应用某些函数
矩阵是一个专门的二维(2D)数组。矩阵在其上应用的所有操作中都保留其性质。
创建矩阵
让我们通过以下示例来理解这一点:
示例
import numpy as np matrix = np.matrix('10 20; 30 40') print(matrix)
输出
[[10 20] [30 40]]
矩阵转置
此函数将返回矩阵的转置。以下示例将对上面创建的矩阵进行转置:
示例
matrix.T
输出
matrix([[10, 30], [20, 40]])
两个矩阵的乘法
我们可以使用NumPy的dot()函数进行两个矩阵的乘法。让我们通过以下示例来理解这一点:
示例
import numpy as np matrix1 = np.array([[1,6,9],[3,4,10]]) matrix2 = np.array([[2,5],[4,7],[7,8]]) matrix3 = np.dot(matrix1,matrix2) print(matrix3)
输出
[[ 89 119] [ 92 123]]
您可以在https://tutorialspoint.com/numpy/index.htm详细了解NumPy。
广告