生成函数
函数 | 功能 |
---|
np.array(x,dtype) | 将输入数据转化为一个类型为type的ndarray |
np.asarray(array) | 将数据转化为一个新的ndarray |
np.ones(N,dtype) | 生成一个N长度的一维全1的ndarray |
np.zeros(N,dtype) | 生成一个N长度的一维全0的ndarray |
np.empty(N,dtype) | 生成一个N长度的一维未初始化的ndarray |
np.eye(N) | 创建一个N*N的单位矩阵 |
np.arange(num)/(begin,end,step) | 生成一个从begin到end-1步数为step的一维ndarray |
np.mershgrid(ndarray,ndarray) | 生成一个ndarray*ndarray*…的多维ndarray |
np.where(cond,ndarray1,ndarray2) | 根据条件cond,选取ndarray1或者ndarray2,返回一个新的ndarray |
np.in1d(ndarray,[x,y…]) | 检查ndarray中的元素是否等于[x,y,…]中的一个,返回bool数组 |
矩阵函数
函数 | 功能 |
---|
np.diag(ndarry) | 以一维数组的行书返回方阵的对角线(火非对角线)元素 |
np.diag([x,y…]) | 将一维数组转化为方阵(非对角线元素为0) |
np.dot(ndarray,ndarray) | 矩阵乘法 |
np.trace(ndarray) | 计算对角线元素的和 |
排序函数
函数 | 功能 |
---|
sort(ndarray) | 排序,返回副本 |
unique(ndarray) | 返回ndarray中的元素,排除重复元素之后,并进行排序 |
intersect1d(ndarray1,ndarray2) | 返回二者的交集并排序 |
union1d(ndarray1,ndarray2) | 并集并排序 |
一元计算函数
- abs
- fabs
- mean
- sqrt
- square
- exp
- log、log10、log2、log1p
- sign:计算正负号1,0,-1
- ceil:大于等于该值的最小整数
- floor:小于等于该值的最大整数
- rint:四舍五入到最近的整数,保留dtype
- modf:将数组的小数和整数部分以两个独立的数组方式返回
- isnan:返回bool型数组
- isfinite:返回一个判断是否是又穷的bool数组
- isinf:返回一个判断是否是无穷的bool数组
- cos、cosh、sin、sinh、tan、tanh
- arccos
- logical_not:计算各元素not x的真值
补充
函数 | 功能 |
---|
clip(array,array_min,array_max) | 小于最小的变成最小 |
array.flatten*() | 扁平化 |
A = np.array([1,1,1])[:,np.newaxis] | array的转置 |
C = np.concatenate((A,B,B,A),axis=0) | 合并 |
np.split(A, 2, axis=1) | 等量分割 |
print(np.array_split(A, 3, axis=1)) | 不等量分割 |
np.vsplit(A, 3) | np.split(A, 3, axis=0) |
花式索引
arr=np.empty((8,4))
for i in range(8):
arr[i]=i
print arr
print arr[[4,3,0,6]]
print arr[[-3,-5,-7]]
print "初始化一个数组"
arr = np.arange(32).reshape(8,4)
print arr
print "多个索引数组"
print arr[[1,5,7,2],[0,3,1,2]]
print "得到矩形区域"
print arr[[1,5,7,2]][:,[0,3,1,2]]