gpt4 book ai didi

python - 查找连续索引 pandas

转载 作者:行者123 更新时间:2023-12-04 15:53:22 24 4
gpt4 key购买 nike

我有一个数据框-

cols = ['hops','frequency']
data = [[-13,2],[-8,2],[-5,1],[0,2],[2,1],[4,1],[7,1]]
data = np.asarray(data)
indices = np.arange(0,len(data))

df= pd.DataFrame(data, index=indices, columns=cols)

现在我想检查与最大值相关的跳数的索引是否连续。例如这里的最大频率是 2,拥有它们的索引是 0 1 3。现在我们需要检查所有元素是否连续。在这种情况下它不是因为索引必须是 0 1 2 才能连续。

最佳答案

将您的逻辑分解成多个部分,您会发现构建解决方案会更容易。

首先使用 bool 索引计算索引:

idx = df.index[df['frequency'] == df['frequency'].max()]
# Int64Index([0, 1, 3], dtype='int64')

然后计算连续值之间的差异:

diffs = np.diff(idx)
# array([1, 2], dtype=int64)

最后,检查所有的差异是否都等于 1:

diff_one_check = (diffs == 1).all()
# False

关于python - 查找连续索引 pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52920262/

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