numpy常用函数记录
- arange([start, ] stop[, setp,], dtype = None):
该函数返回的是一个ndarray类型数据,而不是list类型数据,该函数中start参数用于指定创建数组的起始位置,stop用于指定终止位置,step指定步长,创建的数组是[start, stop),即包含起始位置元素但不包括终止位置元素,该函数与range([start, ] stop[, setp,])函数类似,只不过range函数返回的是一个列表list (必须import numpy库才能使用该函数) - ndarray.reshape(r, c):
该函数可以改变数组ndarray的形状为r行c列的数组 - ndarray.ravel():
该函数将数组ndarray展成一维向量 - ndarray.shape = (m, n):
通过元素(m,n)可以把数组ndarray设置成m行n列的元素 - ndarray.resize((m, n)):
实现与上面的shape同样的功能 - ndarray.transpose():
返回ndarray的转置矩阵 - inv(A):
对矩阵A取逆 - trace(A):
求矩阵A的迹 - vstack((A, B)):
返回一个矩阵,该矩阵是矩阵A与矩阵B按照列的方式叠加 - hstack((A, B)):
返回一个矩阵,该矩阵式矩阵A与矩阵B按照行的方式叠加 - column_stack((a, b)):
返回一个矩阵,该矩阵是由向量a与b组成,其中,向量a,b分别做矩阵的列 - row_stack((a, b)):
返回一个矩阵,该矩阵是由向量a与b组成,其中,向量a,b分别做矩阵的行 - hsplit(A, n):
将矩阵A分成n分,将列分成n分,行不变 - hsplit(A, (m,n)):
将矩阵A以第m列和第n列为分割点,将矩阵A分成3分,应为[m, n)格式,即第m列到第n-1列 - zeros(shape, dtype = float, order = ‘C’):
通过给定的形状shape和类型dtype创建一个0数组,其中shape用元组给出,例如(2,3)则创建一个两行三列的0数组,order用于指定存储方式,C为以行在内存中存储,F为以列在内存中存储 - ones(shape, dtype = float, order = ‘C’):
通过给定的形状shape和类型dtype创建一个1数组 - linspace(start, stop, num=50, endpoint=True, retstep=False):
返回一个数组,该数组的元素是取自从start开始到stop结束的长度中,均匀分布的num个元素,如果endpoint为True,则范围是[start, stop],如果endpoint为False,则范围是[start, stop),如果retstep为True,则在返回结果中包含有步长,否则不包含。
numpy常用的矩阵(向量)操作方法
假设有矩阵A与B,则我们有如下操作方法:
1. A ** i:对矩阵A中的所有元素做i次方的操作并返回一个新矩阵
2. A * B: 将矩阵A与矩阵B中对应元素相乘并返回一个新矩阵
3. dot(A, B): 对矩阵A与矩阵B做矩阵乘法的运算
4. f(A):对矩阵A中所有元素做函数f操作
5. A.sum():将A中所有元素加和并返回该值
6. A.min():将A中最小的元素返回
7. A.max():将A中最大的元素返回
8. A.sum(axis = i):将A中第i-1维的元素加和
9. A.min(axis = i):找出A中第i-1维的最小元素
10. A.cumsum(axis = i):将A中第i-1维的元素从前往后累积相加,即返回的矩阵中第一个元素与A相同,第二个元素为第一个元素与第二个元素的和,…,第k个元素为A中前k-1个元素的和
note:
- ndarray的flat属性是一个指向array元素的迭代器,通过该迭代器,可以访问单个元素