热线电话:13121318867

登录
2019-02-14 阅读量: 741
Pandas - DataFrame将列或透视列转换为新行

我有这样的数据帧,

EmpID FirstName LastName Relationship FirstName.1 LastName.1 Relationship.1

1 Ax Bx 1A Cx Dx 1B

我的excel源文件在重复列上没有.1但是pandas创建它 - 当我读它时,我认为就是这样 - 你不能在数据库中有重复的列。

我想将其转换为这样的数据帧,

EmpID FirstName LastName Relationship

1 Ax Bx 1A

1 Cx Dx 1B

解决办法:

可以创建两个新的数据帧,然后将第二个追加到第一个:

df1 = df[['EmpID', 'FirstName', 'LastName', 'Relationship']]

df2 = df[['EmpID', 'FirstName.1', 'LastName.1', 'Relationship.1']]

df2.rename(columns=lambda x: x.replace('.1',''), inplace=True)

df = df1.append(df2, ignore_index=True)

>>> print(df)

0 EmpID FirstName LastName Relationship

0 1 Ax Bx 1A

1 1 Cx Dx 1B

0.0000
2
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子