如何将pandas计算的系列合并到pandas数据帧

时间:2015-07-15 08:05:15

标签: python pandas machine-learning

我正在做一些熊猫计算,我的Pandas数据帧命名数据如下:

Userid ------ hashtagcount

1034 ---- 3
 1034 ---- 0
 1034 ---- 5
 1337 ---- 2
 1337 ---- 1
 1337 ---- 2
 2288 ---- 6
.... ----。

我还有其他功能列。我使用以下来选择我的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列,已删除重复的行...  非常感谢你的建议。

1 个答案:

答案 0 :(得分:1)

我认为transform应该有效:

data['count'] = data.groupby('UserID')["HashtagCount"].transform('sum')

这将返回一个系列,其索引与原始df对齐,因此您可以将其正确添加到列中