按分隔符将列拆分为未知数量的列 Pandas

Split Column into Unknown Number of Columns by Delimiter Pandas

我正在尝试根据 comma/space 分隔将一列拆分为多列。

我的数据框目前看起来像

    Item                                          Colors
0   ID-1                                          Red, Blue, Green
1   ID-2                                          Red, Blue
2   ID-3                                          Blue, Green
3   ID-4                                          Blue
4   ID-5                                          Red

我想像这样将 'Colors' 列转换为红色、蓝色和绿色:

    Item                                           Red  Blue  Green
0   ID-1                                           1    1     1
1   ID-2                                           1    1     0
2   ID-3                                           0    1     1
3   ID-4                                           0    1     0
4   ID-5                                           1    0     1

我真的不知道该怎么做。 任何帮助将不胜感激。

您可以使用 get_dummies

pd.concat([df,df.Colors.str.get_dummies(sep=', ')],1)
Out[450]: 
   Item          Colors  Blue  Green  Red
0  ID-1  Red,Blue,Green     1      1    1
1  ID-2        Red,Blue     1      0    1
2  ID-3      Blue,Green     1      1    0
3  ID-4            Blue     1      0    0
4  ID-5             Red     0      0    1