Pandas ฟังก์ชันค่า hlookup ใน excel

0

คำถาม

นั่นคือ df"creditor_life_rates_tranpose"ซึ่งเป็นการค้นหาโต๊ะ:

enter image description here

ฉันกำลังพยายามค้นหาค่าจากกุญแจ"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

แต่ฉันได้ข้อผิดพลาดคือ: enter image description here

โดยทาง,รหัสได้ผลก็ต่อเมื่อฉันผ่านค่าแบบนี้แต่ไม่ใช่ที่ริดรอนคอลัมน์ของโปรแกรม dataframe. แต่ฉันต้องการที่จะจริงๆมองผ่านในคอลัมน์.

application['result'] = hlookup_function(49,3.8)
dataframe function pandas python
2021-11-24 04:36:22
1

คำตอบที่ดีที่สุด

0

ฟังก์ชันนี้ ตำรวจ.merge_asof performs ปฏิบัติการนี้ฉันกำลังมองหาและมพล่ามคำเชยๆออกมาไม่หยุดเพื่อที่ HLOOKUP ฟังก์ชันใน Excel.

application_data2 = pd.merge_asof(application_data.sort_values(by=['term_years_lookup'],ascending=True)
,creditor_life_rates_tranpose.sort_values(by=['term_years_lookup'],ascending=True), 
on='term_years_lookup',by ='age_lookup')
2021-11-24 13:41:42

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่