我正在熊猫中寻找一种简单的方法来计算两列之间的所有成对组合。例如:
df
Col1 Col2 Freq
A B 1
B A 1
A C 1
C B 1
C A 1
Run Code Online (Sandbox Code Playgroud)
预期输出:
Col1 Col2 Freq
A B 2
A C 2
C B 1
Run Code Online (Sandbox Code Playgroud)
谢谢
虽然这显然是其他人的重复,但我不确定是否在某处提到了以下方法:
s = (df.groupby(['Col1','Col2'])
.Freq.sum()
.unstack(-1, fill_value=0)
)
np.triu(s) + np.triu(s.T,1)
Run Code Online (Sandbox Code Playgroud)
输出:
array([[0, 2, 2],
[0, 0, 1],
[0, 0, 0]], dtype=int64)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
261 次 |
| 最近记录: |