![](/img/trans.png)
[英]How to combine 2d lists elements in python - Taking order in consideration
[英]How to create subelements of a NumPy Array by taking in consideration a criteria in Python?
這是我關於 Stack Overflow 的第一個問題,所以我會盡量准確。 我目前正在使用 NumPy 對象數組處理 Python 3.8,我嘗試從這個 NumPy 數組中提取一些符合條件的子元素。
例如,如果我考慮這個 NumPy 數組: https : //i.stack.imgur.com/3SE7T.png ,我有一些值設置為 0 和一些 !=0。 我希望能夠通過考慮設置為 0 的值從該數組中提取一些特定的子元素。這張圖片中給出了我想要提取的內容的示例: https://i.stack.imgur。 com/GsG3S.png
子元素的邊界由 NumPy 數組的邊界自行定義,事實上,有一些值為 !=0 的鄰居和一些值為“Nan”的鄰居......最后我更感興趣的是這些子元素的“輪廓”。
目前,我真的不知道如何解決這個問題,我在問自己如何正確獲取邊界,如何在 NumPy 數組中移動以收集所需的所有單元格......
在此先感謝您的幫助
有幾種方法可以解決這個問題,我能想到的一種方法是直接使用比較運算符。
示例( 來源:numpy 文檔)
a = np.array([[0, 0, 0], [0.3, 0.41, 0.47], [0.21, 0.23, 0.97]])
a > 0
array([[False, False, False],
[ True, True, True],
[ True, True, True]])
這讓您了解哪些元素是非零的
另一種方法是使用內置方法np.nonzero
>>> a
array([[0, 0, 0],
[0.3, 0.41, 0.47],
[0.21, 0.23, None]], dtype=object)
>>> a[np.nonzero(a)]
array([0.3, 0.41, 0.47, 0.21, 0.23], dtype=object)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.