我试图弄清楚,如何根据另一个值计算某个列中的唯一值。我的数据框看起来像这样:
id_user id_track
1 1
1 2
1 4
3 1
3 1
3 4
1 1
2 5
基本上我有一张桌子,上面有用户的 ID 和他们听过的歌曲。我想计算每个用户,他听了多少首独特的歌曲,并按这个值排序。输出应该是这样的:
id_user uniqueTracks
1 3
3 2
2 1
我试图以这种方式做到这一点(听证会是我的 DataFrame):
uniqueTracks=[] #list of numbers of unique tracks
for i in range(len(hearings['id_user'].unique())):
uniqueTracks.append(len(hearings[hearings['id_user']==i['titles'].unique()))
但对于 2700 万行和 70k 唯一用户的表,它的运行速度非常慢。有谁知道如何在熊猫中做到这一点?先感谢您:)