【发布时间】:2016-11-15 00:21:57
【问题描述】:
我想从这个基本上是一个热编码的数据帧开始。
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 来做薄,但我不知道如何......有人可以帮忙吗?
我使用索引等尝试解决这个问题并没有取得多大成功。
【问题讨论】:
-
请向我们展示您的代码。
-
您的 2 个数据框不匹配...
-
我解决了这个问题 - 感谢您的关注 :)
-
@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?你是如何得到只包含零的行的?