python求数组中连续相同值的个数


引言

 对于特别大的数组分析可以使用nparray,避免大量重复的循环,在使用中当遇到需要统计数组中连续相同值的个数从而进行压缩时可以通过where和diff实现

实例

错位比较ar数组,比较ar[:1]和数组ar[1:],突变的时候会产生一个true,然后npwhere记录true的索引,np.diff相邻相减得到连续相同值的个数

 

1 ar =[3,2,2,1,1,2,2,3,3,1]
2 same_ar = np.concatenate(([True], ar[:-1] != ar[1:], [True]))
3 index_ar = np.where(same_ar)[0]
4 count_ar = np.diff(index_arr)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM