有这df"creditor_life_rates_tranpose
"这是一个查找表:
我试图寻找价值的基础上钥匙"age
"和"term_years
"和储存回到我的基本数据的框架"的应用程序"。
对测试数据,基数据框"application
"载列"age
","term_years
"值49和3.8尊敬。
基础数据框应用程序如下:
age, terms_years
49, 3.8
我们看到,年龄49位于查询表,但由于3.8不是位于 term_years
列表查找我需要它来查找使用最高值低于3.8. 在这种情况下,这将是3.5. 因此价值,应该返回是21.40.
我曾试图写这种功能使用的尾巴(1)只返回的最后一个值基础上的 age
和 terms_years
从查找表
def hlookup_function(age, terms_year):
result= creditor_life_rates_tranpose[(creditor_life_rates_tranpose['age']== age) & (creditor_life_rates_tranpose['term_years'] <= terms_year)]['value'].tail(1).values[0]
return result
然后我会打电话的功能,像这样:
application['result'] = hlookup_function(application.age,(application_data.term_years).round(2))
我期待得到这个所得的数据框:
age, terms_years, results
49, 3.8, 21.40
顺便说一句,该代码的工作,如果我传递值,这样,但不实际的列应用程序的数据框. 但我需要以实际通过列。
application['result'] = hlookup_function(49,3.8)