为了账号安全,请及时绑定邮箱和手机立即绑定

如何将单列中的值分配到多列?

如何将单列中的值分配到多列?

子衿沉夜 2021-11-16 15:38:43
我在 Pandas 数据框中有一列(使用 PyCharm),其中包含以下值:Colour-----RedGreenGreenBlueRed但我想将它分成几列,标题为“红色”、“绿色”、“蓝色”,然后将值设置为“是”或“否”。Red  Blue Green--------------Yes  No  NoNo   No  YesNo   No  YesNo   Yes NoYes  No  No
查看完整描述

2 回答

?
守着星空守着你

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


查看完整回答
反对 回复 2021-11-16
?
湖上湖

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


查看完整回答
反对 回复 2021-11-16
  • 2 回答
  • 0 关注
  • 145 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信