所以我有5个来自国际足联13-17的前80名球员的数据帧,每个数据帧包含球员的名字、级别和俱乐部。我的最终目标是将所有这些数据集合并在一起,这样我就可以对每个玩家每年进行一次评级,如果他们没有成功的话,则为空值。很明显,有些球员并不是每年都能进入前80名的。 下面是三个数据帧的片段。你知道吗
国际足联18
Name Overall Club
0 Cristiano Ronaldo 94 Real Madrid CF
1 L. Messi 93 FC Barcelona
2 Neymar 92 FC Barcelona
3 L. Suárez 92 FC Barcelona
4 M. Neuer 92 FC Bayern Munich
5 De Gea 90 Manchester United
6 R. Lewandowski 90 FC Bayern Munich
7 J. Boateng 90 FC Bayern Munich
8 G. Bale 90 Real Madrid CF
9 Z. Ibrahimović 90 Manchester United
10 T. Courtois 89 Chelsea
国际足联13
Name Overall Club
0 L. Messi 94 FC Barcelona
1 Cristiano Ronaldo 92 Real Madrid CF
2 F. Ribéry 90 FC Bayern Munich
3 Xavi 90 FC Barcelona
4 Iniesta 90 FC Barcelona
5 N. Vidić 89 Manchester United
6 W. Rooney 89 Manchester United
7 Casillas 89 Real Madrid CF
8 David Silva 88 Manchester City
9 Falcao 88 Atlético Madrid
10 Z. Ibrahimović 88 Paris Saint-Germain
出现这种情况的一个例子是N.Vidić,他已经退休。你知道吗
我的目标是
Name FIFA17 FIA13 Club
0 Cristiano Ronaldo 94 92 Real Madrid CF
1 L. Messi 93 94 FC Barcelona
2 Neymar 92 83 FC Barcelona
3 L. Suárez 92 86 FC Barcelona
4 M. Neuer 92 87 FC Bayern Munich
5 De Gea 90 82 Manchester United
6 R. Lewandowski 90 80 FC Bayern Munich
7 J. Boateng 90 84 FC Bayern Munich
8 G. Bale 90 86 Real Madrid CF
9 Z. Ibrahimović 90 88 Manchester United
10 T. Courtois 89 83 Chelsea
11 F. Ribéry 86 90 FC Bayern Munich
12 Xavi 0 90 FC Barcelona
13 Iniesta 88 90 FC Barcelona
14 N. Vidić 0 89 Manchester United
15 W. Rooney 0 89 Manchester United
16 Casillas 0 89 Real Madrid CF
17 David Silva 87 88 Manchester City
18 Falcao 0 88 Atlético Madrid
我不熟悉python和pandas,但我尝试过使用join和merge,但似乎总是使用每个表的索引,而不是唯一的名称。你知道吗
任何帮助都将不胜感激!你知道吗
这里有一种通过
pd.concat
和pivot_table
的方法。它假设您能够将数据帧放入字典中,字典的长度可以是任意的。你知道吗该解决方案还处理多个俱乐部,只保留最新的俱乐部。你知道吗
结果
在带有^{} 的列中对} ,然后用^{} 替换} 列:
MultiIndex
使用^{NaN
s,强制转换为integer
s,最后将MultiIndex
转换为^{如果顺序是重要的,解决方案是相似的,只获得唯一对} 和^{} 连接在一起并删除重复项:
Names
和Club
,通过^{对于一般解决方案,请使用
list comprehension
:相关问题 更多 >
编程相关推荐