【发布时间】:2023-01-16 00:33:31
【问题描述】:
我想从这个基本上是热编码的数据帧开始。
In [2]: pd.DataFrame({"monkey":[0,1,0],"rabbit":[1,0,0],"fox":[0,0,1]})
Out[2]:
fox monkey rabbit
0 0 0 1
1 0 1 0
2 1 0 0
3 0 0 0
4 0 0 0
对于这个“反向”单热编码的。
In [3]: pd.DataFrame({"animal":["monkey","rabbit","fox"]})
Out[3]:
animal
0 monkey
1 rabbit
2 fox
我想可以巧妙地使用 apply 或 zip 来做事,但我不确定如何......有人可以帮忙吗?
我使用索引等来尝试解决这个问题并没有取得多大成功。
【问题讨论】:
-
@PeadarCoyle,你能为这个输入 DF 发布你想要的 DF:
pd.DataFrame({'dog': {0: 0, 1: 0, 2: 0, 3: 0, 4: 0, 5: 1}, 'fox': {0: 0, 1: 0, 2: 1, 3: 0, 4: 0, 5: 0}, 'monkey': {0: 0, 1: 1, 2: 0, 3: 0, 4: 0, 5: 0}, 'rabbit': {0: 1, 1: 0, 2: 0, 3: 0, 4: 0, 5: 0}}),因为现在我不明白你想要的 DF 吗? -
@PeadarCoyle,能否请您澄清一下您的输入数据集是否在一列中可能有多个
1?你是如何获得只包含零的行的?