如果我有一个像这样的数据框架:
| Fruits |
| ------------ |
| apple, banana, strawberry |
| apple |
| strawberry, apple |
我很难为这样的东西创建虚拟列,因为它可能在每行有多个水果。这将是我想要的结果:
| 香蕉|草莓| strawberry |
| --|--| ------------ |
| 1| 1| 1 |
| 0| 0| 0 |
| 0| 1| 1 |
尝试get_dummies函数本身并不起作用,因为它将创建如下列:
| 苹果|草莓,苹果| strawberry,apple |
| --|--| ------------ |
| 0| 0| 0 |
| 1| 0| 0 |
| 0| 1| 1 |
任何帮助都是赞赏的,谢谢!
4条答案
按热度按时间fiei3ece1#
这里有一种方法,使用我在评论中提到的技术:
字符串
输出量:
型
ff29svar2#
你可以这样做
字符串
产出
型
juzqafwq3#
在pandas上使用
get_dummies
函数为每行中的多个条目创建虚拟列,所以基本上通过分隔符(逗号)将条目拆分为fruits列,然后应用到get_dummies
,这样我们就可以了:字符串
希望有用,谢谢,
mgdq6dx14#
您也可以在标准库的帮助下这样做,以获得整洁漂亮的代码。
字符串
用途:
型
输出量:
型
在
python==3.10.8
和pandas==1.5.2
上测试。