SciPy - 基本功能

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

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

NumPy向量

可以通过多种方式创建向量.其中一些描述如下.

将类似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()函数将创建具有定期递增值的数组.让我们考虑以下示例.

 
 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.] 
数组数据类型: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]])

矩阵的转置

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

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

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

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

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