pandas计算最大连续间隔的方法

我赞美你品格高尚,崇敬你洁白无瑕。我爱你、想你、盼你,像对每一个季节那样。我爱你、想你、盼你,不管世俗的偏见怎样厉害。冬――四季之一的冬,你来吧!我喜欢你纯净的身躯,喜欢你严厉的性格,我要在你的怀抱中锻炼、奋斗、成熟……你可以和春天的万花,夏天的麦浪,秋天的瓜果……比美!

如下所示:

群里一朋友发了一个如上图的问题,解决方法如下

data = {'a':[1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2],'b':[1,2,3,4,5,8,9,10,1,2,3,6,7,8,9,12,13]}
df = pd.DataFrame(data)
for name,group in df.groupby('a'):
 group['c'] = ((group['b'].shift(1).fillna(0) + 1).astype(int) != group['b']).cumsum()
# print(group)
 print(group['c'].value_counts()) #按value值出现最多的,即问题1的答案,value值最大的,即问题2的答案。

以上这篇pandas计算最大连续间隔的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

您可能有感兴趣的文章
pandas取dataframe特定行列的实现方法

pandas DataFrame.shift()函数的具体使用

Pandas实现聚合运算agg()的示例代码

pandas中DataFrame重置索引的几种方法

pandas读取excel时获取读取进度的实现