计算熊猫数据框中的重复元素

时间:2019-10-31 22:32:01

标签: python pandas

我想统计熊猫数据框“ data”中的重复元素的数量,特别是在roi列中,然后将此数量输入到count列的每个对应行中。

例如,roi 35出现两次,因此count列中的每一行都应有一个“ 2”。

现在我尝试了以下操作:

data['count'] = data.groupby('roi').roi.count()

但这失败了。我该怎么办?

enter image description here

3 个答案:

答案 0 :(得分:1)

尝试使用此行:

data['count'] = data.groupby(['roi']).size().reset_index(name='count')

最后的reset_index()函数用于显示重复编号的计数。您可以根据需要跳过它。

答案 1 :(得分:1)

roi_count = data.groupby('roi')['roi'].count().reset_index(name = 'count')

final_df = pd.merge(data,roi_count, how = 'left', on = 'roi')

答案 2 :(得分:1)

使用GroupBy.transform

data['count'] = data.groupby('roi').roi.transform('size') 

Series.map + Series.value_counts

data['count']=data.roi.map(data.roi.value_counts())