【发布时间】:2017-10-13 20:06:40
【问题描述】:
我需要确定满足多列特定条件的连续值的最大数量。
如果我的 df 是:
A B C D E
26 24 21 23 24
26 23 22 15 23
24 19 17 11 15
27 22 28 24 24
26 27 30 23 11
26 26 29 27 29
我想知道每列出现超过 25 的数字的最大连续次数。所以输出将是:
A 3
B 2
C 3
D 1
E 1
使用以下代码,我可以一次获取一列的结果;有没有办法像上面那样创建一个表,而不是为每一列重复(我总共有 40 多列)。
df.A.isnull().astype(int).groupby(df.A.notnull().astype(int).cumsum()).sum().max()
提前致谢。
【问题讨论】:
-
你能解释一下你是怎么得到
A 3的吗? -
这是个好问题:)
标签: python pandas pandas-groupby cumsum