2024-04-18 16:44:08 发布
网友
在Python/Pandas中,我想在我的数据框中创建一个列,显示客户在某个地点访问的平均天数。也就是说,对于每个客户,该客户访问之间的平均天数是多少
数据看起来像
Image of My Data
对不起,我真的没有经验,不知道如何键入除此之外的数据。我遵循this StackOverflow answer中的解决方案,除了那个人通常希望访问间隔的平均天数,我希望每个客户的访问间隔天数。多谢各位
我认为这可能有效:
avg_days_btw_visit_p_customer = df.groupby('CustomerID', as_index=False)['Days_Btw_Visit'].agg('mean')
这将返回以下结果:
CustomerID Days_Btw_Visit 0 1 9.5 1 2 29.0 2 3 NaN 3 4 3.0
此外,如果您想摆脱NaN,可以使用:
NaN
avg_days_btw_visit_p_customer = avg_days_btw_visit_p_customer.dropna()
对于每个客户,您需要有date_of_first_visit和date_of_most_recent_visit以及number_of_visits。那么方程应该是这样的
date_of_first_visit
date_of_most_recent_visit
number_of_visits
days_since_first = date_of_most_recent_visit - date_of_first_visit
average_days_between = days_since_first / number_of_visits
我认为这可能有效:
这将返回以下结果:
此外,如果您想摆脱
NaN
,可以使用:对于每个客户,您需要有
date_of_first_visit
和date_of_most_recent_visit
以及number_of_visits
。那么方程应该是这样的days_since_first = date_of_most_recent_visit - date_of_first_visit
average_days_between = days_since_first / number_of_visits
相关问题 更多 >
编程相关推荐