下面小编就为大家分享一篇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[:,0] + _tmp[:,1]*1j 转换成复数处理 keep=np.unique(_tmp, retur来源gaodaimacom搞#^代%!码&网n_index=True)[1] 去重 得到索引 xy[keep] 得到数据并返回 切片操作,因为时二维数组,_tmp[a:b, c:d]为通用表达式, 表示取第一维的索引 a 到索引 b,和第二维的索引 c d 当取所有时可以直接省略,但要加':'冒号 、当 b 时可只写 ,同时不用':'冒号 if __name__== '__main__': 1: test np.array([[1.0, 1.0, 1.0], [2.0, 2.0, 2.0], [3.0, 0.0, 0.0], [1.0, 1.00]]) print(xy) new_xy=duplicate_removal(xy) print(new_xy) embed()
以上就是Python numpy 点数组去重的实例的详细内容,更多请关注gaodaima搞代码网其它相关文章!