Python 如何计算每个用户(ID)的最大一致活动天数?

Python 如何计算每个用户(ID)的最大一致活动天数?,python,pandas,numpy,dataframe,data-analysis,Python,Pandas,Numpy,Dataframe,Data Analysis,我在Python中有一个数据帧,如下所示: 但是在整个数据帧中的overship列中有许多其他ID的值为0或>0。 所以我想计算每个ID的一致1的最大数量。 请问我该怎么做 致以最良好的祝愿 我不得不添加两个额外的专栏来实现您想要实现的目标 df[["ID","Activity"]].groupby(["ID"]).sum().reset_index(name="Max Activity days") df = df.sort_values(["ID", "Day"]) df["Timest

我在Python中有一个数据帧,如下所示:

但是在整个数据帧中的
overship
列中有许多其他
ID
的值为0或>0。
所以我想计算每个
ID
的一致
1
的最大数量。 请问我该怎么做


致以最良好的祝愿

我不得不添加两个额外的专栏来实现您想要实现的目标

df[["ID","Activity"]].groupby(["ID"]).sum().reset_index(name="Max Activity days")
df = df.sort_values(["ID", "Day"])
df["Timestamp"] = pd.to_datetime(df.Day).astype('int64')
df["Change"] = df.Activity.diff().fillna(1)
df["StartTimeStamp"] = df.Change * df.Timestamp
df["StartTimeStamp"] = df.StartTimeStamp.replace(0, method='ffill')
summary = df[df.StartTimeStamp > 0].groupby(["ID", "StartTimeStamp"]).Activity.count().groupby("ID").max()

我想计算每个“ID”的一致“1”的最大数量。这意味着什么,你能发布你的预期输出吗。我已经更新了图片。请)@btnvstusrnm,粘贴数据样本总是有帮助的。很难用图像再现您的问题!你能解释一下你的答案吗?它很完美而且有效!你真是个了不起的天才!谢谢!
df = df.sort_values(["ID", "Day"])
df["Timestamp"] = pd.to_datetime(df.Day).astype('int64')
df["Change"] = df.Activity.diff().fillna(1)
df["StartTimeStamp"] = df.Change * df.Timestamp
df["StartTimeStamp"] = df.StartTimeStamp.replace(0, method='ffill')
summary = df[df.StartTimeStamp > 0].groupby(["ID", "StartTimeStamp"]).Activity.count().groupby("ID").max()