W
e
l
c
o
m
e
: )

15.数组堆叠

Array数组堆叠与分割:

方法 概述
vstack 垂直堆叠
hstack 水平堆叠
hsplit 水平切割
vstack 垂直切割

1.堆叠演示:

print('-----arr1----')
arr1 = np.arange(10).reshape(2, 5)
print(arr1)
print('-----arr2----')
arr2 = np.arange(10, 20).reshape(2, 5)
print(arr2)

# 垂直堆叠
print('---垂直堆叠-----')
arr = np.vstack((arr1, arr2))
print(arr)

# 水平堆叠
print('----水平堆叠-----')
arrs = np.hstack((arr1, arr2))
print(arrs)

# -------结果
-----arr1----
[[0 1 2 3 4]
 [5 6 7 8 9]]
-----arr2----
[[10 11 12 13 14]
 [15 16 17 18 19]]
---垂直堆叠-----
[[ 0  1  2  3  4]
 [ 5  6  7  8  9]
 [10 11 12 13 14]
 [15 16 17 18 19]]
----水平堆叠-----
[[ 0  1  2  3  4 10 11 12 13 14]
 [ 5  6  7  8  9 15 16 17 18 19]]

2.切割演示:

arr = np.arange(20).reshape(4, 5)
print('原数组')
print(arr)
print('水平切割')
arr1 = np.hsplit(arr, 5)
print(arr1)
print('垂直切割')
arr2 = np.vsplit(arr, 4)
print(arr2)


# 结果
原数组
[[ 0  1  2  3  4]
 [ 5  6  7  8  9]
 [10 11 12 13 14]
 [15 16 17 18 19]]
水平切割
[array([[ 0],
       [ 5],
       [10],
       [15]]), array([[ 1],
       [ 6],
       [11],
       [16]]), array([[ 2],
       [ 7],
       [12],
       [17]]), array([[ 3],
       [ 8],
       [13],
       [18]]), array([[ 4],
       [ 9],
       [14],
       [19]])]
垂直切割
[array([[0, 1, 2, 3, 4]]), array([[5, 6, 7, 8, 9]]), array([[10, 11, 12, 13, 14]]), array([[15, 16, 17, 18, 19]])]
posted @ 2020-04-21 16:30  水一RAR  阅读(97)  评论(0编辑  收藏  举报