Skip to main content
 首页 » 编程设计

python之分类变量到多列

2025年05月04日9zdz8207

我有带有分类变量 Segment 的数据框

ID  Segment Var 
1   AAA     1 
2   BBB     0 
3   BBB     1 
4   AAA     1 
5   CCC     1 
6   AAA     0  
7   AAA     1 
8   AAA     0 
9   BBB     0 
10  CCC     0 

我想像这样将列 Segment 转换为 3 个类别:

ID  SegmentAAA  SegmentBBB  SegmentCCC 
1   1           null        null 
2   null        0           null 
3   null        1           null 
4   1           null        null 
5   null        null        1 
6   0           null        null 
7   1           null        null 
8   0           null        null 
9   null        0           null 
10  null        null        0 

你能帮我解决这个问题吗?非常感谢。

请您参考如下方法:

那是枢轴吗?

df.pivot(*df.columns) 
Out[70]:  
Segment  AAA  BBB  CCC 
ID                     
1        1.0  NaN  NaN 
2        NaN  0.0  NaN 
3        NaN  1.0  NaN 
4        1.0  NaN  NaN 
5        NaN  NaN  1.0 
6        0.0  NaN  NaN 
7        1.0  NaN  NaN 
8        0.0  NaN  NaN 
9        NaN  0.0  NaN 
10       NaN  NaN  0.0