如何添加/连接切片对象?

2024-04-19 11:44:58 发布

您现在位置:Python中文网/ 问答频道 /正文

对于2*N x 2*N数组x,我想以一种特定的方式将[0:N]与行[N:2*N]交换,即,我的问题是,是否有一种“内置”的“添加/连接”切片对象的方式来实现这一点?一、 例如:

x[N:2*N + 0:N,:]

尽管,前面的方法有所不同。在

当然,我可以做vstack((x[N:2*N,:],x[0:N,:])),这不是我真正想要的,或者{},这可能很慢。在


Tags: 对象方法方式切片数组内置vstack
1条回答
网友
1楼 · 发布于 2024-04-19 11:44:58

我想您正在寻找^{},它“将切片对象转换为沿第一个轴的连接”。它允许您沿着第一个轴执行更复杂的切片-您可以用逗号连接多个切片:np.r_[5:10, 100:200:10, 15, 20, 0:5]。在

例如:

>>> import numpy as np
>>> N = 2
>>> x = np.arange(16).reshape(4, 4)
>>> x[np.r_[N:2*N, 0:N]]
array([[ 8,  9, 10, 11],
       [12, 13, 14, 15],
       [ 0,  1,  2,  3],
       [ 4,  5,  6,  7]])

在这个特定的例子中,你也可以^{}它:

^{pr2}$

相关问题 更多 >