Spaces:
Sleeping
Sleeping
File size: 2,410 Bytes
46075c6 1809391 46075c6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
import gradio as gr
import joblib
import pandas as pd
model = joblib.load("best_random_forest_model.joblib")
def predict_loan_status(
loan_original_amount,
credit_score_range_lower,
stated_monthly_income,
investors,
monthly_loan_payment,
):
input_dict = {
'LoanOriginalAmount': loan_original_amount,
'CreditScoreRangeLower': credit_score_range_lower,
'StatedMonthlyIncome': stated_monthly_income,
'Investors': investors,
'MonthlyLoanPayment': monthly_loan_payment,
}
user_input_df = pd.DataFrame(data=[[loan_original_amount,
credit_score_range_lower,
stated_monthly_income,
investors,
monthly_loan_payment]],
columns=[
'LoanOriginalAmount',
'CreditScoreRangeLower',
'StatedMonthlyIncome',
'Investors',
'MonthlyLoanPayment',
])
scaler = joblib.load('std_scaler.bin')
# Convert the dictionary to a 2D array
input_array = user_input_df.values
# print(user_input_df)
scaled_array = scaler.transform(input_array)
# print('scaled array', scaled_array)
prediction = model.predict(scaled_array)
# print('Prediction: ', prediction)
return prediction[0]
options = ['Current', 'Completed', 'ChargedOff']
inputs = [
gr.Slider(1000, 100000, label="Loan Original Amount"),
gr.Slider(100, 2000, step=1, label='Credit Score Range (Lower)'),
gr.Slider(1000, 100000, step=10, label="Stated Monthly Income"),
gr.Slider(0, 1000, step=1, label='Number of Investors'),
gr.Slider(20, 5000, step=5, label="Monthly Loan Payment")
]
outputs = gr.Label()
title = "Loan Status Classifier"
description = (
"Enter the details of the loan to check the status of the loan."
)
gr.Interface(
fn=predict_loan_status,
inputs=inputs,
outputs=outputs,
title=title,
description=description,
).launch(share=True)
# def greet(name):
# return "Hello " + name + "!!"
#
#
# iface = gr.Interface(fn=greet, inputs="text", outputs="text")
# iface.launch()
|