【发布时间】:2020-02-10 23:25:04
【问题描述】:
我正在 Pandas 中寻找一种简单的方法来计算 2 列之间的所有成对组合。例如:
df
Col1 Col2 Freq
A B 1
B A 1
A C 1
C B 1
C A 1
预期输出:
Col1 Col2 Freq
A B 2
A C 2
C B 1
谢谢
【问题讨论】:
-
df[['Col1', 'Col2']] = np.sort(df[['Col1', 'Col2']], axis=1); df.groupby(['Col1', 'Col2']).size() -
它是
sum而不是size:df.groupby(['Col1', 'Col2']).sum().reset_index()。将其发布为@user3483203 的答案? -
这显然是 100 篇其他帖子的重复。更多的是一个问题,即哪个是最好的链接(即明显避免缓慢解决方案的那个)
-
This question 将
first()替换为sum()。 -
我认为frozenset的答案应该被取消删除,这确实是一个很好的答案