Pandas 如何在Scikit Learn中的MultiLabelBinarizer中生成唯一的类名

Pandas 如何在Scikit Learn中的MultiLabelBinarizer中生成唯一的类名,pandas,scikit-learn,Pandas,Scikit Learn,当我在Scikit Learn中创建一个MultiLabelBinarizer时,如果我们想将标签摄取到熊猫数据帧中,则可以从mlb.classes\uuu中获取标签。默认情况下,标签似乎基于实际数据中的实际值。我担心的是,如果我有第二个MultiLabelBinarizer,如果两个二进制代码共享一个公共值,那么它们之间可能会发生冲突。解决这个问题的最好办法是什么。我将提出两种可能性,也许解决方案1、解决方案2或两者都不是最好的 解决方案1:当我创建数据帧时,我将原始列名前置到每个mlb.cl

当我在Scikit Learn中创建一个MultiLabelBinarizer时,如果我们想将标签摄取到熊猫数据帧中,则可以从
mlb.classes\uuu
中获取标签。默认情况下,标签似乎基于实际数据中的实际值。我担心的是,如果我有第二个MultiLabelBinarizer,如果两个二进制代码共享一个公共值,那么它们之间可能会发生冲突。解决这个问题的最好办法是什么。我将提出两种可能性,也许解决方案1、解决方案2或两者都不是最好的

解决方案1:当我创建数据帧时,我将原始列名前置到每个mlb.classes值。例如,
pd.DataFrame(mlb.transform(df[cname]),columns=[cname+'.+s表示mlb.classes中的s])
。它在我正在使用的数据帧中起到了作用,但我很担心,因为原始的mlb.classes值保持不变

解决方案2:我组合了多个LabelBinarizer。这对我来说似乎很糟糕,因为它们通常不包含相同的值,而且它们的值可能是相同的,特别是对于更一般或通用的值