假设你正在为一个电子商务网站工作,网站收集了用户的行为数据,包括用户的点击次数(ciicks),浏览时间(duration)以及购买次数(purchases),你的任务是分析这些数据,计算出每个用户的行为分数,以便于网站根据分数提供个性化的产品推荐。
给定一个用户的行为数据,每个用户有三个特征:点击次数(clicks)、浏览时间(duration)以及购买次数(purchases)。我们希望对这三个特征进行归一化处理,然后计算每个用户的行为分数。
计算每个用户的行为分数。行为分数的计算公式为:
给定一个字典,字典的键为用户的 id,值为包含用户行为数据的字典,数据包括 clicks(点击次数)、duration(浏览时间)以及 purchases(购买次数)。要求对这三列数据进行最大最小归一化处理,然后使用下列公式计算每个用户的行为得分:
score=log(1 + normalized_clicks) + exp(normalized_duration) + normalized_purchases*(normalized_purchases + 1)/2
其中,log 表示自然对数,exp 表示指数函数。得分最终使用 round 保留至多三位小数。如果所有用户的 clicks、duration 和 purchases 都为零,则返回结果为 NaN 。