gpt4 book ai didi

python - 如何在 NumPy 数组中查找连续元素的组

转载 作者:IT老高 更新时间:2023-10-28 20:25:10 36 4
gpt4 key购买 nike

我必须对 NumPy 数组中的连续元素进行聚类。考虑以下示例

a = [ 0, 47, 48, 49, 50, 97, 98, 99]

输出应该是如下的元组列表

[(0), (47, 48, 49, 50), (97, 98, 99)]

这里的区别只是元素之间的一个。如果差异也可以指定为限制或硬编码数字,那就太好了。

最佳答案

def consecutive(data, stepsize=1):
return np.split(data, np.where(np.diff(data) != stepsize)[0]+1)

a = np.array([0, 47, 48, 49, 50, 97, 98, 99])
consecutive(a)

产量

[array([0]), array([47, 48, 49, 50]), array([97, 98, 99])]

关于python - 如何在 NumPy 数组中查找连续元素的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7352684/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com