SciPy的基本功能


默认情况下,所有的Nu​​mPy函数都可以通过SciPy命名空间获得。当导入SciPy时,不需要显式导入NumPy函数。NumPy的主要目标是均匀多维数组。它是一个元素表(通常是数字),所有相同类型,由正整数的元组索引。在NumPy中,尺寸被称为轴。 的数量称为 等级

现在,让我们修改NumPy中的Vectors和Matrices的基本功能。由于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具有从头开始创建数组的内置函数。其中一些功能解释如下。

使用零()

零(形状)函数将创建一个用指定形状填充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. ])

矩阵

矩阵是一个专门的二维数组,通过操作保留其2-D特性。它有一些特殊的运算符,如*(矩阵乘法)和**(矩阵功率)。让我们考虑下面的例子。

import numpy as np
print np.matrix('1 2; 3 4')

上述程序将生成以下输出。

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

矩阵的共轭转置

此功能返回 自我 的(复数)共轭转置。让我们考虑下面的例子。

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

当转置一个矩阵时,我们创建一个新的矩阵,其行是原始的列。另一方面,共轭转置为每个矩阵元素交换行和列索引。矩阵的逆矩阵是一个矩阵,如果与原始矩阵相乘,则产生一个单位矩阵。