您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Python中如何實現numpy點數組去重”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Python中如何實現numpy點數組去重”這篇文章吧。
代碼如下:
# coding = utf-8 import numpy as np from IPython import embed # xy 輸入,可支持浮點數操作 速度很快哦 # return xy 去重后結果 def duplicate_removal(xy): if xy.shape[0] < 2: return xy _tmp = (xy*4000).astype('i4') # 轉換成 i4 處理 _tmp = _tmp[:,0] + _tmp[:,1]*1j # 轉換成復數處理 keep = np.unique(_tmp, return_index=True)[1] # 去重 得到索引 return xy[keep] # 得到數據并返回 # _tmp[:,0] 切片操作,因為時二維數組,_tmp[a:b, c:d]為通用表達式, # 表示取第一維的索引 a 到索引 b,和第二維的索引 c 到索引 d # 當取所有時可以直接省略,但要加':'冒號 、當 a == b 時可只寫 a ,同時不用':'冒號 if __name__ == '__main__': if 1: # test xy = np.array([[1.0, 1.0, 1.0], [2.0, 2.0, 2.0], [3.0, 0.0, 0.0], [1.0, 1.0, 1.00]]) print(xy) new_xy = duplicate_removal(xy) print(new_xy) embed()
以上是“Python中如何實現numpy點數組去重”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。