df.groupby 一列,计算另一列中的值

我有一个这种格式的数据框(有更多的行,有数百个不同的值col2):


dftest = pd.DataFrame(

    {'col1': ['black', 'black', 'brown', 'black', 'green', 'red', 'black', 'black'],

     'col2': ['cat', 'cat', 'dog', 'dog', 'snake', 'snake', 'bird', 'bird']})

我知道我可以将所有动物条目col2组合在一起


grouped = dftest.groupby('col2')

我想使用groupeddf 来计算 中的颜色组合col1,按 中的值分组col2。


例如, thecat和birdgrouping 都有black/blackin col1,所以black/black = 2。只有蛇有red/green,所以red/green  = 1。期望的输出:


black/black = 2

black/brown = 1

green/red = 1


湖上湖
浏览 216回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python