Spaces:
Sleeping
Sleeping
| 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() | |