我有这样的数据帧:大熊猫 - 基于价值观的两列组
df = pd.DataFrame({'A' : ['foo', 'bar', 'foo', 'bar',
'fuz', 'baz', 'fuz', 'coo'],
'B' : ['one', 'one', 'two', 'two',
'three', 'three', 'four', 'one']})
它看起来像:
A B
0 foo one
1 bar one
2 foo two
3 bar two
4 fuz three
5 baz three
6 fuz four
7 coo one
我想创建一个新的列group
。一个小组汇总A + B列中唯一值的组合。
它查看每列的唯一值。然后查看另一列中的值,以查看组中已有的元素。
结果是这样的:
A B group
0 foo one 1
1 bar one 1
2 foo two 1
3 bar two 1
4 fuz three 2
5 baz three 2
6 fuz four 2
7 coo one 1
在这个例子中,我们在A列所有foo
将在group1
开始在foo
。 B中的相关值是one
和two
=>也在group1
中。在列A的one
和two
的相关联的值是foo
,bar
和coo
=>也group1
。
相同的原理给我们group2
。
什么是最好的方法来做到这一点?