Pandas:如何计算两列的唯一组合
您可以使用以下语法来计算 pandas DataFrame 中两列中唯一组合的数量:
df[[' col1 ', ' col2 ']]. value_counts (). reset_index (name=' count ')
以下示例展示了如何在实践中使用此语法。
示例:计算 Pandas 中两列的唯一组合
假设我们有以下 pandas DataFrame,显示了各个篮球运动员的球队和位置:
import pandas as pd #create dataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Mavs', 'Mavs', 'Heat', 'Heat', 'Heat', 'Heat'], ' position ': ['Guard', 'Guard', 'Guard', 'Forward', 'Guard', 'Forward', 'Forward', 'Guard']}) #view DataFrame df team position 0 Mavs Guard 1 Mavs Guard 2 Mavs Guard 3 Mavs Forward 4 Heat Guard 5 Heat Forward 6 Heat Forward 7 Heat Guard
我们可以使用以下语法来计算独特的团队和位置组合的数量:
df[[' team ', ' position ']]. value_counts (). reset_index (name=' count ') team position count 0 Mavs Guard 3 1 Heat Forward 2 2 Heat Guard 2 3 Mavs Forward 1
从结果我们可以看出:
- 小牛和后卫的组合出现了3 次。
- 热力-前锋组合出现2 次。
- 热卫组合出现2次。
- 小牛-前锋组合出现1 次。
请注意,您还可以按升序或降序对结果进行排序。
例如,我们可以使用以下代码将结果按数字升序排序:
df[[' team ', ' position ']]. value_counts (ascending= True ). reset_index (name=' count ') team position count 0 Mavs Forward 1 1 Heat Forward 2 2 Heat Guard 2 3 Mavs Guard 3
结果现在按数字从小到大排序。
注意:您可以在此处找到 pandas value_counts()函数的完整文档。
其他资源
以下教程解释了如何在 pandas 中执行其他常见任务:
Pandas:如何使用 GroupBy 和值计数
Pandas:如何使用 GroupBy 和 bin 计数
Pandas:如何创建包含多个值的数据透视表