📜  SciPy-基本功能

📅  最后修改于: 2020-11-05 04:29:33             🧑  作者: Mango


默认情况下,所有NumPy函数都可以通过SciPy名称空间使用。导入SciPy时,无需显式导入NumPy函数。 NumPy的主要对象是齐次多维数组。它是由相同整数组成的元素表(通常为数字),由正整数元组索引。在NumPy中,尺寸称为轴。数称为等级

现在,让我们修改NumPy中向量和矩阵的基本功能。由于SciPy建立在NumPy数组之上,因此有必要了解NumPy基础知识。由于线性代数的大多数部分仅处理矩阵。

NumPy矢量

一个Vector可以通过多种方式创建。其中一些描述如下。

将类似Python数组的对象转换为NumPy

让我们考虑以下示例。

import numpy as np
list = [1,2,3,4]
arr = np.array(list)
print arr

上述程序的输出如下。

[1 2 3 4]

内部NumPy数组创建

NumPy具有内置功能,可以从头开始创建阵列。其中一些功能将在下面说明。

使用zeros()

zeros(shape)函数将创建一个数组,该数组填充具有指定形状的0个值。默认dtype是float64。让我们考虑以下示例。

import numpy as np
print np.zeros((2, 3))

上述程序的输出如下。

array([[ 0., 0., 0.],
[ 0., 0., 0.]])

使用ones()

一个(形状)函数将创建一个填充有1个值的数组。在所有其他方面,它都等于零。让我们考虑以下示例。

import numpy as np
print np.ones((2, 3))

上述程序的输出如下。

array([[ 1., 1., 1.],
[ 1., 1., 1.]])

使用arange()

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()

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]])

矩阵转置

此功能返回自我的转置。让我们考虑以下示例。

import numpy as np
mat = np.matrix('1 2; 3 4')
mat.T

上面的程序将生成以下输出。

matrix([[1, 3],
        [2, 4]])

转置矩阵时,将创建一个新的矩阵,其行是原始矩阵的列。另一方面,共轭转置可互换每个矩阵元素的行索引和列索引。矩阵的逆矩阵是一个矩阵,如果与原始矩阵相乘,则会得出单位矩阵。