一、在报表开发过程中,如何让设计留存率
1、如果没有自动化分析平台,如何很好的利用pandas进行留存率计算呢?传统的方式可以使用sql语句完成,但是可操作性比较差,过程相对于繁琐,现在小编就带大家进行pandas 方法进行留存率计算。
留存率计算公式:
a = 现有的客户数量
b = 昨天的客户数据
现在求:昨天的客户数量今天还剩下多少以及占比情况?
解答:
直接上代码:
import datetime
from datetime import timedelta
def Liucun(dat,n)
user=[]
date=pd.Series(dat.MakeDate.unique()).sort_values()[:-n]
retention_rates=[]
for i in date:
new_user=set(dat[dat.MakeDate==i].UserUID.unique())-set(user)
user.extend(new_user)
zo = np.datetime64(i).astype(datetime.datetime)
zl = (zo+timedelta(n)).strftime('%Y-%m-%d')
user_nday=dat[dat.MakeDate==zl].UserUID.unique()
a = 0
for uid in user_nday:
if uid in new_user:
a +=1
retention_rate=a/len(new_user)
retention_rates.append(retention_rate)
data_retention=pd.Series(retention_rates,index=date)
通过上面的步骤就可以实现留存率输出的自动化,有什么不明白的可以私信小编哦