我正在做一些熊猫计算,我的Pandas数据帧命名数据如下:
Userid ------ hashtagcount
1034 ---- 3我还有其他功能列。我使用以下来选择我的pandas数据集中具有重复值的行。例如,UserId出现3次以上。
unique_spam_row =数据[["用户ID"" UserCreatedAt"" UserDescriptionLength"" UserFollowersCount"" UserFriendsCount&# 34;,"用户位置"]]
我删除了重复的值。 spam_data = unique_spam_row.drop_duplicates()
但 我需要在新的spam_data数据帧中保存每个UserID的平均#标签数量。
所以我做了
垃圾= data.groupby('用户ID')[" HashtagCount&#34]。总和()
我得到了
用户名
1034 - 8
1337 - 5
2288 - 9
................
type(垃圾邮件)给了我,它是一个系列,我需要添加这些8,5,9 ....作为垃圾邮件数据帧中的AvgHashtag列,已删除重复的行... 非常感谢你的建议。
答案 0 :(得分:1)
我认为transform
应该有效:
data['count'] = data.groupby('UserID')["HashtagCount"].transform('sum')
这将返回一个系列,其索引与原始df对齐,因此您可以将其正确添加到列中