微信扫一扫打赏支持

python机器学习库numpy---12、数组分割

python机器学习库numpy---12、数组分割

一、总结

一句话总结:

1、numpy数组等量分割可以用hsplit(horizontal split)、vsplit(vertical split)、split等方法
2、numpy数组不等量分割可以用array_split方法
不等量分割
不等量分割可以用array_split方法

2.1、水平分割
水平分割,所以axis是1

a = np.arange(12).reshape((3,4))
print(a)

[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

print(np.array_split(a,3,axis=1))

[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2],
       [ 6],
       [10]]), array([[ 3],
       [ 7],
       [11]])]

 

 

 

二、数组分割

博客对应课程的视频位置:12、数组分割-范仁义-读书编程笔记
https://www.fanrenyi.com/video/38/355

 

1、等量分割

等量分割可以用hsplit(horizontal split)、vsplit(vertical split)、split等方法

axis为1表示横轴,axis为0表示纵轴

1.1、水平分割

In [1]:
import numpy as np
a = np.arange(12).reshape((3,4))
print(a)
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
In [2]:
# hsplit
print(np.hsplit(a,2))
[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2,  3],
       [ 6,  7],
       [10, 11]])]
In [ ]:
# hsplit方法不等量分割会报错
print(np.hsplit(a,3))
In [4]:
# axis=1表示对水平进行操作
print(np.split(a,2,axis=1))
[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2,  3],
       [ 6,  7],
       [10, 11]])]
In [ ]:
# split不等量分割也会报错
print(np.split(a,3,axis=1))

1.2、垂直分割

In [6]:
a = np.arange(12).reshape((4,3))
print(a)
[[ 0  1  2]
 [ 3  4  5]
 [ 6  7  8]
 [ 9 10 11]]
In [7]:
print(np.vsplit(a,2))
[array([[0, 1, 2],
       [3, 4, 5]]), array([[ 6,  7,  8],
       [ 9, 10, 11]])]
In [8]:
print(np.split(a,2,axis=0))
[array([[0, 1, 2],
       [3, 4, 5]]), array([[ 6,  7,  8],
       [ 9, 10, 11]])]

2、不等量分割

不等量分割可以用array_split方法

2.1、水平分割

水平分割,所以axis是1

In [9]:
a = np.arange(12).reshape((3,4))
print(a)
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
In [10]:
print(np.array_split(a,3,axis=1))
[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2],
       [ 6],
       [10]]), array([[ 3],
       [ 7],
       [11]])]

2.2、垂直分割

垂直分割,所以axis=0

In [11]:
a = np.arange(12).reshape((3,4))
print(a)
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
In [12]:
print(np.array_split(a,2,axis=0))
[array([[0, 1, 2, 3],
       [4, 5, 6, 7]]), array([[ 8,  9, 10, 11]])]
In [ ]:
 
posted @ 2020-08-30 11:12  范仁义  阅读(443)  评论(0编辑  收藏  举报