我有两个数据帧。我的第一个数据框有两列,我想用它创建一个条件并从第二个数据框返回一个值。在数据框中查找匹配条件的第一行
df1 = (['a', 'a', 'b', 'c'], [0.4, 0.9, 0.1, 0.6])
df2 = (['a', 'a', 'b', 'b', 'c', 'c'], [0.2, 0.6, 0.3, 0.8, 0.1, 0.4],
[500, 200, 900, 400, 250, 800])
对于df1中的每一行,我想通过两列数据查找df2。第一个条件是将df1中的字母与df2相匹配。第二个条件是查找df2中数字大于df1的第一个数字行。如果没有数字更大,则采用与该字母匹配的df2中的第一行。
我的目标输出是:
- DF1行[0] = 500# '一个' 匹配 '一' & 0.4大于0.2
- DF1行[1] = 200# 'A'匹配 '一个' & 0.9大于0.6
- DF1行[2] = 900# 'b' 匹配 'b' &没有行大于0.1,以便返回第一 'b' 行
- DF1行[3] = 800#'c'匹配'c'& 0.6大于0.4
对于我的问题任何不良格式的道歉,请提供任何关于发布(它是我的第一个)的建议。
非常感谢!
谢谢您快速回答,这很好地解决了我的问题。 – crt