Python 合并具有相同ID的记录
我有上面的数据框,它有相同的GameID,但主客场有两个不同的实例。我想将它们合并到一个记录中,以获得以下输出:Python 合并具有相同ID的记录,python,pandas,Python,Pandas,我有上面的数据框,它有相同的GameID,但主客场有两个不同的实例。我想将它们合并到一个记录中,以获得以下输出: League GameID Date Y G_Home G_Away isHome Team Differential Avg_Diff Ligue_1 6446 2017-08-05 17 4 0 1 Lyon 4 0.86087 Ligu
League GameID Date Y G_Home G_Away isHome Team Differential Avg_Diff
Ligue_1 6446 2017-08-05 17 4 0 1 Lyon 4 0.86087
Ligue_1 6446 2017-08-05 17 4 0 0 Strasbourg -4 -4.00000
我怎样才能在熊猫身上做到这一点呢?假设每组只有
iHome
0,1,你可以对它们进行排序,使其成为(家,1,然后离开,0)。然后应用groupby
和aggregate
获得输出
df.sort_值(['isHome'],升序=False).groupby(['GameID']).agg(
联盟=(‘联盟’、‘第一’),
日期=('Date','first'),
Y=('Y','first'),
G_Home=('G_Home','first'),
G_Away=('G_Away','first'),
主队=('Team','first'),
AwayTeam=('Team','last'),
HomeDiff=('Avg_Diff','first'),
AwayDiff=('Avg_Diff','last'))
League GameID Date Y G_Home G_Away HomeTeam AwayTeam HomeAvgDiff AwayAvgDiff
Ligue_1 6446 2017-08-05 17 4 0 Lyon Strasbourg 0.86087 -4.00000
GameID League Date Y G_Home G_Away HomeTeam AwayTeam HomeDiff AwayDiff
6446 Ligue_1 2017-08-05 17 4 0 Lyon Strasbourg 0.86087 -4.0