นั่นคือ df"creditor_life_rates_tranpose
"ซึ่งเป็นการค้นหาโต๊ะ:
ฉันกำลังพยายามค้นหาค่าจากกุญแจ"age
"และ"term_years
"และร้านขายกลับไปที่ฐานข้อมูลของเฟรม"โปรแกรม".
สำหรับทดสอบข้อมูลฐาน dataframe"application
"บรรจุคอลัมน์"age
","term_years
"กับค่า 49 และ 3.8 ด้วยความเคารพนะครับ.
ฐาน dataframe โปรแกรมด้านล่างนี้:
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))
ฉันหวังจะได้กองนี้เป็นผลลัพธ์จาก Dataframe:
age, terms_years, results
49, 3.8, 21.40
โดยทาง,รหัสได้ผลก็ต่อเมื่อฉันผ่านค่าแบบนี้แต่ไม่ใช่ที่ริดรอนคอลัมน์ของโปรแกรม dataframe. แต่ฉันต้องการที่จะจริงๆมองผ่านในคอลัมน์.
application['result'] = hlookup_function(49,3.8)