题解 | 牛客网用户练习的平均次日留存率

牛客网用户练习的平均次日留存率

https://www.nowcoder.com/practice/1f9e2b9be96b4b27a2476f8f12c5d29f

import pandas as pd 
df_0=pd.read_csv('nowcoder.csv')

df_0['date']=pd.to_datetime(df_0['date']).dt.date  #转成日期类型

df=df_0[['date','user_id']].drop_duplicates() # 用户1天会多次答题,需要去重

df['next_date'] = df.sort_values('date').groupby(df['user_id'])['date'].shift(-1) # 复刻sql中lead() over()这个窗口函数:排序-》分组-》获取下一次日期

print(round(df[(df['next_date']-df['date']).dt.days == 1]['user_id'].count()/df['user_id'].count(),2)) # 两个日期间隔为1,说明是连续两天登录

全部评论

相关推荐

03-18 01:22
门头沟学院 Java
多多爱我我爱多多:linkedList 替换 arrayList 是怎么实现20倍提升的 好奇
点赞 评论 收藏
分享
零零幺零零幺:至少再做一个项目,然后猛投小厂,不然有点难
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务