python定义一个n数组_python-用Numpy将数组划分为N个块

关于array_split、array_split、vsplit和hsplit的用法的一些示例:

n [9]: a = np.random.randint(0,10,[4,4])

In [10]: a

Out[10]:

array([[2, 2, 7, 1],

[5, 0, 3, 1],

[2, 9, 8, 8],

[5, 7, 7, 6]])

使用array_split的一些示例:

如果将数组或列表作为第二个参数,则基本上要给出要“剪切”的索引(之前)

# split rows into 0|1 2|3

In [4]: np.array_split(a, [1,3])

Out[4]:

[array([[2, 2, 7, 1]]),

array([[5, 0, 3, 1],

[2, 9, 8, 8]]),

array([[5, 7, 7, 6]])]

# split columns into 0| 1 2 3

In [5]: np.array_split(a, [1], axis=1)

Out[5]:

[array([[2],

[5],

[2],

[5]]),

array([[2, 7, 1],

[0, 3, 1],

[9, 8, 8],

[7, 7, 6]])]

整数作为第二个arg。 指定相等的块数:

In [6]: np.array_split(a, 2, axis=1)

Out[6]:

[array([[2, 2],

[5, 0],

[2, 9],

[5, 7]]),

array([[7, 1],

[3, 1],

[8, 8],

[7, 6]])]

array_split的工作原理相同,但如果无法均分,则会引发异常

除了array_split,您还可以使用快捷方式vsplit和hsplit。

vsplit和hsplit几乎是不言自明的:

In [11]: np.vsplit(a, 2)

Out[11]:

[array([[2, 2, 7, 1],

[5, 0, 3, 1]]),

array([[2, 9, 8, 8],

[5, 7, 7, 6]])]

In [12]: np.hsplit(a, 2)

Out[12]:

[array([[2, 2],

[5, 0],

[2, 9],

[5, 7]]),

array([[7, 1],

[3, 1],

[8, 8],

[7, 6]])]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值