我有以下形式的数据集:
Id Class
1 a
2 b
2 c
3 c
3 d
3 a
3 e
3 f
4 g
我需要准备这些数据来执行多标签分类 所以我使用:
df.groupby("Id").Class.apply(','.join).reset_index()
得到:
Id Class
1 a
2 b,c
3 c,d,e,f
4 g
现在 MultiLabelBinarizer
无法以其当前形式处理它,因为 df.Class
表示为
("a", "b,c", "c,d,e,f", "g")
但是,它应该是这样的
[["a"], ["b","c"], ["c","d","e","f"],["g"]]
我该怎么办?
最佳答案
你需要apply
列表
:
print (df.groupby("Id").Class.apply(list))
Id
1 [a]
2 [b, c]
3 [c, d, a, e, f]
4 [g]
Name: Class, dtype: object
关于python-3.x - 创建用于多标签分类的数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44405433/