我有两个数据帧,其中一个包含有关足球运动员的一般信息,第二个数据帧包含其他信息,如每个球员的比赛获胜情况。他们都有“他们两个”的id。然而,它们的长度不一样。在
我要做的是创建一个新的dataframe,它包含两列:第一个dataframe中的“x”列和第二个dataframe中的“y”,仅当“id”列在两个数据帧中包含相同的值时。因此,我可以匹配属于同一个人的“x”和“y”列。在
我试着用concat函数来做:
pd.concat([firstdataframe['x'], seconddataframe['y']], axis=1, keys=['x', 'y'])
但我不知道如何在两个数据帧中应用“id”相等的条件。在
似乎您需要使用默认的^{} 连接,
inner
连接,id
列中的每个值都必须是唯一的:样品:
^{pr2}$使用^{} 的解决方案是可能的,但有点复杂,因为需要使用
inner
join连接索引:编辑:
如果
id
不唯一,则重复项创建所有组合,并展开输出dataframe
:相关问题 更多 >
编程相关推荐