python中合并数组的方法

与世无争的帅哥 提交于 2019-12-20 02:30:51

一、数组纵向合并

1、使用np.vstack()函数

【code】

#数组
a = [[1,2,3],[4,5,6]]
b = [[1,1,1],[2,2,2]]

#纵向合并
c = np.vstack((a,b))
print("c="+str(c))

【result】

c = 
array([[1, 2, 3],
       [4, 5, 6],
       [1, 1, 1],
       [2, 2, 2]]  

 

2、使用 np.r_[]函数

【code】

#数组
a = [[1,2,3],[4,5,6]]
b = [[1,1,1],[2,2,2]]

#纵向合并
c =np.r_[a,b]print("c="+str(c))

【result】

c = 
array([[1, 2, 3],
       [4, 5, 6],
       [1, 1, 1],
       [2, 2, 2]]  

 

3、不使用函数,直接合并,见代码

【code】

a_prev=np.array(([1,2],[3,4]))
xt=np.array(([1,2],[3,4],[5,6]))

concat = np.zeros([5,2])

concat[: 2, :] = a_prev
concat[2 :, :] = xt
print(concat)

【result】

[[1. 2.]
 [3. 4.]
 [1. 2.]
 [3. 4.]
 [5. 6.]]

  

二、数组横向合并  

1、使用np.hstack()函数

【code】

#数组
a = [[1,2,3],[4,5,6]]
b = [[1,1,1],[2,2,2]]

#横向合并d = np.hstack((a,b))print("d="+str(d))

【result】

d = array([[1, 2, 3, 1, 1, 1],
       [4, 5, 6, 2, 2, 2]])

 

2、使用np.c_[]函数

【code】

#数组
a = [[1,2,3],[4,5,6]]
b = [[1,1,1],[2,2,2]]

#横向合并
d = np.c_[a,b]
print("d="+str(d))

【result】

d = array([[1, 2, 3, 1, 1, 1],
       [4, 5, 6, 2, 2, 2]])

 

3、不使用函数,直接合并,见代码

【code】

a_prev=np.array(([1,2,3],[3,4,5]))
xt=np.array(([4,5],[6,7]))

concat = np.zeros([2,5])

concat[:, : 3] = a_prev
concat[:, 3 :] = xt
print(concat)

【result】

[[1. 2. 3. 4. 5.]
 [3. 4. 5. 6. 7.]]

 

---------------------------------

参考:

1、http://blog.csdn.net/vanhsy/article/details/69486241

2、https://i.cnblogs.com/EditPosts.aspx?postid=8488878

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!