我在编码和数据方面是个初学者,所以我能得到的任何帮助都会很有帮助
如果我有一个如下的数据帧,其中每个匹配都是一个元组
df1 = Team A Player 1.1 Team A Player 2.1 Team A Player 3.1
('Max', 'Hatteberg') ('Hatteberg', 'Tejada') ('Max', 'Rincon')
('Tejada', 'Brown') ('Hatteberg', 'Rincon') ('Hatteberg','Brown')
以此类推
我有一个交叉表:
df2 = Max Hatteberg Tejada Brown Rincon
Max NaN -1.0 +2.0 -8.0 +5.0
Hatteberg +1.0 NaN +2.5 +3.0 0
Tejada -2.0 -2.5 NaN +5.5 -3.5
Brown +8.0 -3.0 -5.5 NaN +2.8
Rincon -5.0 0 +3.5 2.8 NaN
我希望每次比赛都能返回一个值
df1 = matchups 1 matchups 2 matchups 3
+1.0 -2.5 -5.0
-5.5 0 -3.0
我试过了
df1.applymap(lambda x : df2.lookup([x[0]],[x[1]])[0])
但它回来了
('One or more row labels was not found', 'occurred at index Team A Player 1.1')
我在引用两个数据帧和返回值时遇到问题。有人能帮帮我吗?提前谢谢
它更像是在df1中有一些值元组引用df2中的None值
您可以在
apply
lookup
之前使用reindex
相关问题 更多 >
编程相关推荐