python - 如何将列(average_user_rating)添加到数据框中,为我提供该行中 userId 的平均评分?
问题描述
Python数据框:
我得到了一个包含 UserId、MovieId 和评级(长度为 81116)的数据框。
我还有一个系列,其中包含每个 UserId 的平均评分(长度为 610)。
如何向数据框中添加一列average_user_rating,为该行中的userId 提供平均评分?
解决方案
假设该系列按 UserId 的新月顺序排列,您可以使用 pandas 来执行此操作,例如:
df["average_user_rating"] = df["UserId"].apply(lambda x: s[x-1])
你可以测试:
s = pd.Series([10,20])
df = pd.DataFrame([[1,5],[1,15],[2,10],[2,30]], columns = ["UserId", "Rating"])
print (s)
print (df)
df["average_user_rating"] = df["UserId"].apply(lambda x: s[x-1])
print(df)
推荐阅读
- asp.net-mvc - 为 ASP.NET MVC 5 项目设计更复杂的数据库
- java - 是否可以强制转换方法?
- swift - 插入的模型看起来比预期的大并且在相机的背面
- python - 使用 Keras 的慢 DQN
- python - 如何将具有每日收益的数据框转换为从 100 开始的数据框索引
- c - TCP/IP 流转储任意簇中的文本(C 套接字编程)
- python - 如何在小复杂度模型(LBCNN)上解决 Pytorch “CUDA out of memory”
- amazon-web-services - 针对 PCI DSS 的 Elastic Beanstalk 的内部漏洞扫描和笔测试
- identityserver4 - 如何向 microsoft-identity-web 提供 login_hint
- c# - Unity LookAt 函数破坏了游戏对象