Python Subseting操作中的负号

问题描述 投票:-1回答:2

我有以下数组:

np.random.seed(12)

s = np.random.randn(5, 5)

在子设定操作中负号意味着什么?即

s[1:-1, :]

它只是意味着在这种情况下删除一行?

python subset
2个回答
1
投票

看下面的例子(当然这不是代码!)

arr = [1 , 2 , 3 , 4 , 5]
arr[0] = 1
arr[1] = arr[-4] = 2
arr[2] = arr[-3] = 3
arr[3] = arr[-2] = 4
arr[4] = arr[-1] = 5

数组中的负号表示向后的索引(从最后一项到第一项,从-1开始到-(arr.__len__()+1)


1
投票

不,这并不意味着删除,有:

s[1:-1, :]

你只需使用除第一行和最后一行之外的所有行,所以如果你这样做:

s=np.random.randn(5,5)
print(s[1:-1, :])

然后你得到一个带有5个random的5个阵列的2D阵列。如果你打印它然后你会得到s [1(什么是秒元素)] - s [秒最后一个元素]。但是S仍然会有5个阵列。

© www.soinside.com 2019 - 2024. All rights reserved.