【发布时间】:2021-08-02 18:38:06
【问题描述】:
这是我在这里的第一篇文章。
如果没有示例,我不完全知道如何提出这个问题,因此很难找到答案。 无论如何,我有一个看起来像这样的 DataFrame(有更多的列和数千行):
df = pd.DataFrame({"A": [1, 0, 0], "B": [0, 0, 1], "C": [0, 1, 0]})
我想创建额外的列,例如。 “类型”,其中每一行的值将是该行中包含 1 的列的列名。 例如:
df = pd.DataFrame({"A": [1, 0, 0], "B": [0, 0, 1], "C": [0, 1, 0], "Type": ["A", "C", "B"]})
我希望这是有道理的。
谢谢, 克里斯
【问题讨论】:
-
欢迎来到stackoverflow。您拥有的表示称为“单热编码”,您需要将其转换为分类值。以前有人问过这个问题,例如here,但我想如果没有正确的关键字,确实很难找到!
-
这些是 one-hot 编码列还是虚拟列?这对答案很重要。
-
非常感谢 fsimonjetz,情况相同! ALollz - 这些是编码的。我在我的一列上使用了 MultiLabelBinarizer,这就是输出