我在 Pandas 数据框中有一列(使用 PyCharm),其中包含以下值:Colour-----RedGreenGreenBlueRed但我想将它分成几列,标题为“红色”、“绿色”、“蓝色”,然后将值设置为“是”或“否”。Red Blue Green--------------Yes No NoNo No YesNo No YesNo Yes NoYes No No
2 回答
![?](http://img1.sycdn.imooc.com/5458689e000115c602200220-100-100.jpg)
守着星空守着你
TA贡献1799条经验 获得超8个赞
您可以使用Series.str.get_dummies:
df.Colour.str.get_dummies().replace({1:'Yes', 0:'No'})
Blue Green Red
0 No No Yes
1 No Yes No
2 No Yes No
3 Yes No No
4 No No Yes
![?](http://img1.sycdn.imooc.com/5458463b0001358f02200220-100-100.jpg)
湖上湖
TA贡献2003条经验 获得超2个赞
您可以使用pd.get_dummies:
df = pd.DataFrame({'Colour': ['Red', 'Green', 'Green', 'Blue', 'Red']})
df
Colour
0 Red
1 Green
2 Green
3 Blue
4 Red
pd.get_dummies(df['Colour']).replace({0:'No', 1:'Yes'})
Blue Green Red
0 No No Yes
1 No Yes No
2 No Yes No
3 Yes No No
4 No No Yes
添加回答
举报
0/150
提交
取消