NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,提供了多维数组和矩阵的常用操作,同时也提供了一些高效的科学计算函数。NumPy可以直接完成数组和矩阵的运算,无需循环,同时其底层运算通过C语言实现,处理速度快效率高,适用于大规模多维数组运算。
1.创建数组:array([列表]/[元组],dtype=数据类型)
from numpy import *
a = array([0,1,2,3,4],int32)
关于多维数组及取数组部分值切片:
2.数组的属性:
from numpy import *
a = array([0,1,2,3,4])
a.ndim ///数组a的维数
a.shape ///数组a的形状
a.size ///数组a元素的个数
a.dtype ///数组a中元素的数据类型
a.itemsize ///数组a中每个元素的字节数
3.创建特殊矩阵:
arange()函数:创建数字序列数组
numpy.arange(起始数字,结束数字,步长,数据类型)
左闭右开区间,不包含起始结束数字时,默认从零开始;不包含步长时,默认步长为1.
import numpy as np
np.arange(8) ///创建数字序列数组 arange(initial,ending,distance,dtype)
np.arange(3,5,0.3)
np.arange(3,5,0.3,int32)
ones()函数: 创建全1的数组
numpy.ones(shape,dtype)
import numpy as np
np.ones((2,1,3)) ///创建全1的数组
np.ones((3,2),float16)
zeros()函数: 创建全0的数组
numpy.ones(shape,dtype)
import numpy as np
np.zeros((3,2)) ///创建全0的数组
eye()函数: 创建单位数组
numpy.eye(shape,dtype)
import numpy as np
np.zeros(3,2) ///创建全0的数组
np.zeros(3)
linspace()函数: 创建等差数列
numpy.linspace(start,stop,num,dtype)
import numpy as np
np.linspace(2,6,5) ///创建等差数列
np.linspace(2,6,5,float16)
np.linspace(2,6,10,float16)
logspace()函数: 创建等比数列
numpy.logspace(start,stop,num,base,dtype)
start为起始指数,stop为终止指数,而非起始数和终止数,base为基底(默认为10)
import numpy as np
np.logspace(2,6,5) ///创建等比数列
np.logspace(2,6,5,base=2)
4.改变数组形状:改变形状是应考虑数组元素个数,否则将会报错
from numpy import *
a = arange(12)
b = a.reshape(3,4)
b
a
from numpy import *
a = arange(12)
a.resize(3,4)
a
abs()函数:对各元素取绝对值
stack()函数:数组堆叠运算
from numpy import *
A = mat([[1,2],[3,4]])
A.ndim ///矩阵的维数
A.shape ///矩阵的形状
A.size ///矩阵元素的个数
A.dtype ///矩阵中元素的数据类型
from numpy import *
A = mat([[1,2],[3,4]])
A.T ///矩阵A求转置
A.I ///矩阵A求逆
7.random()函数:产生随机数
8.NumPy提供的傅里叶变换函数:
关于傅里叶变换提供的更多内容:Discrete Fourier Transform:NumPy.fft
NumPy为Python提供了更多的数据类型: