from collections import defaultdict
defduplicate_value_index(data):
dd = defaultdict(list)for k, va in[(v,i)for i, v inenumerate(data)]:
dd[k].append(va)return dd
dd= duplicate_value_index(data)
data=[(1,1),(1,1),(2,1),(3,1),(4,2),(4,2),(4,2)]##结果
defaultdict(<class'list'>,{(1,1):[0,1],(2,1):[2],(3,1):[3],(4,2):[4,5,6]})
获得重复值的个数
import pandas as pd
data=pd.Series([(1,1),(1,1),(2,1),(3,1),(4,2),(4,2),(4,2)])
result=data.value_counts(sort=True)print(result)##结果(4,2)3(1,1)2(2,1)1(3,1)1
dtype: int64