gpt4 book ai didi

pandas - Pandas 中的 Vlookup 具有近似匹配

转载 作者:行者123 更新时间:2023-12-02 09:35:56 24 4
gpt4 key购买 nike

我需要对两个 pandas 数据帧进行 vlookup 样式操作

Excel 中的 Vlookup 函数有一个额外参数,以确定是否应查找近似匹配或精确匹配。为了精确匹配,我知道我可以使用 join 函数。但是我该如何进行近似匹配以找到下一个更大的值呢?

例如,如果我有一个分数和成绩定义数据框,如下所示:

Student Mark
John 65
Peter 75
Jason 79

还有

Mark    Symbol
50 D
60 C # table indicates a mark between 60 and 69 is a C symbol
70 B
80 A

如何获得这样的表格:

Student Mark    Symbol
John 65 C
Peter 75 B
Jason 79 B

最佳答案

使用merge_asof用于合并最近的键

In [2484]: pd.merge_asof(df1, df2, on='Mark')
Out[2484]:
Student Mark Symbol
0 John 65 C
1 Peter 75 B
2 Jason 79 B
<小时/>

详情

In [2485]: df1
Out[2485]:
Student Mark
0 John 65
1 Peter 75
2 Jason 79

In [2486]: df2
Out[2486]:
Mark Symbol
0 50 D
1 60 C
2 70 B
3 80 A

关于pandas - Pandas 中的 Vlookup 具有近似匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46357897/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com