Spaces:
Sleeping
Sleeping
File size: 907 Bytes
e93c178 | 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 | 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 |