此问题已在此处有答案:
Pandas - make a column dtype object or Factor(3个答案)
10天前关闭。
假设我们有一个pandas数据框架,如下所示:
Questions cnt similarity
0 ABC 1 [1, 2, 3]
1 abc 2 [1, 2, 3]
2 cba 3 [2, 3, 1]
3 abcd 4 [4, 5, 6]
4 dcsa 5 [2, 3, 1]
5 adcd 6 [4, 5, 6]
6 abcd 7 [1, 2, 3]
7 cba 8 [7, 8, 9]
我必须在similarity
列的基础上添加另一个名为cat
的列。如果两行具有相同的similarity
,则将它们归类为同一组。下面是预期输出。任何投入都是有价值的。值得一提的是,原始数据集有1M
行。谢谢你。
Questions cnt similarity cat
0 ABC 1 [1, 2, 3] 1
1 abc 2 [1, 2, 3] 1
2 cba 3 [2, 3, 1] 2
3 abcd 4 [4, 5, 6] 3
4 dcsa 5 [2, 3, 1] 2
5 adcd 6 [4, 5, 6] 3
6 abcd 7 [1, 2, 3] 1
7 cba 8 [7, 8, 9] 4
2条答案
按热度按时间twh00eeo1#
IIUC,您可以使用
pd.factorize
:输出:
4ktjp1zp2#
一种方法是使用
groupby.ngroup()
: