說我有一些如下所示的數據。我想要同時獲得有兩個標籤的ID數。熊貓在python熊貓數據框中的兩行之間獲得交集的方式
tag id
a A
b B
a B
b A
c A
我的願望是什麼結果:
tag1 tag2 count
a b 2
a c 1
b c 1
在普通的Python我可以寫僞代碼:
d = defaultdict(set)
d[tag].add(id)
for tag1, tag2 in itertools.combinations(d.keys(), 2):
print tag1, tag2, len(d[tag1] & d[tag2])
不是最有效的方式,但它應該工作。現在我已經將數據存儲在Pandas數據框中。是否有更多熊貓的方式來達到同樣的效果?
能否請您發表所需的輸出/數據集,因爲目前尚不清楚你想要達到的目標和你的代碼是不工作? – MaxU
這條線是如何工作的? 'd [標籤] .append(ID)'?集沒有追加方法? – ayhan
@MaxU嗨,更新的問題。這足夠清楚:) – dofine