1. 程式人生 > >python中合並數組的方法

python中合並數組的方法

.aspx logs article tps brush tails sts https print

一、數組縱向合並

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

python中合並數組的方法