Spaces:
Sleeping
Sleeping
| import joblib | |
| import pandas as pd | |
| import numpy as np | |
| def load_model(path): | |
| return joblib.load(path) | |
| def predict_single(model, sample_dict): | |
| """ | |
| sample_dict: dict mapping column name -> value for the input features (do NOT include target) | |
| """ | |
| X = pd.DataFrame([sample_dict]) | |
| proba = None | |
| try: | |
| proba = model.predict_proba(X) | |
| except Exception: | |
| pass | |
| pred = model.predict(X) | |
| return {"prediction": pred[0], "probability": proba.tolist() if proba is not None else None} | |
| if __name__ == "__main__": | |
| # Example usage with Kidney Disease model | |
| model_path_kidney = "/content/models/kidney_model.pkl" # Path to the saved kidney model | |
| model_kidney = load_model(model_path_kidney) | |
| # Sample data for Kidney Disease prediction | |
| # Include all columns from the merged dataset, fill with relevant values or None/np.nan | |
| sample_kidney = { | |
| 'Age': None, | |
| 'Gender': None, | |
| 'Total_Bilirubin': None, | |
| 'Direct_Bilirubin': None, | |
| 'Alkaline_Phosphotase': None, | |
| 'Alamine_Aminotransferase': None, | |
| 'Aspartate_Aminotransferase': None, | |
| 'Total_Protiens': None, | |
| 'Albumin': None, | |
| 'Albumin_and_Globulin_Ratio': None, | |
| 'Dataset': None, # Target column for liver, set to None | |
| 'id': None, # ID column, set to None | |
| 'age': 48.0, # Example kidney feature | |
| 'bp': 80.0, # Example kidney feature | |
| 'sg': 1.020, # Example kidney feature | |
| 'al': 1.0, # Example kidney feature | |
| 'su': 0.0, # Example kidney feature | |
| 'rbc': 'NaN', # Example kidney feature (categorical) | |
| 'pc': 'normal', # Example kidney feature (categorical) | |
| 'pcc': 'notpresent', # Example kidney feature (categorical) | |
| 'ba': 'notpresent', # Example kidney feature (categorical) | |
| 'bgr': 121.0, # Example kidney feature | |
| 'bu': 36.0, # Example kidney feature | |
| 'sc': 1.2, # Example kidney feature | |
| 'sod': np.nan, # Example kidney feature (missing value) | |
| 'pot': np.nan, # Example kidney feature (missing value) | |
| 'hemo': 15.4, # Example kidney feature | |
| 'pcv': 44.0, # Example kidney feature | |
| 'wc': 7800.0, # Example kidney feature | |
| 'rc': 5.2, # Example kidney feature | |
| 'htn': 'yes', # Example kidney feature (categorical) | |
| 'dm': 'yes', # Example kidney feature (categorical) | |
| 'cad': 'no', # Example kidney feature (categorical) | |
| 'appet': 'good', # Example kidney feature (categorical) | |
| 'pe': 'no', # Example kidney feature (categorical) | |
| 'ane': 'no', # Example kidney feature (categorical) | |
| 'classification': None, # Target column for kidney, set to None | |
| 'name': None, # Name column for parkinsons, set to None | |
| "MDVP:Fo(Hz)": None, # Parkinsons feature, set to None | |
| "MDVP:Fhi(Hz)": None, # Parkinsons feature, set to None | |
| "MDVP:Flo(Hz)": None, # Parkinsons feature, set to None | |
| "MDVP:Jitter(%)": None, | |
| "MDVP:Jitter(Abs)": None, | |
| "MDVP:RAP": None, | |
| "MDVP:PPQ": None, | |
| "Jitter:DDP": None, | |
| "MDVP:Shimmer": None, | |
| "MDVP:Shimmer(dB)": None, | |
| "Shimmer:APQ3": None, | |
| "Shimmer:APQ5": None, | |
| "MDVP:APQ": None, | |
| "Shimmer:DDA": None, | |
| "NHR": None, | |
| "HNR": None, | |
| "status": None, # Target column for parkinsons, set to None | |
| "RPDE": None, | |
| "DFA": None, | |
| "spread1": None, | |
| "spread2": None, | |
| "D2": None, | |
| "PPE": None | |
| } | |
| res_kidney = predict_single(model_kidney, sample_kidney) | |
| print("Kidney Disease Prediction:", res_kidney) | |
| # Example usage with Liver Patient model | |
| model_path_liver = "/content/models/liver_model.pkl" | |
| model_liver = load_model(model_path_liver) | |
| # Sample data for Liver Patient prediction | |
| # Include all columns from the merged dataset, fill with relevant values or None/np.nan | |
| sample_liver = { | |
| 'Age': 65.0, # Example liver feature | |
| 'Gender': 'Female', # Example liver feature (categorical) | |
| 'Total_Bilirubin': 0.7, # Example liver feature | |
| 'Direct_Bilirubin': 0.1, # Example liver feature | |
| 'Alkaline_Phosphotase': 187.0, # Example liver feature | |
| 'Alamine_Aminotransferase': 16.0, # Example liver feature | |
| 'Aspartate_Aminotransferase': 18.0, # Example liver feature | |
| 'Total_Protiens': 6.8, # Example liver feature | |
| 'Albumin': 3.3, # Example liver feature | |
| 'Albumin_and_Globulin_Ratio': 0.90, # Example liver feature | |
| 'Dataset': None, # Target column for liver, set to None | |
| 'id': None, # ID column, set to None | |
| 'age': None, # Kidney feature, set to None | |
| 'bp': None, # Kidney feature, set to None | |
| 'sg': None, # Kidney feature, set to None | |
| 'al': None, # Kidney feature, set to None | |
| 'su': None, # Kidney feature, set to None | |
| 'rbc': None, # Kidney feature, set to None | |
| 'pc': None, # Kidney feature, set to None | |
| 'pcc': None, # Kidney feature, set to None | |
| 'ba': None, # Kidney feature, set to None | |
| 'bgr': None, # Kidney feature, set to None | |
| 'bu': None, # Kidney feature, set to None | |
| 'sc': None, # Kidney feature, set to None | |
| 'sod': None, # Kidney feature, set to None | |
| 'pot': None, # Kidney feature, set to None | |
| 'hemo': None, # Kidney feature, set to None | |
| 'pcv': None, # Kidney feature, set to None | |
| 'wc': None, # Kidney feature, set to None | |
| 'rc': None, # Kidney feature, set to None | |
| 'htn': None, # Kidney feature, set to None | |
| 'dm': None, # Kidney feature, set to None | |
| 'cad': None, # Kidney feature, set to None | |
| 'appet': None, # Kidney feature, set to None | |
| 'pe': None, # Kidney feature, set to None | |
| 'ane': None, # Kidney feature, set to None | |
| 'classification': None, # Target column for kidney, set to None | |
| 'name': None, # Name column for parkinsons, set to None | |
| "MDVP:Fo(Hz)": None, # Parkinsons feature, set to None | |
| "MDVP:Fhi(Hz)": None, # Parkinsons feature, set to None | |
| "MDVP:Flo(Hz)": None, # Parkinsons feature, set to None | |
| "MDVP:Jitter(%)": None, | |
| "MDVP:Jitter(Abs)": None, | |
| "MDVP:RAP": None, | |
| "MDVP:PPQ": None, | |
| "Jitter:DDP": None, | |
| "MDVP:Shimmer": None, | |
| "MDVP:Shimmer(dB)": None, | |
| "Shimmer:APQ3": None, | |
| "Shimmer:APQ5": None, | |
| "MDVP:APQ": None, | |
| "Shimmer:DDA": None, | |
| "NHR": None, | |
| "HNR": None, | |
| "status": None, # Target column for parkinsons, set to None | |
| "RPDE": None, | |
| "DFA": None, | |
| "spread1": None, | |
| "spread2": None, | |
| "D2": None, | |
| "PPE": None | |
| } | |
| res_liver = predict_single(model_liver, sample_liver) | |
| print("Liver Patient Prediction:", res_liver) | |