{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.14","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"none","dataSources":[{"sourceId":81933,"databundleVersionId":9643020,"sourceType":"competition"}],"dockerImageVersionId":30786,"isInternetEnabled":true,"language":"python","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))\n","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2024-10-11T09:21:56.837402Z","iopub.execute_input":"2024-10-11T09:21:56.83796Z","iopub.status.idle":"2024-10-11T09:21:57.961979Z","shell.execute_reply.started":"2024-10-11T09:21:56.837913Z","shell.execute_reply":"2024-10-11T09:21:57.960607Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Importing Libraries","metadata":{}},{"cell_type":"code","source":"import numpy as np\nimport pandas as pd \nimport seaborn as sns\nimport matplotlib.pyplot as plt\nfrom scipy import stats\nfrom sklearn.preprocessing import OrdinalEncoder, StandardScaler\nfrom statsmodels.stats.outliers_influence import variance_inflation_factor\nfrom sklearn.decomposition import PCA\nfrom sklearn.feature_selection import f_classif\nfrom sklearn.metrics import accuracy_score, classification_report\nfrom sklearn.model_selection import GridSearchCV, train_test_split\nfrom sklearn.impute import KNNImputer\nfrom sklearn.experimental import enable_iterative_imputer\nfrom sklearn.impute import IterativeImputer\nfrom sklearn.cluster import KMeans\nfrom sklearn.tree import DecisionTreeClassifier\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.ensemble import RandomForestClassifier, AdaBoostClassifier, GradientBoostingClassifier\nfrom sklearn.svm import SVC\nfrom xgboost import XGBClassifier","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:57.964889Z","iopub.execute_input":"2024-10-11T09:21:57.966211Z","iopub.status.idle":"2024-10-11T09:21:57.977403Z","shell.execute_reply.started":"2024-10-11T09:21:57.966136Z","shell.execute_reply":"2024-10-11T09:21:57.975723Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Importing Data","metadata":{}},{"cell_type":"code","source":"df = pd.read_csv('/kaggle/input/child-mind-institute-problematic-internet-use/train.csv')\ndf","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:57.979291Z","iopub.execute_input":"2024-10-11T09:21:57.979864Z","iopub.status.idle":"2024-10-11T09:21:58.075083Z","shell.execute_reply.started":"2024-10-11T09:21:57.979802Z","shell.execute_reply":"2024-10-11T09:21:58.073338Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.info()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.079159Z","iopub.execute_input":"2024-10-11T09:21:58.079744Z","iopub.status.idle":"2024-10-11T09:21:58.107522Z","shell.execute_reply.started":"2024-10-11T09:21:58.079684Z","shell.execute_reply":"2024-10-11T09:21:58.105913Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df['sii'].isna().sum() / len(df)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.109398Z","iopub.execute_input":"2024-10-11T09:21:58.10984Z","iopub.status.idle":"2024-10-11T09:21:58.123754Z","shell.execute_reply.started":"2024-10-11T09:21:58.109794Z","shell.execute_reply":"2024-10-11T09:21:58.121969Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df = df.drop(columns='id')","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.125745Z","iopub.execute_input":"2024-10-11T09:21:58.126224Z","iopub.status.idle":"2024-10-11T09:21:58.140295Z","shell.execute_reply.started":"2024-10-11T09:21:58.126176Z","shell.execute_reply":"2024-10-11T09:21:58.138997Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.duplicated().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.142066Z","iopub.execute_input":"2024-10-11T09:21:58.142554Z","iopub.status.idle":"2024-10-11T09:21:58.183627Z","shell.execute_reply.started":"2024-10-11T09:21:58.142508Z","shell.execute_reply":"2024-10-11T09:21:58.182443Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df = df.drop_duplicates()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.185113Z","iopub.execute_input":"2024-10-11T09:21:58.186292Z","iopub.status.idle":"2024-10-11T09:21:58.220304Z","shell.execute_reply.started":"2024-10-11T09:21:58.186205Z","shell.execute_reply":"2024-10-11T09:21:58.218879Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df.duplicated().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.222827Z","iopub.execute_input":"2024-10-11T09:21:58.22351Z","iopub.status.idle":"2024-10-11T09:21:58.260353Z","shell.execute_reply.started":"2024-10-11T09:21:58.22344Z","shell.execute_reply":"2024-10-11T09:21:58.259015Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2024-10-11T09:21:58.266452Z","iopub.execute_input":"2024-10-11T09:21:58.266917Z","iopub.status.idle":"2024-10-11T09:21:58.317626Z","shell.execute_reply.started":"2024-10-11T09:21:58.266873Z","shell.execute_reply":"2024-10-11T09:21:58.316154Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"df = df.dropna(subset=['sii'])\ndf","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2024-10-11T09:21:58.319538Z","iopub.execute_input":"2024-10-11T09:21:58.320068Z","iopub.status.idle":"2024-10-11T09:21:58.375121Z","shell.execute_reply.started":"2024-10-11T09:21:58.320006Z","shell.execute_reply":"2024-10-11T09:21:58.373616Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"Y = df['sii']\nX = df.drop(columns='sii')","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.377365Z","iopub.execute_input":"2024-10-11T09:21:58.37794Z","iopub.status.idle":"2024-10-11T09:21:58.387084Z","shell.execute_reply.started":"2024-10-11T09:21:58.37788Z","shell.execute_reply":"2024-10-11T09:21:58.385534Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.3, shuffle=True, random_state=10)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.388831Z","iopub.execute_input":"2024-10-11T09:21:58.389352Z","iopub.status.idle":"2024-10-11T09:21:58.409632Z","shell.execute_reply.started":"2024-10-11T09:21:58.389294Z","shell.execute_reply":"2024-10-11T09:21:58.40812Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"cate_columns = [\n    # Categorical Integer Columns\n    \"Basic_Demos-Sex\",                     # 0=Male, 1=Female\n    \"FGC-FGC_CU_Zone\",                     # 0=Needs Improvement, 1=Healthy Fitness Zone\n    \"FGC-FGC_GSND_Zone\",                   # 1=Weak, 2=Normal, 3=Strong\n    \"FGC-FGC_GSD_Zone\",                    # 1=Weak, 2=Normal, 3=Strong\n    \"FGC-FGC_PU_Zone\",                     # 0=Needs Improvement, 1=Healthy Fitness Zone\n    \"FGC-FGC_SRL_Zone\",                    # 0=Needs Improvement, 1=Healthy Fitness Zone\n    \"FGC-FGC_SRR_Zone\",                    # 0=Needs Improvement, 1=Healthy Fitness Zone\n    \"FGC-FGC_TL_Zone\",                     # 0=Needs Improvement, 1=Healthy Fitness Zone\n    \"BIA-BIA_Activity_Level_num\",           # 1=Very Light, 2=Light, 3=Moderate, 4=Heavy, 5=Exceptional\n    \"BIA-BIA_Frame_num\",                   # 1=Small, 2=Medium, 3=Large\n    \"PCIAT-PCIAT_01\",                      # 0-5 scale\n    \"PCIAT-PCIAT_02\",                      # 0-5 scale\n    \"PCIAT-PCIAT_03\",                      # 0-5 scale\n    \"PCIAT-PCIAT_04\",                      # 0-5 scale\n    \"PCIAT-PCIAT_05\",                      # 0-5 scale\n    \"PCIAT-PCIAT_06\",                      # 0-5 scale\n    \"PCIAT-PCIAT_07\",                      # 0-5 scale\n    \"PCIAT-PCIAT_08\",                      # 0-5 scale\n    \"PCIAT-PCIAT_09\",                      # 0-5 scale\n    \"PCIAT-PCIAT_10\",                      # 0-5 scale\n    \"PCIAT-PCIAT_11\",                      # 0-5 scale\n    \"PCIAT-PCIAT_12\",                      # 0-5 scale\n    \"PCIAT-PCIAT_13\",                      # 0-5 scale\n    \"PCIAT-PCIAT_14\",                      # 0-5 scale\n    \"PCIAT-PCIAT_15\",                      # 0-5 scale\n    \"PCIAT-PCIAT_16\",                      # 0-5 scale\n    \"PCIAT-PCIAT_17\",                      # 0-5 scale\n    \"PCIAT-PCIAT_18\",                      # 0-5 scale\n    \"PCIAT-PCIAT_19\",                      # 0-5 scale\n    \"PCIAT-PCIAT_20\",                      # 0-5 scale,\n\n    # String Columns\n    \"Basic_Demos-Enroll_Season\",           # Spring, Summer, Fall, Winter\n    \"CGAS-Season\",                         # Spring, Summer, Fall, Winter\n    \"Physical-Season\",                     # Spring, Summer, Fall, Winter\n    \"Fitness_Endurance-Season\",            # Spring, Summer, Fall, Winter\n    \"FGC-Season\",                          # Spring, Summer, Fall, Winter\n    \"BIA-Season\",                          # Spring, Summer, Fall, Winter\n    \"PAQ_A-Season\",                        # Spring, Summer, Fall, Winter\n    \"PAQ_C-Season\",                        # Spring, Summer, Fall, Winter\n    \"PCIAT-Season\",                        # Spring, Summer, Fall, Winter\n    \"SDS-Season\",                          # Spring, Summer, Fall, Winter\n    \"PreInt_EduHx-Season\"                  # Spring, Summer, Fall, Winter\n]","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.412017Z","iopub.execute_input":"2024-10-11T09:21:58.412618Z","iopub.status.idle":"2024-10-11T09:21:58.426156Z","shell.execute_reply.started":"2024-10-11T09:21:58.412567Z","shell.execute_reply":"2024-10-11T09:21:58.424003Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"numerical_columns = [\n    \"Basic_Demos-Age\",                        # float\n    \"CGAS-CGAS_Score\",                        # int\n    \"Physical-BMI\",                           # float\n    \"Physical-Height\",                        # float\n    \"Physical-Weight\",                        # float\n    \"Physical-Waist_Circumference\",         # int\n    \"Physical-Diastolic_BP\",                 # int\n    \"Physical-HeartRate\",                    # int\n    \"Physical-Systolic_BP\",                  # int\n    \"Fitness_Endurance-Max_Stage\",           # int\n    \"Fitness_Endurance-Time_Mins\",           # int\n    \"Fitness_Endurance-Time_Sec\",            # int\n    \"FGC-FGC_CU\",                            # int\n    \"FGC-FGC_GSND\",                          # float\n    \"FGC-FGC_GSD\",                           # float\n    \"FGC-FGC_PU\",                            # int\n    \"FGC-FGC_SRL\",                           # float\n    \"FGC-FGC_SRR\",                           # float\n    \"FGC-FGC_TL\",                            # int\n    \"BIA-BIA_BMC\",                           # float\n    \"BIA-BIA_BMI\",                           # float\n    \"BIA-BIA_BMR\",                           # float\n    \"BIA-BIA_DEE\",                           # float\n    \"BIA-BIA_ECW\",                           # float\n    \"BIA-BIA_FFM\",                           # float\n    \"BIA-BIA_FFMI\",                          # float\n    \"BIA-BIA_FMI\",                           # float\n    \"BIA-BIA_Fat\",                           # float\n    \"BIA-BIA_ICW\",                           # float\n    \"BIA-BIA_LDM\",                           # float\n    \"BIA-BIA_LST\",                           # float\n    \"BIA-BIA_SMM\",                           # float\n    \"BIA-BIA_TBW\",                           # float\n    \"PAQ_A-PAQ_A_Total\",                     # float\n    \"PAQ_C-PAQ_C_Total\",                     # float\n    \"SDS-SDS_Total_Raw\",                     # int\n    \"SDS-SDS_Total_T\"                        # int\n]","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.428347Z","iopub.execute_input":"2024-10-11T09:21:58.428861Z","iopub.status.idle":"2024-10-11T09:21:58.446356Z","shell.execute_reply.started":"2024-10-11T09:21:58.428802Z","shell.execute_reply":"2024-10-11T09:21:58.444735Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"a = X_train.isna().sum() / len(X_train)\nb = a[a>0.45]\nb","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.44815Z","iopub.execute_input":"2024-10-11T09:21:58.448634Z","iopub.status.idle":"2024-10-11T09:21:58.472946Z","shell.execute_reply.started":"2024-10-11T09:21:58.448588Z","shell.execute_reply":"2024-10-11T09:21:58.47144Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.474723Z","iopub.execute_input":"2024-10-11T09:21:58.475137Z","iopub.status.idle":"2024-10-11T09:21:58.526509Z","shell.execute_reply.started":"2024-10-11T09:21:58.475094Z","shell.execute_reply":"2024-10-11T09:21:58.524973Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train = X_train.drop(columns=b.index)\nX_train","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.528067Z","iopub.execute_input":"2024-10-11T09:21:58.528512Z","iopub.status.idle":"2024-10-11T09:21:58.575047Z","shell.execute_reply.started":"2024-10-11T09:21:58.528467Z","shell.execute_reply":"2024-10-11T09:21:58.573768Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Encoding","metadata":{}},{"cell_type":"code","source":"# encoder = OrdinalEncoder(handle_unknown='use_encoded_value', unknown_value=-1)\n# X_train[categorical_columns] = encoder.fit_transform(X_train[categorical_columns].astype(str))\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.576308Z","iopub.execute_input":"2024-10-11T09:21:58.576712Z","iopub.status.idle":"2024-10-11T09:21:58.582563Z","shell.execute_reply.started":"2024-10-11T09:21:58.576671Z","shell.execute_reply":"2024-10-11T09:21:58.580928Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"encoding_columns = []\n\nfor i in X_train.columns:\n    if not pd.api.types.is_numeric_dtype(X_train[i]):\n        print(i, X_train[i].unique())\n        encoding_columns.append(i)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.584317Z","iopub.execute_input":"2024-10-11T09:21:58.585451Z","iopub.status.idle":"2024-10-11T09:21:58.605772Z","shell.execute_reply.started":"2024-10-11T09:21:58.585401Z","shell.execute_reply":"2024-10-11T09:21:58.603649Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"season_mapping = {'Winter': 0, 'Spring': 1, 'Summer': 2, 'Fall': 3}\nfor col in encoding_columns:\n    X_train[col] = X_train[col].map(season_mapping)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.607941Z","iopub.execute_input":"2024-10-11T09:21:58.611874Z","iopub.status.idle":"2024-10-11T09:21:58.636079Z","shell.execute_reply.started":"2024-10-11T09:21:58.611776Z","shell.execute_reply":"2024-10-11T09:21:58.634481Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"categorical_columns = [i for i in cate_columns if i in X_train.columns]\ncategorical_columns.append('sii')\nnumerical_columns = [i for i in X_train.columns if i not in categorical_columns]\n\nprint(numerical_columns)\ncategorical_columns","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.638197Z","iopub.execute_input":"2024-10-11T09:21:58.638706Z","iopub.status.idle":"2024-10-11T09:21:58.661868Z","shell.execute_reply.started":"2024-10-11T09:21:58.638658Z","shell.execute_reply":"2024-10-11T09:21:58.660109Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Filling Nulls","metadata":{}},{"cell_type":"code","source":"imputer = KNNImputer(n_neighbors=5)\nX_train_array = imputer.fit_transform(X_train[numerical_columns])\nX_train_numerical = pd.DataFrame(X_train_array, columns=numerical_columns)\nX_train = X_train.drop(columns = numerical_columns)\nX_train = pd.concat([X_train.reset_index(drop=True), X_train_numerical.reset_index(drop=True)], axis=1)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:58.664469Z","iopub.execute_input":"2024-10-11T09:21:58.665512Z","iopub.status.idle":"2024-10-11T09:21:59.47647Z","shell.execute_reply.started":"2024-10-11T09:21:58.665462Z","shell.execute_reply":"2024-10-11T09:21:59.474778Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train[numerical_columns]","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:59.478326Z","iopub.execute_input":"2024-10-11T09:21:59.478772Z","iopub.status.idle":"2024-10-11T09:21:59.529847Z","shell.execute_reply.started":"2024-10-11T09:21:59.478719Z","shell.execute_reply":"2024-10-11T09:21:59.528233Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train[numerical_columns].isna().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:59.532083Z","iopub.execute_input":"2024-10-11T09:21:59.532636Z","iopub.status.idle":"2024-10-11T09:21:59.54859Z","shell.execute_reply.started":"2024-10-11T09:21:59.532583Z","shell.execute_reply":"2024-10-11T09:21:59.546718Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df = pd.concat([X_train.reset_index(drop=True), Y_train.reset_index(drop=True)], axis=1)\ntrain_df","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:59.55096Z","iopub.execute_input":"2024-10-11T09:21:59.551488Z","iopub.status.idle":"2024-10-11T09:21:59.604624Z","shell.execute_reply.started":"2024-10-11T09:21:59.551438Z","shell.execute_reply":"2024-10-11T09:21:59.603203Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df[categorical_columns]","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:59.606536Z","iopub.execute_input":"2024-10-11T09:21:59.60693Z","iopub.status.idle":"2024-10-11T09:21:59.660391Z","shell.execute_reply.started":"2024-10-11T09:21:59.60689Z","shell.execute_reply":"2024-10-11T09:21:59.658773Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df['sii'].value_counts()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:59.669879Z","iopub.execute_input":"2024-10-11T09:21:59.670324Z","iopub.status.idle":"2024-10-11T09:21:59.683228Z","shell.execute_reply.started":"2024-10-11T09:21:59.67028Z","shell.execute_reply":"2024-10-11T09:21:59.681672Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"mice_imputer = IterativeImputer(max_iter=60, tol=1e-2, random_state=0, estimator=DecisionTreeClassifier())\n\ntrain_df[categorical_columns] = mice_imputer.fit_transform(train_df[categorical_columns])\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:21:59.684889Z","iopub.execute_input":"2024-10-11T09:21:59.685383Z","iopub.status.idle":"2024-10-11T09:22:32.396896Z","shell.execute_reply.started":"2024-10-11T09:21:59.685331Z","shell.execute_reply":"2024-10-11T09:22:32.395405Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df.duplicated().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.398862Z","iopub.execute_input":"2024-10-11T09:22:32.399382Z","iopub.status.idle":"2024-10-11T09:22:32.424848Z","shell.execute_reply.started":"2024-10-11T09:22:32.399325Z","shell.execute_reply":"2024-10-11T09:22:32.423341Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"train_df = train_df.drop_duplicates()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.426495Z","iopub.execute_input":"2024-10-11T09:22:32.426958Z","iopub.status.idle":"2024-10-11T09:22:32.448973Z","shell.execute_reply.started":"2024-10-11T09:22:32.426914Z","shell.execute_reply":"2024-10-11T09:22:32.44769Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"Y_train.isna().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.450628Z","iopub.execute_input":"2024-10-11T09:22:32.451006Z","iopub.status.idle":"2024-10-11T09:22:32.460536Z","shell.execute_reply.started":"2024-10-11T09:22:32.450967Z","shell.execute_reply":"2024-10-11T09:22:32.459067Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"Y_train = train_df['sii']\nX_train = train_df.drop(columns='sii')","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2024-10-11T09:22:32.46253Z","iopub.execute_input":"2024-10-11T09:22:32.463018Z","iopub.status.idle":"2024-10-11T09:22:32.472933Z","shell.execute_reply.started":"2024-10-11T09:22:32.462972Z","shell.execute_reply":"2024-10-11T09:22:32.471356Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"a = X_train.isna().sum()\na[a>0]","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.474712Z","iopub.execute_input":"2024-10-11T09:22:32.475102Z","iopub.status.idle":"2024-10-11T09:22:32.495727Z","shell.execute_reply.started":"2024-10-11T09:22:32.475061Z","shell.execute_reply":"2024-10-11T09:22:32.494326Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# imputer1 = IterativeImputer()\n# X_train = imputer1.fit_transform(df)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.497362Z","iopub.execute_input":"2024-10-11T09:22:32.497829Z","iopub.status.idle":"2024-10-11T09:22:32.504033Z","shell.execute_reply.started":"2024-10-11T09:22:32.497776Z","shell.execute_reply":"2024-10-11T09:22:32.502327Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Feature Engineering","metadata":{"execution":{"iopub.status.busy":"2024-10-10T05:19:47.136651Z","iopub.execute_input":"2024-10-10T05:19:47.137734Z","iopub.status.idle":"2024-10-10T05:19:47.142605Z","shell.execute_reply.started":"2024-10-10T05:19:47.137687Z","shell.execute_reply":"2024-10-10T05:19:47.141394Z"}}},{"cell_type":"code","source":"X_train.columns","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.505763Z","iopub.execute_input":"2024-10-11T09:22:32.506147Z","iopub.status.idle":"2024-10-11T09:22:32.522796Z","shell.execute_reply.started":"2024-10-11T09:22:32.506106Z","shell.execute_reply":"2024-10-11T09:22:32.521026Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train['Basic_Demos-Enroll_Season_sin'] = np.sin(2 * np.pi * X_train['Basic_Demos-Enroll_Season'] / 4)\nX_train['Basic_Demos-Enroll_Season_cos'] = np.cos(2 * np.pi * X_train['Basic_Demos-Enroll_Season'] / 4)\n\nX_train['CGAS-Season_sin'] = np.sin(2 * np.pi * X_train['CGAS-Season'] / 4)\nX_train['CGAS-Season_cos'] = np.cos(2 * np.pi * X_train['CGAS-Season'] / 4)\n\nX_train['Physical-Season_sin'] = np.sin(2 * np.pi * X_train['Physical-Season'] / 4)\nX_train['Physical-Season_cos'] = np.cos(2 * np.pi * X_train['Physical-Season'] / 4)\n\nX_train['FGC-Season_sin'] = np.sin(2 * np.pi * X_train['FGC-Season'] / 4)\nX_train['FGC-Season_cos'] = np.cos(2 * np.pi * X_train['FGC-Season'] / 4)\n\nX_train['PCIAT-Season_sin'] = np.sin(2 * np.pi * X_train['PCIAT-Season'] / 4)\nX_train['PCIAT-Season_cos'] = np.cos(2 * np.pi * X_train['PCIAT-Season'] / 4)\n\nX_train['SDS-Season_sin'] = np.sin(2 * np.pi * X_train['SDS-Season'] / 4)\nX_train['SDS-Season_cos'] = np.cos(2 * np.pi * X_train['SDS-Season'] / 4)\n\nX_train['PreInt_EduHx-Season_sin'] = np.sin(2 * np.pi * X_train['PreInt_EduHx-Season'] / 4)\nX_train['PreInt_EduHx-Season_cos'] = np.cos(2 * np.pi * X_train['PreInt_EduHx-Season'] / 4)\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.524656Z","iopub.execute_input":"2024-10-11T09:22:32.525097Z","iopub.status.idle":"2024-10-11T09:22:32.555772Z","shell.execute_reply.started":"2024-10-11T09:22:32.525054Z","shell.execute_reply":"2024-10-11T09:22:32.554386Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"#X_train['BodyStrength&Flexibility'] = X_train['FGC-FGC_CU'] + X_train['FGC-FGC_PU'] + X_train['FGC-FGC_SRL'] + X_train['FGC-FGC_SRR'] + X_train['FGC-FGC_TL']\nX_train['BodyStrength&Flexibility_class'] = X_train['FGC-FGC_CU_Zone'] + X_train['FGC-FGC_PU_Zone'] + X_train['FGC-FGC_SRL_Zone'] + X_train['FGC-FGC_SRR_Zone'] + X_train['FGC-FGC_TL_Zone']","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.557382Z","iopub.execute_input":"2024-10-11T09:22:32.557766Z","iopub.status.idle":"2024-10-11T09:22:32.566794Z","shell.execute_reply.started":"2024-10-11T09:22:32.557725Z","shell.execute_reply":"2024-10-11T09:22:32.565224Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"bins = [0, 12, 18, 25, 40, 60, 100]\n# labels = ['Child', 'Adolescent', 'Young_Adult', 'Adult', 'Middle_Aged', 'Senior']\nlabels = [0, 1, 2, 3, 4, 5]\nX_train['Age_Group'] = pd.cut(X_train['Basic_Demos-Age'], bins=bins, labels=labels)\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.569096Z","iopub.execute_input":"2024-10-11T09:22:32.569676Z","iopub.status.idle":"2024-10-11T09:22:32.585353Z","shell.execute_reply.started":"2024-10-11T09:22:32.569627Z","shell.execute_reply":"2024-10-11T09:22:32.58402Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def categorize_bmi(bmi):\n    if bmi <= 18.5:\n        return 0\n    elif bmi <= 24.9:\n        return 1\n    elif bmi <= 29.9:\n        return 2\n    elif bmi <= 40:\n        return 3\n    else:\n        return 4  \n\nX_train['BMI_Category'] = X_train['Physical-BMI'].apply(categorize_bmi)\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.587003Z","iopub.execute_input":"2024-10-11T09:22:32.58837Z","iopub.status.idle":"2024-10-11T09:22:32.604336Z","shell.execute_reply.started":"2024-10-11T09:22:32.588303Z","shell.execute_reply":"2024-10-11T09:22:32.602781Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# def categorize_bp(systolic, diastolic):\n#     if systolic < 120 and diastolic < 80:\n#         return 'Normal'\n#     elif 120 <= systolic < 130 and diastolic < 80:\n#         return 'Elevated'\n#     elif 130 <= systolic < 140 or 80 <= diastolic < 90:\n#         return 'Hypertension_Stage_1'\n#     else:\n#         return 'Hypertension_Stage_2'\n    \ndef categorize_bp(systolic, diastolic):\n    if systolic < 120 and diastolic < 80:\n        return 0\n    elif 120 <= systolic < 130 and diastolic < 80:\n        return 1\n    elif 130 <= systolic < 140 or 80 <= diastolic < 90:\n        return 2\n    else:\n        return 3 \n\nX_train['BP_Category'] = X_train.apply(lambda row: categorize_bp(row['Physical-Systolic_BP'], row['Physical-Diastolic_BP']), axis=1)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.606272Z","iopub.execute_input":"2024-10-11T09:22:32.606679Z","iopub.status.idle":"2024-10-11T09:22:32.664313Z","shell.execute_reply.started":"2024-10-11T09:22:32.606637Z","shell.execute_reply":"2024-10-11T09:22:32.662788Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"pciat_columns = [f'PCIAT-PCIAT_{i:02d}' for i in range(1, 21)]\nX_train['PCIAT_Time_Management'] = X_train[pciat_columns[:5]].mean(axis=1)\nX_train['PCIAT_Withdrawal_Symptoms'] = X_train[pciat_columns[5:10]].mean(axis=1)\nX_train['PCIAT_Neglect_Social_Life'] = X_train[pciat_columns[10:15]].mean(axis=1)\nX_train['PCIAT_Lack_Control'] = X_train[pciat_columns[15:]].mean(axis=1)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.666185Z","iopub.execute_input":"2024-10-11T09:22:32.666786Z","iopub.status.idle":"2024-10-11T09:22:32.693918Z","shell.execute_reply.started":"2024-10-11T09:22:32.666715Z","shell.execute_reply":"2024-10-11T09:22:32.692372Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train['PCIAT_mean'] = X_train[pciat_columns].mean(axis=1)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.695778Z","iopub.execute_input":"2024-10-11T09:22:32.69621Z","iopub.status.idle":"2024-10-11T09:22:32.707889Z","shell.execute_reply.started":"2024-10-11T09:22:32.696165Z","shell.execute_reply":"2024-10-11T09:22:32.706214Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# def categorize_pciat(score):\n#     if score <= 20:\n#         return 'None'\n#     elif score <= 49:\n#         return 'Mild'\n#     elif score <= 79:\n#         return 'Moderate'\n#     else:\n#         return 'Severe'\n\ndef categorize_pciat(score):\n    if score <= 20:\n        return 0\n    elif score <= 49:\n        return 1\n    elif score <= 79:\n        return 2\n    else:\n        return 3\n    \nX_train['PCIAT_Category'] = X_train['PCIAT-PCIAT_Total'].apply(categorize_pciat)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.70999Z","iopub.execute_input":"2024-10-11T09:22:32.710615Z","iopub.status.idle":"2024-10-11T09:22:32.72411Z","shell.execute_reply.started":"2024-10-11T09:22:32.71055Z","shell.execute_reply":"2024-10-11T09:22:32.722526Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"def categorize_sds(score):\n    if pd.isna(score) or score < 0:\n        return np.nan\n    elif score <= 20:\n        return 0\n    elif score <= 40:\n        return 1\n    elif score <= 60:\n        return 2\n    elif score <= 80:\n        return 3\n    else:\n        return 4  \n\nX_train['SDS_Severity'] = X_train['SDS-SDS_Total_Raw'].apply(categorize_sds)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.726188Z","iopub.execute_input":"2024-10-11T09:22:32.727155Z","iopub.status.idle":"2024-10-11T09:22:32.741347Z","shell.execute_reply.started":"2024-10-11T09:22:32.727085Z","shell.execute_reply":"2024-10-11T09:22:32.739807Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train['BMI_Age_Interaction'] = X_train['Physical-BMI'] * X_train['Basic_Demos-Age']\nX_train['HeartRate_BPCategory_Interaction'] = X_train['BP_Category'] * X_train['Basic_Demos-Age']","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.742993Z","iopub.execute_input":"2024-10-11T09:22:32.743544Z","iopub.status.idle":"2024-10-11T09:22:32.761973Z","shell.execute_reply.started":"2024-10-11T09:22:32.743456Z","shell.execute_reply":"2024-10-11T09:22:32.760458Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train['Sleep_Quality_Index'] = (X_train['SDS-SDS_Total_T'] - X_train['SDS-SDS_Total_T'].min()) / (X_train['SDS-SDS_Total_T'].max() - X_train['SDS-SDS_Total_T'].min())\nX_train['Physical_Health_Index'] = ((X_train['Physical-BMI'] - X_train['Physical-BMI'].mean()) / X_train['Physical-BMI'].std() + (X_train['Physical-Systolic_BP'] - X_train['Physical-Systolic_BP'].mean()) / X_train['Physical-Systolic_BP'].std() + (X_train['Physical-HeartRate'] - X_train['Physical-HeartRate'].mean()) / X_train['Physical-HeartRate'].std()) / 3","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.76386Z","iopub.execute_input":"2024-10-11T09:22:32.76445Z","iopub.status.idle":"2024-10-11T09:22:32.780606Z","shell.execute_reply.started":"2024-10-11T09:22:32.764385Z","shell.execute_reply":"2024-10-11T09:22:32.778912Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"fgc_columns = ['FGC-FGC_CU', 'FGC-FGC_PU', 'FGC-FGC_SRL', 'FGC-FGC_SRR', 'FGC-FGC_TL']\n\nX_train['Overall_Fitness_Score'] = X_train[fgc_columns].mean(axis=1)\nX_train['Internet_Usage_Score'] = X_train['PCIAT-PCIAT_Total'] / 100\nX_train['Physical_Activity_Score'] = X_train['Overall_Fitness_Score'] / X_train['Overall_Fitness_Score'].max()\nX_train['Lifestyle_Score'] = ((1 - X_train['Internet_Usage_Score']) +  X_train['Physical_Activity_Score'] + (1 - X_train['Sleep_Quality_Index'])) / 3","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.78309Z","iopub.execute_input":"2024-10-11T09:22:32.783672Z","iopub.status.idle":"2024-10-11T09:22:32.803225Z","shell.execute_reply.started":"2024-10-11T09:22:32.783624Z","shell.execute_reply":"2024-10-11T09:22:32.802003Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train = X_train.drop(columns=['SDS-SDS_Total_T', 'SDS-SDS_Total_Raw', 'PCIAT-PCIAT_Total', 'Physical-Height', 'Physical-Weight', 'FGC-FGC_CU', 'FGC-FGC_PU', 'FGC-FGC_SRL', 'FGC-FGC_SRR', 'FGC-FGC_TL', 'FGC-FGC_CU_Zone', 'FGC-FGC_PU_Zone', 'FGC-FGC_SRR_Zone', 'FGC-FGC_SRL_Zone', 'FGC-FGC_TL_Zone', 'PCIAT-PCIAT_01', 'PCIAT-PCIAT_02', 'PCIAT-PCIAT_03', 'PCIAT-PCIAT_04', 'PCIAT-PCIAT_05', 'PCIAT-PCIAT_06', 'PCIAT-PCIAT_07', 'PCIAT-PCIAT_08', 'PCIAT-PCIAT_09', 'PCIAT-PCIAT_10', 'PCIAT-PCIAT_11', 'PCIAT-PCIAT_12', 'PCIAT-PCIAT_13', 'PCIAT-PCIAT_14', 'PCIAT-PCIAT_15', 'PCIAT-PCIAT_16', 'PCIAT-PCIAT_17', 'PCIAT-PCIAT_18', 'PCIAT-PCIAT_19', 'PCIAT-PCIAT_20'])\nX_train = X_train.drop(columns=encoding_columns)\nX_train.columns","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.805717Z","iopub.execute_input":"2024-10-11T09:22:32.806155Z","iopub.status.idle":"2024-10-11T09:22:32.827829Z","shell.execute_reply.started":"2024-10-11T09:22:32.806111Z","shell.execute_reply":"2024-10-11T09:22:32.826591Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.830177Z","iopub.execute_input":"2024-10-11T09:22:32.831397Z","iopub.status.idle":"2024-10-11T09:22:32.877044Z","shell.execute_reply.started":"2024-10-11T09:22:32.831311Z","shell.execute_reply":"2024-10-11T09:22:32.875655Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Log Scaling","metadata":{}},{"cell_type":"code","source":"for i in X_train.columns:\n    if not pd.api.types.is_numeric_dtype(X_train[i]):\n        print(i, X_train[i].unique())\n        ","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.8785Z","iopub.execute_input":"2024-10-11T09:22:32.878865Z","iopub.status.idle":"2024-10-11T09:22:32.89144Z","shell.execute_reply.started":"2024-10-11T09:22:32.878825Z","shell.execute_reply":"2024-10-11T09:22:32.889511Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train['Age_Group'].head()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.893748Z","iopub.execute_input":"2024-10-11T09:22:32.894346Z","iopub.status.idle":"2024-10-11T09:22:32.910215Z","shell.execute_reply.started":"2024-10-11T09:22:32.894275Z","shell.execute_reply":"2024-10-11T09:22:32.908482Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train.isna().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.912354Z","iopub.execute_input":"2024-10-11T09:22:32.912838Z","iopub.status.idle":"2024-10-11T09:22:32.930005Z","shell.execute_reply.started":"2024-10-11T09:22:32.912788Z","shell.execute_reply":"2024-10-11T09:22:32.928388Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"numerical_cols = [i for i in numerical_columns if i in X_train.columns]\nnumerical_cols","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.932208Z","iopub.execute_input":"2024-10-11T09:22:32.933277Z","iopub.status.idle":"2024-10-11T09:22:32.944802Z","shell.execute_reply.started":"2024-10-11T09:22:32.933166Z","shell.execute_reply":"2024-10-11T09:22:32.943227Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train[numerical_cols] = X_train[numerical_cols] + 1\nX_train[numerical_cols] = X_train[numerical_cols].apply(np.log)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.946727Z","iopub.execute_input":"2024-10-11T09:22:32.947341Z","iopub.status.idle":"2024-10-11T09:22:32.967216Z","shell.execute_reply.started":"2024-10-11T09:22:32.94728Z","shell.execute_reply":"2024-10-11T09:22:32.965789Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Feature Selection","metadata":{}},{"cell_type":"code","source":"plt.figure(figsize=(35, 20))\ncorr = pd.concat([X_train.reset_index(drop=True), Y_train.reset_index(drop=True)], axis=1).corr()\nsns.heatmap(corr, annot=True, cmap='coolwarm')\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:32.969453Z","iopub.execute_input":"2024-10-11T09:22:32.969925Z","iopub.status.idle":"2024-10-11T09:22:41.831138Z","shell.execute_reply.started":"2024-10-11T09:22:32.969879Z","shell.execute_reply":"2024-10-11T09:22:41.82887Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train = X_train.drop(columns=['PCIAT_Time_Management', 'Basic_Demos-Enroll_Season_sin', 'Basic_Demos-Enroll_Season_cos', 'PCIAT_Withdrawal_Symptoms', 'PCIAT_Neglect_Social_Life', 'PCIAT_Lack_Control', 'BP_Category', 'Basic_Demos-Age', 'Physical-BMI'])","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:41.833084Z","iopub.execute_input":"2024-10-11T09:22:41.83352Z","iopub.status.idle":"2024-10-11T09:22:41.845205Z","shell.execute_reply.started":"2024-10-11T09:22:41.833474Z","shell.execute_reply":"2024-10-11T09:22:41.843475Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"plt.figure(figsize=(35, 20))\ncorr = pd.concat([X_train.reset_index(drop=True), Y_train.reset_index(drop=True)], axis=1).corr()\nsns.heatmap(corr, annot=True, cmap='coolwarm')\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:41.847138Z","iopub.execute_input":"2024-10-11T09:22:41.847668Z","iopub.status.idle":"2024-10-11T09:22:48.684795Z","shell.execute_reply.started":"2024-10-11T09:22:41.847617Z","shell.execute_reply":"2024-10-11T09:22:48.682019Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# X_test","metadata":{}},{"cell_type":"markdown","source":"# X_test Encoding","metadata":{}},{"cell_type":"code","source":"for col in encoding_columns:\n    X_test[col] = X_test[col].map(season_mapping)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:48.686647Z","iopub.execute_input":"2024-10-11T09:22:48.687466Z","iopub.status.idle":"2024-10-11T09:22:48.710528Z","shell.execute_reply.started":"2024-10-11T09:22:48.687401Z","shell.execute_reply":"2024-10-11T09:22:48.70872Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# X_test handling Nulls","metadata":{}},{"cell_type":"code","source":"X_test = X_test.drop(columns=b.index)\nX_test","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:48.713531Z","iopub.execute_input":"2024-10-11T09:22:48.714076Z","iopub.status.idle":"2024-10-11T09:22:48.78009Z","shell.execute_reply.started":"2024-10-11T09:22:48.714021Z","shell.execute_reply":"2024-10-11T09:22:48.778781Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test_array = imputer.transform(X_test[numerical_columns])\nX_test_numerical = pd.DataFrame(X_test_array, columns=numerical_columns)\nX_test = X_test.drop(columns = numerical_columns)\nX_test = pd.concat([X_test.reset_index(drop=True), X_test_numerical.reset_index(drop=True)], axis=1)\nX_test","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:48.78177Z","iopub.execute_input":"2024-10-11T09:22:48.782148Z","iopub.status.idle":"2024-10-11T09:22:49.132633Z","shell.execute_reply.started":"2024-10-11T09:22:48.782106Z","shell.execute_reply":"2024-10-11T09:22:49.131373Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test[numerical_columns]","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.134195Z","iopub.execute_input":"2024-10-11T09:22:49.134643Z","iopub.status.idle":"2024-10-11T09:22:49.183531Z","shell.execute_reply.started":"2024-10-11T09:22:49.1346Z","shell.execute_reply":"2024-10-11T09:22:49.18228Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"test_df = pd.concat([X_test.reset_index(drop=True), Y_test.reset_index(drop=True)], axis=1)\ntest_df","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.184908Z","iopub.execute_input":"2024-10-11T09:22:49.18533Z","iopub.status.idle":"2024-10-11T09:22:49.233863Z","shell.execute_reply.started":"2024-10-11T09:22:49.18523Z","shell.execute_reply":"2024-10-11T09:22:49.232473Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"test_df[categorical_columns] = mice_imputer.transform(test_df[categorical_columns])\nY_test = test_df['sii']\nX_test = test_df.drop(columns='sii')","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.23547Z","iopub.execute_input":"2024-10-11T09:22:49.235952Z","iopub.status.idle":"2024-10-11T09:22:49.551655Z","shell.execute_reply.started":"2024-10-11T09:22:49.235895Z","shell.execute_reply":"2024-10-11T09:22:49.550408Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"test_df.duplicated().sum()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.553263Z","iopub.execute_input":"2024-10-11T09:22:49.553715Z","iopub.status.idle":"2024-10-11T09:22:49.577656Z","shell.execute_reply.started":"2024-10-11T09:22:49.553673Z","shell.execute_reply":"2024-10-11T09:22:49.576326Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# X_test Feature Enginnering","metadata":{}},{"cell_type":"code","source":"X_test['Basic_Demos-Enroll_Season_sin'] = np.sin(2 * np.pi * X_test['Basic_Demos-Enroll_Season'] / 4)\nX_test['Basic_Demos-Enroll_Season_cos'] = np.cos(2 * np.pi * X_test['Basic_Demos-Enroll_Season'] / 4)\n\nX_test['CGAS-Season_sin'] = np.sin(2 * np.pi * X_test['CGAS-Season'] / 4)\nX_test['CGAS-Season_cos'] = np.cos(2 * np.pi * X_test['CGAS-Season'] / 4)\n\nX_test['Physical-Season_sin'] = np.sin(2 * np.pi * X_test['Physical-Season'] / 4)\nX_test['Physical-Season_cos'] = np.cos(2 * np.pi * X_test['Physical-Season'] / 4)\n\nX_test['FGC-Season_sin'] = np.sin(2 * np.pi * X_test['FGC-Season'] / 4)\nX_test['FGC-Season_cos'] = np.cos(2 * np.pi * X_test['FGC-Season'] / 4)\n\nX_test['PCIAT-Season_sin'] = np.sin(2 * np.pi * X_test['PCIAT-Season'] / 4)\nX_test['PCIAT-Season_cos'] = np.cos(2 * np.pi * X_test['PCIAT-Season'] / 4)\n\nX_test['SDS-Season_sin'] = np.sin(2 * np.pi * X_test['SDS-Season'] / 4)\nX_test['SDS-Season_cos'] = np.cos(2 * np.pi * X_test['SDS-Season'] / 4)\n\nX_test['PreInt_EduHx-Season_sin'] = np.sin(2 * np.pi * X_test['PreInt_EduHx-Season'] / 4)\nX_test['PreInt_EduHx-Season_cos'] = np.cos(2 * np.pi * X_test['PreInt_EduHx-Season'] / 4)\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.579593Z","iopub.execute_input":"2024-10-11T09:22:49.580059Z","iopub.status.idle":"2024-10-11T09:22:49.611546Z","shell.execute_reply.started":"2024-10-11T09:22:49.580012Z","shell.execute_reply":"2024-10-11T09:22:49.610187Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"#X_test['BodyStrength&Flexibility'] = X_test['FGC-FGC_CU'] + X_test['FGC-FGC_PU'] + X_test['FGC-FGC_SRL'] + X_test['FGC-FGC_SRR'] + X_test['FGC-FGC_TL']\nX_test['BodyStrength&Flexibility_class'] = X_test['FGC-FGC_CU_Zone'] + X_test['FGC-FGC_PU_Zone'] + X_test['FGC-FGC_SRL_Zone'] + X_test['FGC-FGC_SRR_Zone'] + X_test['FGC-FGC_TL_Zone']","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.6135Z","iopub.execute_input":"2024-10-11T09:22:49.614696Z","iopub.status.idle":"2024-10-11T09:22:49.623753Z","shell.execute_reply.started":"2024-10-11T09:22:49.614631Z","shell.execute_reply":"2024-10-11T09:22:49.622424Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"bins = [0, 12, 18, 25, 40, 60, 100]\n# labels = ['Child', 'Adolescent', 'Young_Adult', 'Adult', 'Middle_Aged', 'Senior']\nlabels = [0, 1, 2, 3, 4, 5]\nX_test['Age_Group'] = pd.cut(X_test['Basic_Demos-Age'], bins=bins, labels=labels)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.625489Z","iopub.execute_input":"2024-10-11T09:22:49.625927Z","iopub.status.idle":"2024-10-11T09:22:49.645729Z","shell.execute_reply.started":"2024-10-11T09:22:49.625881Z","shell.execute_reply":"2024-10-11T09:22:49.644273Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test['BMI_Category'] = X_test['Physical-BMI'].apply(categorize_bmi)\nX_test['BP_Category'] = X_test.apply(lambda row: categorize_bp(row['Physical-Systolic_BP'], row['Physical-Diastolic_BP']), axis=1)\nX_test['PCIAT_Category'] = X_test['PCIAT-PCIAT_Total'].apply(categorize_pciat)\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.647465Z","iopub.execute_input":"2024-10-11T09:22:49.647919Z","iopub.status.idle":"2024-10-11T09:22:49.680555Z","shell.execute_reply.started":"2024-10-11T09:22:49.647875Z","shell.execute_reply":"2024-10-11T09:22:49.679302Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test['PCIAT_Time_Management'] = X_test[pciat_columns[:5]].mean(axis=1)\nX_test['PCIAT_Withdrawal_Symptoms'] = X_test[pciat_columns[5:10]].mean(axis=1)\nX_test['PCIAT_Neglect_Social_Life'] = X_test[pciat_columns[10:15]].mean(axis=1)\nX_test['PCIAT_Lack_Control'] = X_test[pciat_columns[15:]].mean(axis=1)\nX_test['PCIAT_mean'] = X_test[pciat_columns].mean(axis=1)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.682158Z","iopub.execute_input":"2024-10-11T09:22:49.682601Z","iopub.status.idle":"2024-10-11T09:22:49.708533Z","shell.execute_reply.started":"2024-10-11T09:22:49.682555Z","shell.execute_reply":"2024-10-11T09:22:49.707348Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test['SDS_Severity'] = X_test['SDS-SDS_Total_Raw'].apply(categorize_sds)\nX_test['BMI_Age_Interaction'] = X_test['Physical-BMI'] * X_test['Basic_Demos-Age']\nX_test['HeartRate_BPCategory_Interaction'] = X_test['BP_Category'] * X_test['Basic_Demos-Age']\n\nX_test['Sleep_Quality_Index'] = (X_test['SDS-SDS_Total_T'] - X_test['SDS-SDS_Total_T'].min()) / (X_test['SDS-SDS_Total_T'].max() - X_test['SDS-SDS_Total_T'].min())\nX_test['Physical_Health_Index'] = ((X_test['Physical-BMI'] - X_test['Physical-BMI'].mean()) / X_test['Physical-BMI'].std() + (X_test['Physical-Systolic_BP'] - X_test['Physical-Systolic_BP'].mean()) / X_test['Physical-Systolic_BP'].std() + (X_test['Physical-HeartRate'] - X_test['Physical-HeartRate'].mean()) / X_test['Physical-HeartRate'].std()) / 3\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.710076Z","iopub.execute_input":"2024-10-11T09:22:49.71048Z","iopub.status.idle":"2024-10-11T09:22:49.730524Z","shell.execute_reply.started":"2024-10-11T09:22:49.710436Z","shell.execute_reply":"2024-10-11T09:22:49.729212Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test['Overall_Fitness_Score'] = X_test[fgc_columns].mean(axis=1)\nX_test['Internet_Usage_Score'] = X_test['PCIAT-PCIAT_Total'] / 100\nX_test['Physical_Activity_Score'] = X_test['Overall_Fitness_Score'] / X_test['Overall_Fitness_Score'].max()\nX_test['Lifestyle_Score'] = ((1 - X_test['Internet_Usage_Score']) +  X_test['Physical_Activity_Score'] + (1 - X_test['Sleep_Quality_Index'])) / 3","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.73248Z","iopub.execute_input":"2024-10-11T09:22:49.732889Z","iopub.status.idle":"2024-10-11T09:22:49.747343Z","shell.execute_reply.started":"2024-10-11T09:22:49.732847Z","shell.execute_reply":"2024-10-11T09:22:49.745638Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test = X_test.drop(columns=['SDS-SDS_Total_T', 'SDS-SDS_Total_Raw', 'PCIAT-PCIAT_Total', 'Physical-Height', 'Physical-Weight', 'FGC-FGC_CU', 'FGC-FGC_PU', 'FGC-FGC_SRL', 'FGC-FGC_SRR', 'FGC-FGC_TL', 'FGC-FGC_CU_Zone', 'FGC-FGC_PU_Zone', 'FGC-FGC_SRR_Zone', 'FGC-FGC_SRL_Zone', 'FGC-FGC_TL_Zone', 'PCIAT-PCIAT_01', 'PCIAT-PCIAT_02', 'PCIAT-PCIAT_03', 'PCIAT-PCIAT_04', 'PCIAT-PCIAT_05', 'PCIAT-PCIAT_06', 'PCIAT-PCIAT_07', 'PCIAT-PCIAT_08', 'PCIAT-PCIAT_09', 'PCIAT-PCIAT_10', 'PCIAT-PCIAT_11', 'PCIAT-PCIAT_12', 'PCIAT-PCIAT_13', 'PCIAT-PCIAT_14', 'PCIAT-PCIAT_15', 'PCIAT-PCIAT_16', 'PCIAT-PCIAT_17', 'PCIAT-PCIAT_18', 'PCIAT-PCIAT_19', 'PCIAT-PCIAT_20'])\nX_test = X_test.drop(columns=encoding_columns)\nX_test.columns","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.74901Z","iopub.execute_input":"2024-10-11T09:22:49.749556Z","iopub.status.idle":"2024-10-11T09:22:49.774605Z","shell.execute_reply.started":"2024-10-11T09:22:49.749495Z","shell.execute_reply":"2024-10-11T09:22:49.772714Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test[numerical_cols] = X_test[numerical_cols] + 1\nX_test[numerical_cols] = X_test[numerical_cols].apply(np.log)","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.776791Z","iopub.execute_input":"2024-10-11T09:22:49.777325Z","iopub.status.idle":"2024-10-11T09:22:49.796106Z","shell.execute_reply.started":"2024-10-11T09:22:49.777274Z","shell.execute_reply":"2024-10-11T09:22:49.794637Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# X_test FS","metadata":{}},{"cell_type":"code","source":"plt.figure(figsize=(35, 20))\ncorr = pd.concat([X_test.reset_index(drop=True), Y_test.reset_index(drop=True)], axis=1).corr()\nsns.heatmap(corr, annot=True, cmap='coolwarm')\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:49.79848Z","iopub.execute_input":"2024-10-11T09:22:49.799095Z","iopub.status.idle":"2024-10-11T09:22:59.046287Z","shell.execute_reply.started":"2024-10-11T09:22:49.799027Z","shell.execute_reply":"2024-10-11T09:22:59.043477Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test = X_test.drop(columns=['PCIAT_Time_Management', 'Basic_Demos-Enroll_Season_sin', 'Basic_Demos-Enroll_Season_cos', 'PCIAT_Withdrawal_Symptoms', 'PCIAT_Neglect_Social_Life', 'PCIAT_Lack_Control', 'BP_Category', 'Basic_Demos-Age', 'Physical-BMI'])","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:59.048838Z","iopub.execute_input":"2024-10-11T09:22:59.049436Z","iopub.status.idle":"2024-10-11T09:22:59.06198Z","shell.execute_reply.started":"2024-10-11T09:22:59.049376Z","shell.execute_reply":"2024-10-11T09:22:59.060158Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"plt.figure(figsize=(35, 20))\ncorr = pd.concat([X_test.reset_index(drop=True), Y_test.reset_index(drop=True)], axis=1).corr()\nsns.heatmap(corr, annot=True, cmap='coolwarm')\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:22:59.063831Z","iopub.execute_input":"2024-10-11T09:22:59.064209Z","iopub.status.idle":"2024-10-11T09:23:06.028404Z","shell.execute_reply.started":"2024-10-11T09:22:59.064168Z","shell.execute_reply":"2024-10-11T09:23:06.026409Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_train","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:06.030219Z","iopub.execute_input":"2024-10-11T09:23:06.030747Z","iopub.status.idle":"2024-10-11T09:23:06.076959Z","shell.execute_reply.started":"2024-10-11T09:23:06.0307Z","shell.execute_reply":"2024-10-11T09:23:06.075479Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:06.078473Z","iopub.execute_input":"2024-10-11T09:23:06.078866Z","iopub.status.idle":"2024-10-11T09:23:06.125639Z","shell.execute_reply.started":"2024-10-11T09:23:06.078826Z","shell.execute_reply":"2024-10-11T09:23:06.124414Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"print(set(X_train.columns) - set(X_test.columns))  # Should be an empty set\nprint(set(X_test.columns) - set(X_train.columns))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:06.127426Z","iopub.execute_input":"2024-10-11T09:23:06.127823Z","iopub.status.idle":"2024-10-11T09:23:06.135668Z","shell.execute_reply.started":"2024-10-11T09:23:06.127782Z","shell.execute_reply":"2024-10-11T09:23:06.134063Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"X_test = X_test[X_train.columns]\n","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:06.137961Z","iopub.execute_input":"2024-10-11T09:23:06.138462Z","iopub.status.idle":"2024-10-11T09:23:06.152156Z","shell.execute_reply.started":"2024-10-11T09:23:06.138415Z","shell.execute_reply":"2024-10-11T09:23:06.150524Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"markdown","source":"# Modelling","metadata":{}},{"cell_type":"code","source":"lr_model = LogisticRegression(multi_class='multinomial', solver=\"lbfgs\", max_iter=1000000)\nlr_model.fit(X_train, Y_train)\n\n\n\nlrt_predictions = lr_model.predict(X_train)\nlr_predictions = lr_model.predict(X_test)\n\n\n\n\nlr_accuracy = accuracy_score(Y_test, lr_predictions)\nprint(\"\\nMultinomial Logistic Regression Training Accuracy (1m iterations & lbfgs):\", accuracy_score(Y_train, lrt_predictions))\nprint(\"Multinomial Logistic Regression Testing Accuracy (1m iterations & lbfgs):\", lr_accuracy, '\\n\\n')\nprint(classification_report(Y_train, lrt_predictions))\nprint(classification_report(Y_test, lr_predictions))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:06.165937Z","iopub.execute_input":"2024-10-11T09:23:06.166488Z","iopub.status.idle":"2024-10-11T09:23:07.017476Z","shell.execute_reply.started":"2024-10-11T09:23:06.166425Z","shell.execute_reply":"2024-10-11T09:23:07.01549Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"rf_model = RandomForestClassifier()\nrf_model.fit(X_train, Y_train)\n\nrf_predictions0 = rf_model.predict(X_train)\nrf_predictions = rf_model.predict(X_test)\n\n\n\nprint(\"\\nRandom Forest Training Accuracy:\", accuracy_score(Y_train, rf_predictions0))\nrf_accuracy = accuracy_score(Y_test, rf_predictions)\nprint(\"\\nRandom Forest Testing Accuracy:\", rf_accuracy, '\\n\\n')\nprint(classification_report(Y_train, rf_predictions0))\nprint(classification_report(Y_test, rf_predictions))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.018629Z","iopub.status.idle":"2024-10-11T09:23:07.019061Z","shell.execute_reply.started":"2024-10-11T09:23:07.018849Z","shell.execute_reply":"2024-10-11T09:23:07.01887Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"\n# rf_params = {\n#     'n_estimators': [100,500],\n#     'max_depth': [3, 4, 6, 8, 9, 10],\n#     'min_samples_split': [2, 5, 10],\n#     'min_samples_leaf': [1, 2, 4],\n#     'n_jobs': [-1]\n# }\n\n# rf_grid = GridSearchCV(RandomForestClassifier(), rf_params, cv=5)\n\n# rf_grid.fit(X_train, Y_train)\n\n\n# best_rf_model = rf_grid.best_estimator_\n# best_rf_predictions0 = best_rf_model.predict(X_train)\n\n\n# best_rf_predictions = best_rf_model.predict(X_test)\n\n# best_rf_accuracy = accuracy_score(Y_test, best_rf_predictions)\n# print(\"\\nBest Random Forest Training Accuracy:\", accuracy_score(Y_train, best_rf_predictions0))\n\n# print(\"\\nBest Random Forest Testing Accuracy:\", best_rf_accuracy)\n# print(\"Best Random Forest Parameters:\", rf_grid.best_params_, '\\n\\n')\n\n# print(classification_report(Y_train, best_rf_predictions0))\n# print(classification_report(Y_test, best_rf_predictions))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.021559Z","iopub.status.idle":"2024-10-11T09:23:07.02209Z","shell.execute_reply.started":"2024-10-11T09:23:07.021852Z","shell.execute_reply":"2024-10-11T09:23:07.021878Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"svm_params = {\n    'C': [0.1, 1, 10],\n    'kernel': ['rbf'],\n    'gamma': ['scale', 'auto'],\n}\nsvm_grid = GridSearchCV(SVC(), svm_params, cv=5)\n\n\n\nsvm_grid.fit(X_train, Y_train)\n\n\nrbf_svm_model = svm_grid.best_estimator_\nrbf_svm_predictions0 = rbf_svm_model.predict(X_train)\n\nrbf_svm_predictions = rbf_svm_model.predict(X_test)\n\n\nrbf_svm_accuracy = accuracy_score(Y_test, rbf_svm_predictions)\nprint(\"\\nSupport Vector Machine Training Accuracy (RBF Kernel):\", accuracy_score(Y_train, rbf_svm_predictions0))\n\nprint(\"\\nSupport Vector Machine Testing Accuracy (RBF Kernel):\", rbf_svm_accuracy)\nprint(\"Support Vector Machine Parameters (RBF Kernel):\", svm_grid.best_params_, '\\n\\n')\n\nprint(classification_report(Y_train, rbf_svm_predictions0))\nprint(classification_report(Y_test, rbf_svm_predictions))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.024592Z","iopub.status.idle":"2024-10-11T09:23:07.025333Z","shell.execute_reply.started":"2024-10-11T09:23:07.024942Z","shell.execute_reply":"2024-10-11T09:23:07.024978Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"dt_params = {\n    'max_depth': [None, 5, 10],\n    'min_samples_split': [2, 5, 10],\n    'min_samples_leaf': [1, 2, 4]\n}\ndt_grid = GridSearchCV(DecisionTreeClassifier(), dt_params, cv=5)\n\n\ndt_grid.fit(X_train, Y_train)\n\n\nbest_dt_model = dt_grid.best_estimator_\nbest_dt_predictions0 = best_dt_model.predict(X_train)\n\n\nbest_dt_predictions = best_dt_model.predict(X_test)\n\n\nprint(\"\\nBest Decision Tree Training Accuracy:\", accuracy_score(Y_train, best_dt_predictions0))\n\nbest_dt_accuracy = accuracy_score(Y_test, best_dt_predictions)\nprint(\"\\nBest Decision Tree Testing Accuracy:\", best_dt_accuracy)\nprint(\"Best Decision Tree  Parameters:\", dt_grid.best_params_, '\\n\\n')\n\nprint(classification_report(Y_train, best_dt_predictions0))\nprint(classification_report(Y_test, best_dt_predictions))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.027509Z","iopub.status.idle":"2024-10-11T09:23:07.028046Z","shell.execute_reply.started":"2024-10-11T09:23:07.027808Z","shell.execute_reply":"2024-10-11T09:23:07.027833Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"clf = AdaBoostClassifier(n_estimators=85, algorithm='SAMME', random_state=42)\nclf.fit(X_train, Y_train)\ny_train_pred = clf.predict(X_train)\ny_pred = clf.predict(X_test)\nprint(f'Adaboost accuracy on Train set {accuracy_score(Y_train, y_train_pred)}')\nprint(f'Adaboost accuracy on Test set {accuracy_score(Y_test, y_pred)}', '\\n\\n')\nprint(classification_report(Y_train, y_train_pred))\nprint(classification_report(Y_test, y_pred))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.029658Z","iopub.status.idle":"2024-10-11T09:23:07.03014Z","shell.execute_reply.started":"2024-10-11T09:23:07.029905Z","shell.execute_reply":"2024-10-11T09:23:07.029929Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"clf = GradientBoostingClassifier(n_estimators=50, max_depth=6, random_state=42)\nclf.fit(X_train, Y_train)\ny_train_pred = clf.predict(X_train)\ny_pred = clf.predict(X_test)\nprint(f'Gradient Boosting Classifier accuracy on Train set {accuracy_score(Y_train, y_train_pred)}')\nprint(f'Gradient Boosting Classifier accuracy on Test set {accuracy_score(Y_test, y_pred)}')\nprint(classification_report(Y_train, y_train_pred))\nprint(classification_report(Y_test, y_pred))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.031619Z","iopub.status.idle":"2024-10-11T09:23:07.03208Z","shell.execute_reply.started":"2024-10-11T09:23:07.031857Z","shell.execute_reply":"2024-10-11T09:23:07.03188Z"},"trusted":true},"outputs":[],"execution_count":null},{"cell_type":"code","source":"model = XGBClassifier(n_estimators=200, learning_rate=0.05, max_depth=4, subsample=0.8, colsample_bytree=0.8, enable_categorical=True)\nmodel.fit(X_train, Y_train)\n\n# Predictions\ny_train_pred = model.predict(X_train)\ny_pred = model.predict(X_test)\n\n# Print Accuracy Scores\nprint(f'XGB accuracy on Train set: {accuracy_score(Y_train, y_train_pred)}')\nprint(f'XGB accuracy on Test set: {accuracy_score(Y_test, y_pred)}')\n\n# Classification Reports\nprint(classification_report(Y_train, y_train_pred))\nprint(classification_report(Y_test, y_pred))","metadata":{"execution":{"iopub.status.busy":"2024-10-11T09:23:07.034764Z","iopub.status.idle":"2024-10-11T09:23:07.035207Z","shell.execute_reply.started":"2024-10-11T09:23:07.034997Z","shell.execute_reply":"2024-10-11T09:23:07.035019Z"},"trusted":true},"outputs":[],"execution_count":null}]}