在二维数组中axis = 0 表示沿着纵轴进行操作,若axis=1 则沿着横轴进行操作。但是这只是仅仅对于二维数组而言。
np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等。
np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等。
实例:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = np.c_[a,b] # 可以理解成在axis = 0 上做拼接
c
>>>array([[1, 4],
[2, 5],
[3, 6]])
d = np.r_[a,b]
d
>>>array([1, 2, 3, 4, 5, 6]) # 可以理解成在axis = 1 上做拼接
print(np.c_[c,a])
>>>[[1 4 1]
[2 5 2]
[3 6 3]]
二维数组:
import numpy as np
a = np.array([[1, 2, 3],[4,5,6]])
b = np.array([[0, 0, 0],[1,1,1]])
print("-------------------a------------------")
print(a)
print("-------------------b------------------")
print(b)
print("-------------------np.r_[a,b]--------------------")
print(np.r_[a,b])
print("--------------------np.c_[a,b]-------------------")
print(np.c_[a,b])
输出如下:
-------------------a------------------
[[1 2 3]
[4 5 6]]
-------------------b------------------
[[0 0 0]
[1 1 1]]
-------------------np.r_[a,b]--------------------
[[1 2 3]
[4 5 6]
[0 0 0]
[1 1 1]]
--------------------np.c_[a,b]-------------------
[[1 2 3 0 0 0]
[4 5 6 1 1 1]]