Pandas:重组数据帧

2024-05-29 03:08:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含四列的数据帧:

df = pd.DataFrame({'name': {1:'Aaron', 2:'Bobby', 3:'Carl'},  
               'job': {1:'mechanic', 2:'carpenter', 3:'plumber'},
               'experience': {1:12, 2:23, 3:14},
               'type': {1:'owner',2:'contractor',3:'assistant'}},
              columns=['name','job','experience','type'])
df

我想使用pandas来重塑数据,使names是索引,job是一个列标题,以experience和{}作为列的子标题——即,在mechanic列下,experience和{}有一个子列,carpenter列下也有相同的子列,等等

我试过用

^{pr2}$

但是experience和{}是顶层,而不是{}。有没有方法可以更改它,使job成为列标题的顶层?在

谢谢你的帮助!在


Tags: 数据name标题dataframedftypejobexperience
1条回答
网友
1楼 · 发布于 2024-05-29 03:08:31

您可以使用^{}

df.columns = df.columns.swaplevel(0,1)
print (df)
job    carpenter   mechanic    plumber   carpenter mechanic    plumber
      experience experience experience        type     type       type
name                                                                  
Aaron        NaN       12.0        NaN        None    owner       None
Bobby       23.0        NaN        NaN  contractor     None       None
Carl         NaN        NaN       14.0        None     None  assistant

相关问题 更多 >

    热门问题