在熊猫中重新排列列然后进行连接

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在熊猫中重新排列列然后进行连接相关的知识,希望对你有一定的参考价值。

我收集了既包含主队又包含对手的NBA游戏数据。

第一个数据帧(团队)很好。

我想复制数据,然后制作相同的数据框,但要作为对手作为主队。

这里是列名,为了使第二个重复的数据帧具有t的所有内容都变为o,具有o的所有内容都变为t(O =对手,T =团队)

['Opponent_x','O1q_x','O2q_x','O3q_x','O4q_x','Oot','Ofinal_x', 'Team_x','T1q_x', 'T2q_x','T3q_x','T4q_x','Tot','Tfinal_x']

Opponent=['Wizards','25','23','33','22','0','103','Celtics','23','20', '27','32','0','102']
Team=['Celtics','23','20','27','32','0','102''Wizards','25','23', '33','22','0','103']

最终结果应为

['Wizards','25','23','33','22','0','103','Celtics','23','20', '27','32','0','102']
['Celtics','23','20','27','32','0','102''Wizards','25','23', '33','22','0','103']

所以我已经尝试过

Opponent.columns =['Team_x','T1q_x','T2q_x','T3q_x','T4q_x','Tot','Tfinal_x','Opponent_x', 'O1q_x','O2q_x','O3q_x','O4q_x','Oot','Ofinal_x']

All = pd.concat(Opponent,Team)

这没有提供正确的尺寸,并且某些数据没有移到正确的位置

答案

[从创建“阴影”数据框开始,并具有“交换的两半”列:

df2 = pd.concat([df.iloc[:, 7:14], df.iloc[:, 0:7]], axis=1)

然后用原始列覆盖列名称(在df2中):

df2.columns = df.columns

并获得连接这两个的最终结果:

pd.concat([df, df2])

以上是关于在熊猫中重新排列列然后进行连接的主要内容,如果未能解决你的问题,请参考以下文章

在熊猫中按一列随机排列行

如何在熊猫中按值计数对列进行排序

熊猫数据框重新排列堆栈到两个值列(用于因子图)

如何在熊猫中进行左外连接排除

使用熊猫分割一个大的excel文件

熊猫中的列连接