使用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。

更新于:2021年11月23日

241 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告