Python numpy 點數組去重的實例
更新時間:2018年04月18日 09:52:32 作者:CUG_Bear
下面小編就為大家分享一篇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 點數組去重的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
使用python腳本自動創(chuàng)建pip.ini配置文件代碼實例
這篇文章主要介紹了使用python腳本自動創(chuàng)建pip.ini配置文件代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-09-09

