1. np.r_ 和 np.c_
- np.r_按 row 来组合array
- np.c_按 colunm 来组合array
例子:
a = np.array([1,2,3])
b = np.array([5,2,5])
print (np.c_[a, b])
print (np.r_[a, b])
print (np.c_[a, [0,0,0],b])
print (np.r_[a, [0,0,0],b])
输出结果为:
[[1 5]
[2 2]
[3 5]]
[1 2 3 5 2 5]
[[1 0 5]
[2 0 2]
[3 0 5]]
[1 2 3 0 0 0 5 2 5]
2. linspace 和 arange
- np.linspace( start, end, num )
- 将 start 和 end 之间的距离平均分为 num 个
- np.arange( start, end, step )
- 将 start 按步长 step 向 end 靠近
t = np.linspace (3, 11, 9)
print (t)
a = np.arange(3, 11, 1)
print (a)
输出结果为
[ 3. 4. 5. 6. 7. 8. 9. 10. 11.]
[ 3 4 5 6 7 8 9 10]
3. squeeze
- squeeze函数对二维矩阵没有影响,包括行向量,列向量和标量
4. ravel
- numpy.ravel (a, order='C')
- 默认 order 是‘C’, 以二维矩阵为例
- order 'C' 指最右边的索引变化最快,先按行读取
- order 'F' 指最左边的索引变化最快,先按列读取
- 默认 order 是‘C’, 以二维矩阵为例
- 等同于 reshape(-1, order)
- 最终结果是秩为 1 的矩阵
X = np.arange(1,7,1).reshape(2,3)
print (X)
print (np.ravel(X, order = 'C'))
print (np.ravel(X, order = 'F'))
print (np.ravel(X).shape)
输出结果:
[[1 2 3]
[4 5 6]]
[1 2 3 4 5 6]
[1 4 2 5 3 6]
(6,)