簡體   English   中英

獲取數組的特定索引

[英]Get specific indices of Array

import numpy as np
X = [-10000, -1000, -100, -10, -1, 0, 1, 10, 100, 1000, 10000]
l = np.where(np.array(X) > 100)[0]

所以我有

l = array([ 9, 10], dtype=int64)

現在我想得到一個新的數組 X,其中的元素 l 作為索引。 我想得到:

X = [1000, 10000]

我想到了:

X = X[l]

但它不起作用。 在這種情況下,正確的 function 是什么? 我不想使用 for 循環。

您需要將列表X轉換為 numpy 數組,然后才能使用索引列表對其進行索引:

>>> X = np.array(X)[l]
>>> X
array([ 1000, 10000])

您應該將列表 X 轉換為 numpy 數組

x=np.array(X)

然后使用索引

x=x[x>100]

這將在不使用 where() function 的情況下獲得您需要的結果

“x>100”表達式創建一個boolean數組,其中True元素對應於x數組中大於100的元素。這個數組可以作為索引來提取滿足條件的元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM