loan-intelligence-v1 / src /predict.py
sahiljadhav1221
Initial commit - Loan Prediction Project
e93c178
raw
history blame contribute delete
907 Bytes
import pandas as pd
import numpy as np
def make_prediction(input_data, model, encoders, target_encoder, feature_columns):
# convert user input into dataframe
df = pd.DataFrame([input_data])
# remove Loan_ID if it exists in feature list
feature_columns = [c for c in feature_columns if c != "Loan_ID"]
# add any missing columns (to match training data)
for col in feature_columns:
if col not in df.columns:
df[col] = 0
# arrange columns in correct order
df = df[feature_columns]
# encode categorical values
for col, le in encoders.items():
df[col] = le.transform(df[col].astype(str))
# make prediction
pred = model.predict(df)
prob = model.predict_proba(df)
# convert numeric result back to Y/N
result = target_encoder.inverse_transform(pred)[0]
confidence = np.max(prob) * 100
return result, confidence