np.r_是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于pandas中的concat()。
np.c_是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等,类似于pandas中的merge()。
举例
一维向量,代码如下:
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print("-------------------a------------------")
print(a)
print('shape:',a.shape)
print("-------------------b------------------")
print(b)
print('shape:',b.shape)
print("-------------------np.r_[a,b]--------------------")
print(np.r_[a,b])
print('shape:',np.r_[a,b].shape)
print("--------------------np.c_[a,b]-------------------")
print(np.c_[a,b])
print('shape:',np.c_[a,b].shape)
输出结果:
多维向量,代码如下:
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('shape:',a.shape)
print("-------------------b------------------")
print(b)
print('shape:',b.shape)
print("-------------------np.r_[a,b]--------------------")
print(np.r_[a,b])
print('shape:',np.r_[a,b].shape)
print("--------------------np.c_[a,b]-------------------")
print(np.c_[a,b])
print('shape:',np.c_[a,b].shape)
输出结果: