扫码一下
查看教程更方便
默认情况下,所有 numpy 函数都可以通过 scipy 命名空间使用。导入 scipy 时,无需显式导入 numpy 函数。numpy 的主要对象是同构多维数组。它是一个元素表(通常是数字),所有类型都相同,由正整数元组索引。在 numpy 中,维度被称为轴。轴的数量称为rank。
现在,让我们修改 numpy 中向量和矩阵的基本功能。由于 scipy 建立在 numpy 数组之上,因此需要了解 numpy 基础知识。由于线性代数的大部分内容只处理矩阵。
可以通过多种方式创建 vector。其中一些描述如下。
让我们看以下示例。
import numpy as np
list = [1,2,3,4]
arr = np.array(list)
print(arr)
运行结果如下
[1 2 3 4]
numpy 具有用于从头开始创建数组的内置函数。下面解释了其中的一些功能。
zeros(shape) 函数将创建一个用指定形状填充 0 值的数组。默认数据类型是 float64。
mport numpy as np
print(np.zeros((2, 3)))
运行结果如下
array([[ 0., 0., 0.],
[ 0., 0., 0.]])
ones(shape) 函数将创建一个填充有 1 个值的数组。其余的都和 zeros() 函数相同
import numpy as np
print(np.ones((2, 3)))
运行结果如下
array([[ 1., 1., 1.],
[ 1., 1., 1.]])
arange() 函数将创建具有递增值的数组。
import numpy as np
print(np.arange(7))
运行结果如下
array([0, 1, 2, 3, 4, 5, 6])
让我们看一下以下示例。
import numpy as np
arr = np.arange(2, 10, dtype = np.float)
print(arr)
print("array data type :",arr.dtype)
运行结果如下
[ 2. 3. 4. 5. 6. 7. 8. 9.]
array data type : float64
linspace() 函数将创建具有指定数量元素的数组,这些元素将在指定的开始值和结束值之间等距。就类似于等差数列。
import numpy as np
print(np.linspace(1., 4., 6))
运行结果如下
array([ 1. , 1.6, 2.2, 2.8, 3.4, 4. ])
矩阵是一种特殊的二维数组,它通过运算保持其二维性质。它有一些特殊的运算符,例如 *(矩阵乘法)和 **(矩阵幂)。让我们看一下以下示例。
import numpy as np
print(np.matrix('1 2; 3 4'))
运行结果如下
matrix([[1, 2],
[3, 4]])
此功能返回self的(复数)共轭转置。让我们看一下以下示例。
import numpy as np
mat = np.matrix('1 2; 3 4')
print(mat.h)
运行结果如下
matrix([[1, 3],
[2, 4]])
此功能返回 self 的转置。
import numpy as np
mat = np.matrix('1 2; 3 4')
print(mat.t)
运行结果如下
matrix([[1, 3],
[2, 4]])
当我们转置矩阵时,我们创建了一个新矩阵,其行是原始矩阵的列。另一方面,共轭转置交换每个矩阵元素的行和列索引。矩阵的逆矩阵是一个矩阵,如果与原始矩阵相乘,则结果为单位矩阵。