{"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.11.11"},"kaggle":{"accelerator":"nvidiaTeslaT4","dataSources":[{"sourceId":103436,"databundleVersionId":12476472,"sourceType":"competition"}],"dockerImageVersionId":31041,"isInternetEnabled":true,"language":"python","sourceType":"notebook","isGpuEnabled":true},"papermill":{"default_parameters":{},"duration":170.311019,"end_time":"2025-06-17T16:53:21.404451","environment_variables":{},"exception":null,"input_path":"__notebook__.ipynb","output_path":"__notebook__.ipynb","parameters":{},"start_time":"2025-06-17T16:50:31.093432","version":"2.6.0"}},"nbformat_minor":4,"nbformat":4,"cells":[{"id":"1f163901","cell_type":"code","source":"!pip install -q --upgrade scikit-learn imbalanced-learn","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:50:36.912171Z","iopub.status.busy":"2025-06-17T16:50:36.911970Z","iopub.status.idle":"2025-06-17T16:50:46.635708Z","shell.execute_reply":"2025-06-17T16:50:46.635004Z"},"papermill":{"duration":9.7352,"end_time":"2025-06-17T16:50:46.637093","exception":false,"start_time":"2025-06-17T16:50:36.901893","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"4e287bf3","cell_type":"code","source":"import numpy as np\nimport pandas as pd\nimport os","metadata":{"_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","execution":{"iopub.execute_input":"2025-06-17T16:50:46.656679Z","iopub.status.busy":"2025-06-17T16:50:46.655859Z","iopub.status.idle":"2025-06-17T16:50:48.642902Z","shell.execute_reply":"2025-06-17T16:50:48.642144Z"},"papermill":{"duration":1.997892,"end_time":"2025-06-17T16:50:48.644365","exception":false,"start_time":"2025-06-17T16:50:46.646473","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"b7ccae2d","cell_type":"code","source":"base_path = '/kaggle/input/ds-108-p-21-assigment-06/'\nfile_paths = {\n    'delay_4_6': os.path.join(base_path, 'delay_4_6_CONDITION_PRODUCT_SUPPLIER.csv'),\n    'not_delay_4_6': os.path.join(base_path, 'not_delay_4_6_CONDITION_PRODUCT_SUPPLIER.csv'),\n    'delay_7_9': os.path.join(base_path, 'delay_7_9_CONDITION_PRODUCT_SUPPLIER.csv'),\n    'not_delay_7_9': os.path.join(base_path, 'not_delay_7_9_CONDITION_PRODUCT_SUPPLIER.csv'),\n    'pilot_10': os.path.join(base_path, 'PILOT_10.csv')\n}","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:50:48.663589Z","iopub.status.busy":"2025-06-17T16:50:48.663322Z","iopub.status.idle":"2025-06-17T16:50:48.667065Z","shell.execute_reply":"2025-06-17T16:50:48.666563Z"},"papermill":{"duration":0.014133,"end_time":"2025-06-17T16:50:48.668001","exception":false,"start_time":"2025-06-17T16:50:48.653868","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"1b480aab","cell_type":"code","source":"print(\"--- Loading Training Data ---\")\ndf_delay_4_6 = pd.read_csv(file_paths['delay_4_6'])\nprint(f\"Loaded delay_4_6: {df_delay_4_6.shape}\")\n# print(f\"Dtypes delay_4_6: {df_delay_4_6.dtypes}\")\n\ndf_not_delay_4_6 = pd.read_csv(file_paths['not_delay_4_6'])\nprint(f\"Loaded not_delay_4_6: {df_not_delay_4_6.shape}\")\n# print(f\"Dtypes not_delay_4_6: {df_not_delay_4_6.dtypes}\")\n\ndf_delay_7_9 = pd.read_csv(file_paths['delay_7_9'])\nprint(f\"Loaded delay_7_9: {df_delay_7_9.shape}\")\n# print(f\"Dtypes not_delay_4_6: {df_not_delay_4_6.dtypes}\")\n\ndf_not_delay_7_9 = pd.read_csv(file_paths['not_delay_7_9'])\nprint(f\"Loaded not_delay_7_9: {df_not_delay_7_9.shape}\")\n# print(f\"Dtypes not_delay_7_9: {df_not_delay_7_9.dtypes}\")\nprint(\"\\n\")","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:50:48.685625Z","iopub.status.busy":"2025-06-17T16:50:48.685439Z","iopub.status.idle":"2025-06-17T16:51:03.502168Z","shell.execute_reply":"2025-06-17T16:51:03.501259Z"},"papermill":{"duration":14.827102,"end_time":"2025-06-17T16:51:03.503536","exception":false,"start_time":"2025-06-17T16:50:48.676434","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"ec7c2c09","cell_type":"code","source":"df_delay_4_6[df_delay_4_6.columns[10]].apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:03.522845Z","iopub.status.busy":"2025-06-17T16:51:03.522597Z","iopub.status.idle":"2025-06-17T16:51:03.543795Z","shell.execute_reply":"2025-06-17T16:51:03.543048Z"},"papermill":{"duration":0.032202,"end_time":"2025-06-17T16:51:03.545032","exception":false,"start_time":"2025-06-17T16:51:03.512830","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"575ae36b","cell_type":"code","source":"temp = df_not_delay_4_6[df_not_delay_4_6.columns[10]]\ntemp.apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:03.563128Z","iopub.status.busy":"2025-06-17T16:51:03.562918Z","iopub.status.idle":"2025-06-17T16:51:03.616150Z","shell.execute_reply":"2025-06-17T16:51:03.615350Z"},"papermill":{"duration":0.0636,"end_time":"2025-06-17T16:51:03.617423","exception":false,"start_time":"2025-06-17T16:51:03.553823","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"2359235a","cell_type":"code","source":"temp[temp.apply(type)==str].unique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:03.635575Z","iopub.status.busy":"2025-06-17T16:51:03.635371Z","iopub.status.idle":"2025-06-17T16:51:03.697997Z","shell.execute_reply":"2025-06-17T16:51:03.697265Z"},"papermill":{"duration":0.072847,"end_time":"2025-06-17T16:51:03.699048","exception":false,"start_time":"2025-06-17T16:51:03.626201","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"b9380973","cell_type":"code","source":"temp[temp.apply(type)==int].unique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:03.717880Z","iopub.status.busy":"2025-06-17T16:51:03.717443Z","iopub.status.idle":"2025-06-17T16:51:03.782815Z","shell.execute_reply":"2025-06-17T16:51:03.782281Z"},"papermill":{"duration":0.075794,"end_time":"2025-06-17T16:51:03.783816","exception":false,"start_time":"2025-06-17T16:51:03.708022","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"b12ed7e1","cell_type":"code","source":"df_not_delay_4_6.loc[(temp.apply(type)==str)&(temp!=' '), df_not_delay_4_6.columns[10]] = temp[(temp.apply(type)==str)&(temp!=' ')].map({'0': 0, '1': 1, '2': 2, '3': 3, '4': 4}).astype('Int64')\ndf_not_delay_4_6.loc[temp==' ', df_not_delay_4_6.columns[10]] = np.nan\n\ndf_not_delay_4_6[df_not_delay_4_6.columns[10]].apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:03.802555Z","iopub.status.busy":"2025-06-17T16:51:03.802125Z","iopub.status.idle":"2025-06-17T16:51:04.046592Z","shell.execute_reply":"2025-06-17T16:51:04.045993Z"},"papermill":{"duration":0.254875,"end_time":"2025-06-17T16:51:04.047752","exception":false,"start_time":"2025-06-17T16:51:03.792877","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"d67397fb","cell_type":"code","source":"df_delay_4_6[df_delay_4_6.columns[42]].apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.067763Z","iopub.status.busy":"2025-06-17T16:51:04.067589Z","iopub.status.idle":"2025-06-17T16:51:04.074167Z","shell.execute_reply":"2025-06-17T16:51:04.073638Z"},"papermill":{"duration":0.017312,"end_time":"2025-06-17T16:51:04.075145","exception":false,"start_time":"2025-06-17T16:51:04.057833","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"4fe46399","cell_type":"code","source":"df_delay_4_6[df_delay_4_6[df_delay_4_6.columns[42]].apply(type)==float][df_delay_4_6.columns[42]].unique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.093760Z","iopub.status.busy":"2025-06-17T16:51:04.093571Z","iopub.status.idle":"2025-06-17T16:51:04.105773Z","shell.execute_reply":"2025-06-17T16:51:04.105246Z"},"papermill":{"duration":0.02248,"end_time":"2025-06-17T16:51:04.106734","exception":false,"start_time":"2025-06-17T16:51:04.084254","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"224e47f8","cell_type":"code","source":"temp = df_not_delay_4_6[df_not_delay_4_6.columns[42]].copy()\ntemp.apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.125434Z","iopub.status.busy":"2025-06-17T16:51:04.125197Z","iopub.status.idle":"2025-06-17T16:51:04.177279Z","shell.execute_reply":"2025-06-17T16:51:04.176568Z"},"papermill":{"duration":0.062677,"end_time":"2025-06-17T16:51:04.178359","exception":false,"start_time":"2025-06-17T16:51:04.115682","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"8647d1a0","cell_type":"code","source":"temp[temp.apply(type)==float].unique(), temp[temp.apply(type)==float].nunique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.197098Z","iopub.status.busy":"2025-06-17T16:51:04.196908Z","iopub.status.idle":"2025-06-17T16:51:04.319638Z","shell.execute_reply":"2025-06-17T16:51:04.319088Z"},"papermill":{"duration":0.133397,"end_time":"2025-06-17T16:51:04.320810","exception":false,"start_time":"2025-06-17T16:51:04.187413","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"6e0ed259","cell_type":"code","source":"temp[(temp.apply(type)==float)&(temp.notnull())] = temp[(temp.apply(type)==float)&(temp.notnull())].apply(lambda x: str(int(x)).zfill(6))\ntemp.apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.384688Z","iopub.status.busy":"2025-06-17T16:51:04.384114Z","iopub.status.idle":"2025-06-17T16:51:04.568112Z","shell.execute_reply":"2025-06-17T16:51:04.567435Z"},"papermill":{"duration":0.238693,"end_time":"2025-06-17T16:51:04.569316","exception":false,"start_time":"2025-06-17T16:51:04.330623","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"a3b9d228","cell_type":"code","source":"temp[temp.apply(type)==str].unique(), temp[temp.apply(type)==str].nunique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.589499Z","iopub.status.busy":"2025-06-17T16:51:04.588890Z","iopub.status.idle":"2025-06-17T16:51:04.704884Z","shell.execute_reply":"2025-06-17T16:51:04.704365Z"},"papermill":{"duration":0.12711,"end_time":"2025-06-17T16:51:04.705926","exception":false,"start_time":"2025-06-17T16:51:04.578816","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"d993fc92","cell_type":"code","source":"df_not_delay_4_6[df_not_delay_4_6.columns[42]] = temp.copy()\ndf_not_delay_4_6[df_not_delay_4_6.columns[42]].apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.725595Z","iopub.status.busy":"2025-06-17T16:51:04.725139Z","iopub.status.idle":"2025-06-17T16:51:04.781682Z","shell.execute_reply":"2025-06-17T16:51:04.781114Z"},"papermill":{"duration":0.067347,"end_time":"2025-06-17T16:51:04.782649","exception":false,"start_time":"2025-06-17T16:51:04.715302","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"236243b6","cell_type":"code","source":"df_delay_7_9[df_delay_7_9.columns[34]].apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.802233Z","iopub.status.busy":"2025-06-17T16:51:04.802038Z","iopub.status.idle":"2025-06-17T16:51:04.810642Z","shell.execute_reply":"2025-06-17T16:51:04.810084Z"},"papermill":{"duration":0.01949,"end_time":"2025-06-17T16:51:04.811617","exception":false,"start_time":"2025-06-17T16:51:04.792127","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"b57f6f60","cell_type":"code","source":"df_delay_7_9[df_delay_7_9[df_delay_7_9.columns[34]].apply(type)==float][df_delay_7_9.columns[34]].unique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.830831Z","iopub.status.busy":"2025-06-17T16:51:04.830663Z","iopub.status.idle":"2025-06-17T16:51:04.843198Z","shell.execute_reply":"2025-06-17T16:51:04.842708Z"},"papermill":{"duration":0.023357,"end_time":"2025-06-17T16:51:04.844278","exception":false,"start_time":"2025-06-17T16:51:04.820921","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"eee878d8","cell_type":"code","source":"temp = df_not_delay_7_9[df_not_delay_7_9.columns[34]].copy()\ntemp.apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:04.864194Z","iopub.status.busy":"2025-06-17T16:51:04.863854Z","iopub.status.idle":"2025-06-17T16:51:04.997849Z","shell.execute_reply":"2025-06-17T16:51:04.997284Z"},"papermill":{"duration":0.145224,"end_time":"2025-06-17T16:51:04.998976","exception":false,"start_time":"2025-06-17T16:51:04.853752","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"5424c26a","cell_type":"code","source":"temp[temp.apply(type)==float].unique(), temp[temp.apply(type)==float].nunique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:05.019863Z","iopub.status.busy":"2025-06-17T16:51:05.019247Z","iopub.status.idle":"2025-06-17T16:51:05.337236Z","shell.execute_reply":"2025-06-17T16:51:05.336528Z"},"papermill":{"duration":0.329458,"end_time":"2025-06-17T16:51:05.338562","exception":false,"start_time":"2025-06-17T16:51:05.009104","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"4af3d01d","cell_type":"code","source":"temp[(temp.apply(type)==float)&(temp.notnull())] = temp[(temp.apply(type)==float)&(temp.notnull())].apply(lambda x: str(int(x)).zfill(6))\ntemp.apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:05.359300Z","iopub.status.busy":"2025-06-17T16:51:05.359062Z","iopub.status.idle":"2025-06-17T16:51:05.881890Z","shell.execute_reply":"2025-06-17T16:51:05.881120Z"},"papermill":{"duration":0.534226,"end_time":"2025-06-17T16:51:05.883054","exception":false,"start_time":"2025-06-17T16:51:05.348828","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"136c5b7d","cell_type":"code","source":"temp[temp.apply(type)==str].unique(), temp[temp.apply(type)==str].nunique()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:05.903655Z","iopub.status.busy":"2025-06-17T16:51:05.903442Z","iopub.status.idle":"2025-06-17T16:51:06.225520Z","shell.execute_reply":"2025-06-17T16:51:06.224867Z"},"papermill":{"duration":0.333596,"end_time":"2025-06-17T16:51:06.226745","exception":false,"start_time":"2025-06-17T16:51:05.893149","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"dc254011","cell_type":"code","source":"df_not_delay_7_9[df_not_delay_7_9.columns[34]] = temp.copy()\ndf_not_delay_7_9[df_not_delay_7_9.columns[34]].apply(type).value_counts()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:06.249430Z","iopub.status.busy":"2025-06-17T16:51:06.248930Z","iopub.status.idle":"2025-06-17T16:51:06.391804Z","shell.execute_reply":"2025-06-17T16:51:06.391244Z"},"papermill":{"duration":0.155187,"end_time":"2025-06-17T16:51:06.392887","exception":false,"start_time":"2025-06-17T16:51:06.237700","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"567f325c","cell_type":"code","source":"print(\"--- Creating 'label' column ---\")\ndf_delay_4_6['label'] = 1\ndf_not_delay_4_6['label'] = 0\ndf_delay_7_9['label'] = 1\ndf_not_delay_7_9['label'] = 0\nprint(\"Added 'label' column to training dataframes.\\n\")","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:06.413635Z","iopub.status.busy":"2025-06-17T16:51:06.413425Z","iopub.status.idle":"2025-06-17T16:51:06.419314Z","shell.execute_reply":"2025-06-17T16:51:06.418620Z"},"papermill":{"duration":0.017233,"end_time":"2025-06-17T16:51:06.420363","exception":false,"start_time":"2025-06-17T16:51:06.403130","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"782eb2ca","cell_type":"code","source":"print(\"--- EDA Training Data ---\")\nprint(\"\\n\")\n\nprint(f\"IsNull delay_4_6 {df_delay_4_6.shape}:\")\nprint(\"\\n\")\nprint(pd.concat([\n    (df_delay_4_6.isnull().sum()/df_delay_4_6.shape[0]).rename('isnull(&)'), \n    (df_delay_4_6.dtypes).rename('dtypes'), \n    (df_delay_4_6.nunique()).rename('nunique')\n], axis=1))\nprint(\"\\n\")\n\nprint(f\"IsNull not_delay_4_6 {df_not_delay_4_6.shape}:\")\nprint(\"\\n\")\nprint(pd.concat([\n    (df_not_delay_4_6.isnull().sum()/df_not_delay_4_6.shape[0]).rename('isnull(&)'), \n    (df_not_delay_4_6.dtypes).rename('dtypes'), \n    (df_not_delay_4_6.nunique()).rename('nunique')\n], axis=1))\nprint(\"\\n\")\n\nprint(f\"IsNull not_delay_4_6 {df_delay_7_9.shape}:\")\nprint(\"\\n\")\nprint(pd.concat([\n    (df_delay_7_9.isnull().sum()/df_delay_7_9.shape[0]).rename('isnull(&)'), \n    (df_delay_7_9.dtypes).rename('dtypes'), \n    (df_delay_7_9.nunique()).rename('nunique')\n], axis=1))\nprint(\"\\n\")\n\nprint(f\"IsNull not_delay_7_9 {df_not_delay_7_9.shape}:\")\nprint(\"\\n\")\nprint(pd.concat([\n    (df_not_delay_7_9.isnull().sum()/df_not_delay_7_9.shape[0]).rename('isnull(&)'), \n    (df_not_delay_7_9.dtypes).rename('dtypes'), \n    (df_not_delay_7_9.nunique()).rename('nunique')\n], axis=1))\nprint(\"\\n\")","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:06.440595Z","iopub.status.busy":"2025-06-17T16:51:06.440397Z","iopub.status.idle":"2025-06-17T16:51:08.765839Z","shell.execute_reply":"2025-06-17T16:51:08.764966Z"},"papermill":{"duration":2.33692,"end_time":"2025-06-17T16:51:08.767086","exception":false,"start_time":"2025-06-17T16:51:06.430166","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"95ea0dc3","cell_type":"code","source":"print(\"delay_4_6: \", pd.to_datetime(df_delay_4_6['Order date']).min(), '-', pd.to_datetime(df_delay_4_6['Order date']).max())\nprint(\"not_delay_4_6: \", pd.to_datetime(df_not_delay_4_6['Order date']).min(), '-', pd.to_datetime(df_not_delay_4_6['Order date']).max())\nprint(\"delay_7_9: \", pd.to_datetime(df_delay_7_9['Order date']).min(), '-', pd.to_datetime(df_delay_7_9['Order date']).max())\nprint(\"not_delay_7_9: \", pd.to_datetime(df_not_delay_7_9['Order date']).min(), '-', pd.to_datetime(df_not_delay_7_9['Order date']).max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:08.790897Z","iopub.status.busy":"2025-06-17T16:51:08.790701Z","iopub.status.idle":"2025-06-17T16:51:09.112586Z","shell.execute_reply":"2025-06-17T16:51:09.111630Z"},"papermill":{"duration":0.335751,"end_time":"2025-06-17T16:51:09.113847","exception":false,"start_time":"2025-06-17T16:51:08.778096","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"5d6734ea","cell_type":"code","source":"list(df_delay_4_6.columns.difference(df_not_delay_4_6.columns)), list(df_delay_7_9.columns.difference(df_not_delay_7_9.columns))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:09.135965Z","iopub.status.busy":"2025-06-17T16:51:09.135767Z","iopub.status.idle":"2025-06-17T16:51:09.140353Z","shell.execute_reply":"2025-06-17T16:51:09.139806Z"},"papermill":{"duration":0.016354,"end_time":"2025-06-17T16:51:09.141363","exception":false,"start_time":"2025-06-17T16:51:09.125009","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"1a184322","cell_type":"code","source":"(\n    list(df_delay_4_6.columns.intersection(df_delay_7_9.columns)),\n    df_delay_4_6.columns.intersection(df_delay_7_9.columns).shape[0]\n), (\n    list(df_delay_4_6.columns.difference(df_delay_7_9.columns)),\n    df_delay_4_6.columns.difference(df_delay_7_9.columns).shape[0]\n)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:09.162893Z","iopub.status.busy":"2025-06-17T16:51:09.162718Z","iopub.status.idle":"2025-06-17T16:51:09.168468Z","shell.execute_reply":"2025-06-17T16:51:09.167949Z"},"papermill":{"duration":0.017849,"end_time":"2025-06-17T16:51:09.169696","exception":false,"start_time":"2025-06-17T16:51:09.151847","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"fc006d7c","cell_type":"code","source":"(\n    list(df_delay_4_6.columns.difference(df_delay_7_9.columns).difference(df_delay_7_9.columns)),\n    df_delay_4_6.columns.difference(df_delay_7_9.columns).difference(df_delay_7_9.columns).shape[0]\n), (\n    list(df_delay_4_6.columns.difference(df_delay_7_9.columns).difference(df_delay_4_6.columns)),\n    df_delay_4_6.columns.difference(df_delay_7_9.columns).difference(df_delay_4_6.columns).shape[0]\n)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:09.191716Z","iopub.status.busy":"2025-06-17T16:51:09.191552Z","iopub.status.idle":"2025-06-17T16:51:09.197075Z","shell.execute_reply":"2025-06-17T16:51:09.196599Z"},"papermill":{"duration":0.017499,"end_time":"2025-06-17T16:51:09.198083","exception":false,"start_time":"2025-06-17T16:51:09.180584","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"354f8b4b","cell_type":"code","source":"print(\"--- Loading Test Data ---\")\ndf_pilot_10 = pd.read_csv(file_paths['pilot_10'])\nprint(f\"Loaded pilot_10: {df_pilot_10.shape}\")\n# print(f\"Dtypes pilot_10: {df_pilot_10.dtypes}\")\nprint(\"\\n\")","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:09.220024Z","iopub.status.busy":"2025-06-17T16:51:09.219824Z","iopub.status.idle":"2025-06-17T16:51:09.911263Z","shell.execute_reply":"2025-06-17T16:51:09.910467Z"},"papermill":{"duration":0.703461,"end_time":"2025-06-17T16:51:09.912417","exception":false,"start_time":"2025-06-17T16:51:09.208956","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"c384f33a","cell_type":"code","source":"print(\"pilot_10: \", pd.to_datetime(df_pilot_10['Order date']).min(), '-', pd.to_datetime(df_pilot_10['Order date']).max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:09.935024Z","iopub.status.busy":"2025-06-17T16:51:09.934800Z","iopub.status.idle":"2025-06-17T16:51:09.964069Z","shell.execute_reply":"2025-06-17T16:51:09.963430Z"},"papermill":{"duration":0.041574,"end_time":"2025-06-17T16:51:09.965075","exception":false,"start_time":"2025-06-17T16:51:09.923501","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"aa89a39f","cell_type":"code","source":"(\n    list(df_delay_4_6.columns.difference(df_pilot_10.columns)),\n    df_delay_4_6.columns.difference(df_pilot_10.columns).shape[0]\n), (\n    list(df_delay_7_9.columns.difference(df_pilot_10.columns)),\n    df_delay_7_9.columns.difference(df_pilot_10.columns).shape[0]\n)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:09.986910Z","iopub.status.busy":"2025-06-17T16:51:09.986712Z","iopub.status.idle":"2025-06-17T16:51:09.992289Z","shell.execute_reply":"2025-06-17T16:51:09.991564Z"},"papermill":{"duration":0.017685,"end_time":"2025-06-17T16:51:09.993410","exception":false,"start_time":"2025-06-17T16:51:09.975725","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"9c15293c","cell_type":"code","source":"print(\"--- Merge Training Data ---\")\ndf_delay = pd.concat([df_delay_4_6[df_delay_7_9.columns].copy(), df_delay_7_9.copy()], axis=0, ignore_index=True)\ndf_not_delay = pd.concat([df_not_delay_4_6[df_not_delay_7_9.columns].copy(), df_not_delay_7_9.copy()], axis=0, ignore_index=True)\n\ndf_delay.shape, df_not_delay.shape","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:10.015511Z","iopub.status.busy":"2025-06-17T16:51:10.015297Z","iopub.status.idle":"2025-06-17T16:51:11.645021Z","shell.execute_reply":"2025-06-17T16:51:11.644261Z"},"papermill":{"duration":1.642532,"end_time":"2025-06-17T16:51:11.646427","exception":false,"start_time":"2025-06-17T16:51:10.003895","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"c207988f","cell_type":"code","source":"df_all = pd.concat([df_delay.copy(), df_not_delay.copy()], axis=0, ignore_index=True)\n\ndf_all.shape","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:11.673349Z","iopub.status.busy":"2025-06-17T16:51:11.673086Z","iopub.status.idle":"2025-06-17T16:51:13.373235Z","shell.execute_reply":"2025-06-17T16:51:13.372582Z"},"papermill":{"duration":1.714752,"end_time":"2025-06-17T16:51:13.374392","exception":false,"start_time":"2025-06-17T16:51:11.659640","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"bdc2147a","cell_type":"code","source":"df_extra = pd.concat([df_delay_4_6.copy(), df_not_delay_4_6.copy()], axis=0, ignore_index=True)\n\ndf_extra.shape","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:13.397479Z","iopub.status.busy":"2025-06-17T16:51:13.397291Z","iopub.status.idle":"2025-06-17T16:51:13.875973Z","shell.execute_reply":"2025-06-17T16:51:13.875340Z"},"papermill":{"duration":0.491275,"end_time":"2025-06-17T16:51:13.877121","exception":false,"start_time":"2025-06-17T16:51:13.385846","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"8c1ae141","cell_type":"code","source":"# df_all_notnull = df_all.dropna(axis=1, thresh=0.5*df_all.shape[0]).copy()\nnan_ratio = df_all.isnull().mean()\ndf_all_drop = nan_ratio[nan_ratio > 0.5].index.tolist()\n\nprint(len(df_all_drop))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:13.901603Z","iopub.status.busy":"2025-06-17T16:51:13.901417Z","iopub.status.idle":"2025-06-17T16:51:14.819700Z","shell.execute_reply":"2025-06-17T16:51:14.819006Z"},"papermill":{"duration":0.931956,"end_time":"2025-06-17T16:51:14.820861","exception":false,"start_time":"2025-06-17T16:51:13.888905","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"2fd82c2e","cell_type":"code","source":"nan_ratio = df_extra.isnull().mean()\ndf_extra_drop = nan_ratio[nan_ratio > 0.5].index.tolist()\n\nprint(len(df_extra_drop))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:14.844197Z","iopub.status.busy":"2025-06-17T16:51:14.843997Z","iopub.status.idle":"2025-06-17T16:51:15.123440Z","shell.execute_reply":"2025-06-17T16:51:15.122639Z"},"papermill":{"duration":0.292087,"end_time":"2025-06-17T16:51:15.124621","exception":false,"start_time":"2025-06-17T16:51:14.832534","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"709ab53d","cell_type":"code","source":"df_all_object_cols = df_all.drop(df_all_drop, axis=1).select_dtypes(include='object').columns\nprint(\"Object:\", (list(df_all_object_cols), len(list(df_all_object_cols))))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:15.147471Z","iopub.status.busy":"2025-06-17T16:51:15.147260Z","iopub.status.idle":"2025-06-17T16:51:16.273507Z","shell.execute_reply":"2025-06-17T16:51:16.272728Z"},"papermill":{"duration":1.138811,"end_time":"2025-06-17T16:51:16.274600","exception":false,"start_time":"2025-06-17T16:51:15.135789","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"0137601c","cell_type":"code","source":"df_extra_object_cols = df_extra.drop(df_extra_drop, axis=1).select_dtypes(include='object').columns\nprint(\"Object:\", (list(df_extra_object_cols), len(list(df_extra_object_cols))))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:16.298201Z","iopub.status.busy":"2025-06-17T16:51:16.297973Z","iopub.status.idle":"2025-06-17T16:51:16.665082Z","shell.execute_reply":"2025-06-17T16:51:16.664261Z"},"papermill":{"duration":0.380259,"end_time":"2025-06-17T16:51:16.666325","exception":false,"start_time":"2025-06-17T16:51:16.286066","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"d9edeff4","cell_type":"code","source":"print(pd.concat([\n    (df_all[df_all_object_cols].isnull().sum()).rename('isnull(&)'), \n    (df_all[df_all_object_cols].dtypes).rename('dtypes'), \n    (df_all[df_all_object_cols].nunique()).rename('nunique')\n], axis=1))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:16.690036Z","iopub.status.busy":"2025-06-17T16:51:16.689822Z","iopub.status.idle":"2025-06-17T16:51:19.488666Z","shell.execute_reply":"2025-06-17T16:51:19.487720Z"},"papermill":{"duration":2.811889,"end_time":"2025-06-17T16:51:19.489881","exception":false,"start_time":"2025-06-17T16:51:16.677992","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"1a9c539a","cell_type":"code","source":"df_all_drop += [col for col in df_all_object_cols if df_all[col].nunique() > 10 or df_all[col].nunique() < 2]\n\nprint(len(df_all_drop))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:19.514206Z","iopub.status.busy":"2025-06-17T16:51:19.514012Z","iopub.status.idle":"2025-06-17T16:51:21.033199Z","shell.execute_reply":"2025-06-17T16:51:21.032286Z"},"papermill":{"duration":1.532747,"end_time":"2025-06-17T16:51:21.034454","exception":false,"start_time":"2025-06-17T16:51:19.501707","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"a975309b","cell_type":"code","source":"print(pd.concat([\n    (df_extra[df_extra_object_cols].isnull().sum()).rename('isnull(&)'), \n    (df_extra[df_extra_object_cols].dtypes).rename('dtypes'), \n    (df_extra[df_extra_object_cols].nunique()).rename('nunique')\n], axis=1))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:21.057653Z","iopub.status.busy":"2025-06-17T16:51:21.057441Z","iopub.status.idle":"2025-06-17T16:51:21.748186Z","shell.execute_reply":"2025-06-17T16:51:21.747317Z"},"papermill":{"duration":0.703626,"end_time":"2025-06-17T16:51:21.749515","exception":false,"start_time":"2025-06-17T16:51:21.045889","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"37a7d41e","cell_type":"code","source":"df_extra_drop += [col for col in df_extra_object_cols if df_extra[col].nunique() > 10 or df_extra[col].nunique() < 2]\n\nprint(len(df_extra_drop))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:21.773776Z","iopub.status.busy":"2025-06-17T16:51:21.773589Z","iopub.status.idle":"2025-06-17T16:51:22.143713Z","shell.execute_reply":"2025-06-17T16:51:22.143000Z"},"papermill":{"duration":0.383321,"end_time":"2025-06-17T16:51:22.144948","exception":false,"start_time":"2025-06-17T16:51:21.761627","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"34e5df44","cell_type":"code","source":"df_all['Order date'] = pd.to_datetime(df_all['Order date'], format='mixed')\nprint(\"Order date: \", df_all['Order date'].min(), '-', df_all['Order date'].max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.169297Z","iopub.status.busy":"2025-06-17T16:51:22.169073Z","iopub.status.idle":"2025-06-17T16:51:22.340074Z","shell.execute_reply":"2025-06-17T16:51:22.339306Z"},"papermill":{"duration":0.184019,"end_time":"2025-06-17T16:51:22.341386","exception":false,"start_time":"2025-06-17T16:51:22.157367","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"b4beb66c","cell_type":"code","source":"df_extra['Order date'] = pd.to_datetime(df_extra['Order date'], format='mixed')\nprint(\"Order date: \", df_extra['Order date'].min(), '-', df_extra['Order date'].max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.365244Z","iopub.status.busy":"2025-06-17T16:51:22.365024Z","iopub.status.idle":"2025-06-17T16:51:22.416420Z","shell.execute_reply":"2025-06-17T16:51:22.415769Z"},"papermill":{"duration":0.06442,"end_time":"2025-06-17T16:51:22.417500","exception":false,"start_time":"2025-06-17T16:51:22.353080","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"1a7ac0d0","cell_type":"code","source":"df_all['order_dayofweek'] = df_all['Order date'].dt.dayofweek \ndf_all['order_hour'] = df_all['Order date'].dt.hour","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.441356Z","iopub.status.busy":"2025-06-17T16:51:22.441147Z","iopub.status.idle":"2025-06-17T16:51:22.550190Z","shell.execute_reply":"2025-06-17T16:51:22.549676Z"},"papermill":{"duration":0.12278,"end_time":"2025-06-17T16:51:22.551530","exception":false,"start_time":"2025-06-17T16:51:22.428750","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"e0362569","cell_type":"code","source":"df_extra['order_dayofweek'] = df_extra['Order date'].dt.dayofweek \ndf_extra['order_hour'] = df_extra['Order date'].dt.hour","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.575824Z","iopub.status.busy":"2025-06-17T16:51:22.575637Z","iopub.status.idle":"2025-06-17T16:51:22.608382Z","shell.execute_reply":"2025-06-17T16:51:22.607815Z"},"papermill":{"duration":0.046102,"end_time":"2025-06-17T16:51:22.609737","exception":false,"start_time":"2025-06-17T16:51:22.563635","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"5003ddef","cell_type":"code","source":"# df_all_notnull['VSD'].unique()\ndf_all['VSD'] = pd.to_datetime(df_all['VSD'], format='mixed')\nprint(\"VSD: \", df_all['VSD'].min(), '-', df_all['VSD'].max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.633558Z","iopub.status.busy":"2025-06-17T16:51:22.633370Z","iopub.status.idle":"2025-06-17T16:51:22.811210Z","shell.execute_reply":"2025-06-17T16:51:22.810011Z"},"papermill":{"duration":0.191475,"end_time":"2025-06-17T16:51:22.813123","exception":false,"start_time":"2025-06-17T16:51:22.621648","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"e6d6bc25","cell_type":"code","source":"df_extra['VSD'] = pd.to_datetime(df_extra['VSD'], format='mixed')\nprint(\"VSD: \", df_extra['VSD'].min(), '-', df_extra['VSD'].max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.849711Z","iopub.status.busy":"2025-06-17T16:51:22.849078Z","iopub.status.idle":"2025-06-17T16:51:22.908485Z","shell.execute_reply":"2025-06-17T16:51:22.907738Z"},"papermill":{"duration":0.077133,"end_time":"2025-06-17T16:51:22.909625","exception":false,"start_time":"2025-06-17T16:51:22.832492","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"9d85bf90","cell_type":"code","source":"df_all['VSD-Order date'] = (df_all['VSD'] - df_all['Order date']).dt.days\n\ndf_all['VSD-Order date'].dtypes","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.934020Z","iopub.status.busy":"2025-06-17T16:51:22.933833Z","iopub.status.idle":"2025-06-17T16:51:22.968133Z","shell.execute_reply":"2025-06-17T16:51:22.967564Z"},"papermill":{"duration":0.047323,"end_time":"2025-06-17T16:51:22.969207","exception":false,"start_time":"2025-06-17T16:51:22.921884","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"1b7e5e1c","cell_type":"code","source":"df_all['VSD_dayofweek'] = df_all['VSD'].dt.dayofweek \ndf_all['VSD_hour'] = df_all['VSD'].dt.hour","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:22.992928Z","iopub.status.busy":"2025-06-17T16:51:22.992745Z","iopub.status.idle":"2025-06-17T16:51:23.109204Z","shell.execute_reply":"2025-06-17T16:51:23.108671Z"},"papermill":{"duration":0.129672,"end_time":"2025-06-17T16:51:23.110591","exception":false,"start_time":"2025-06-17T16:51:22.980919","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"2f828a59","cell_type":"code","source":"df_extra['VSD-Order date'] = (df_extra['VSD'] - df_extra['Order date']).dt.days\n\ndf_extra['VSD-Order date'].dtypes","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:23.135680Z","iopub.status.busy":"2025-06-17T16:51:23.135491Z","iopub.status.idle":"2025-06-17T16:51:23.149584Z","shell.execute_reply":"2025-06-17T16:51:23.149036Z"},"papermill":{"duration":0.027677,"end_time":"2025-06-17T16:51:23.150859","exception":false,"start_time":"2025-06-17T16:51:23.123182","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"5268afa2","cell_type":"code","source":"df_extra['VSD_dayofweek'] = df_extra['VSD'].dt.dayofweek \ndf_extra['VSD_hour'] = df_extra['VSD'].dt.hour","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:23.180665Z","iopub.status.busy":"2025-06-17T16:51:23.180189Z","iopub.status.idle":"2025-06-17T16:51:23.216125Z","shell.execute_reply":"2025-06-17T16:51:23.215649Z"},"papermill":{"duration":0.053273,"end_time":"2025-06-17T16:51:23.217181","exception":false,"start_time":"2025-06-17T16:51:23.163908","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"cc7746d1","cell_type":"code","source":"# from sklearn.pipeline import Pipeline\nfrom imblearn.pipeline import Pipeline  \nfrom imblearn.over_sampling import SMOTE\nfrom sklearn.compose import ColumnTransformer\nfrom sklearn.preprocessing import OneHotEncoder, StandardScaler\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.impute import SimpleImputer\nfrom lightgbm import LGBMClassifier\nimport pandas as pd","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:23.243632Z","iopub.status.busy":"2025-06-17T16:51:23.243399Z","iopub.status.idle":"2025-06-17T16:51:30.839527Z","shell.execute_reply":"2025-06-17T16:51:30.838665Z"},"papermill":{"duration":7.611593,"end_time":"2025-06-17T16:51:30.840952","exception":false,"start_time":"2025-06-17T16:51:23.229359","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"d35c582a","cell_type":"code","source":"X = df_all.drop(df_all_drop, axis=1).drop(['label'], axis=1).copy()\ny = df_all.drop(df_all_drop, axis=1)['label'].copy()\n\nnumeric_features = X.select_dtypes(exclude='object').columns.tolist()\ncategorical_features = X.select_dtypes(include='object').columns.tolist()\n\nnumeric_transformer = Pipeline(steps=[\n    ('imputer', SimpleImputer(strategy='median')),\n    ('scaler', StandardScaler())\n])\n\ncategorical_transformer = Pipeline(steps=[\n    ('imputer', SimpleImputer(strategy='most_frequent')),\n    ('encoder', OneHotEncoder(handle_unknown='ignore'))\n])\n\npreprocessor = ColumnTransformer(transformers=[\n    ('num', numeric_transformer, numeric_features),\n    ('cat', categorical_transformer, categorical_features)\n])","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:30.865699Z","iopub.status.busy":"2025-06-17T16:51:30.865239Z","iopub.status.idle":"2025-06-17T16:51:31.827821Z","shell.execute_reply":"2025-06-17T16:51:31.827260Z"},"papermill":{"duration":0.975912,"end_time":"2025-06-17T16:51:31.829121","exception":false,"start_time":"2025-06-17T16:51:30.853209","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"97cd43ae","cell_type":"code","source":"X_extra = df_extra.drop(df_extra_drop, axis=1).drop(['label'], axis=1).copy()\ny_extra = df_extra.drop(df_extra_drop, axis=1)['label'].copy()\n\nnumeric_features_extra = X_extra.select_dtypes(exclude='object').columns.tolist()\ncategorical_features_extra = X_extra.select_dtypes(include='object').columns.tolist()\n\nnumeric_transformer_extra = Pipeline(steps=[\n    ('imputer', SimpleImputer(strategy='median')),\n    ('scaler', StandardScaler())\n])\n\ncategorical_transformer_extra = Pipeline(steps=[\n    ('imputer', SimpleImputer(strategy='most_frequent')),\n    ('encoder', OneHotEncoder(handle_unknown='ignore'))\n])\n\npreprocessor_extra = ColumnTransformer(transformers=[\n    ('num', numeric_transformer_extra, numeric_features_extra),\n    ('cat', categorical_transformer_extra, categorical_features_extra)\n])","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:31.854858Z","iopub.status.busy":"2025-06-17T16:51:31.854626Z","iopub.status.idle":"2025-06-17T16:51:32.078765Z","shell.execute_reply":"2025-06-17T16:51:32.078175Z"},"papermill":{"duration":0.237752,"end_time":"2025-06-17T16:51:32.080111","exception":false,"start_time":"2025-06-17T16:51:31.842359","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"7e605dd5","cell_type":"code","source":"X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2, random_state=42)\nX_train_extra, X_val_extra, y_train_extra, y_val_extra = train_test_split(X, y, test_size=0.2, random_state=42)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:32.105055Z","iopub.status.busy":"2025-06-17T16:51:32.104822Z","iopub.status.idle":"2025-06-17T16:51:33.124318Z","shell.execute_reply":"2025-06-17T16:51:33.123655Z"},"papermill":{"duration":1.033151,"end_time":"2025-06-17T16:51:33.125615","exception":false,"start_time":"2025-06-17T16:51:32.092464","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"96873116","cell_type":"code","source":"df_test = df_pilot_10.copy()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.150287Z","iopub.status.busy":"2025-06-17T16:51:33.149615Z","iopub.status.idle":"2025-06-17T16:51:33.173571Z","shell.execute_reply":"2025-06-17T16:51:33.172824Z"},"papermill":{"duration":0.037174,"end_time":"2025-06-17T16:51:33.174741","exception":false,"start_time":"2025-06-17T16:51:33.137567","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"6e10fa16","cell_type":"code","source":"df_test['Order date'] = pd.to_datetime(df_test['Order date'], format='mixed')\nprint(\"Order date: \", df_test['Order date'].min(), '-', df_test['Order date'].max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.198318Z","iopub.status.busy":"2025-06-17T16:51:33.198064Z","iopub.status.idle":"2025-06-17T16:51:33.219679Z","shell.execute_reply":"2025-06-17T16:51:33.219072Z"},"papermill":{"duration":0.03442,"end_time":"2025-06-17T16:51:33.220709","exception":false,"start_time":"2025-06-17T16:51:33.186289","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"520ecdce","cell_type":"code","source":"df_test['order_dayofweek'] = df_test['Order date'].dt.dayofweek \ndf_test['order_hour'] = df_test['Order date'].dt.hour","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.245341Z","iopub.status.busy":"2025-06-17T16:51:33.245121Z","iopub.status.idle":"2025-06-17T16:51:33.256191Z","shell.execute_reply":"2025-06-17T16:51:33.255510Z"},"papermill":{"duration":0.024294,"end_time":"2025-06-17T16:51:33.257337","exception":false,"start_time":"2025-06-17T16:51:33.233043","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"28d297c2","cell_type":"code","source":"df_test['VSD'] = pd.to_datetime(df_test['VSD'], format='mixed')\nprint(\"VSD: \", df_test['VSD'].min(), '-', df_test['VSD'].max())","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.281372Z","iopub.status.busy":"2025-06-17T16:51:33.280803Z","iopub.status.idle":"2025-06-17T16:51:33.298325Z","shell.execute_reply":"2025-06-17T16:51:33.297651Z"},"papermill":{"duration":0.03065,"end_time":"2025-06-17T16:51:33.299412","exception":false,"start_time":"2025-06-17T16:51:33.268762","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"969cfb56","cell_type":"code","source":"df_test['VSD-Order date'] = (df_test['VSD'] - df_test['Order date']).dt.days\n\ndf_test['VSD-Order date'].dtypes","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.323471Z","iopub.status.busy":"2025-06-17T16:51:33.323292Z","iopub.status.idle":"2025-06-17T16:51:33.331003Z","shell.execute_reply":"2025-06-17T16:51:33.330530Z"},"papermill":{"duration":0.020847,"end_time":"2025-06-17T16:51:33.331975","exception":false,"start_time":"2025-06-17T16:51:33.311128","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"38ab811f","cell_type":"code","source":"df_test['VSD_dayofweek'] = df_test['VSD'].dt.dayofweek \ndf_test['VSD_hour'] = df_test['VSD'].dt.hour","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.356072Z","iopub.status.busy":"2025-06-17T16:51:33.355895Z","iopub.status.idle":"2025-06-17T16:51:33.367718Z","shell.execute_reply":"2025-06-17T16:51:33.367249Z"},"papermill":{"duration":0.025194,"end_time":"2025-06-17T16:51:33.368754","exception":false,"start_time":"2025-06-17T16:51:33.343560","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"13fa71ec","cell_type":"code","source":"X_test = df_test[X.columns].copy()\n# X_test_extra = df_test[X_extra.columns].copy()","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.392825Z","iopub.status.busy":"2025-06-17T16:51:33.392629Z","iopub.status.idle":"2025-06-17T16:51:33.438726Z","shell.execute_reply":"2025-06-17T16:51:33.438174Z"},"papermill":{"duration":0.059451,"end_time":"2025-06-17T16:51:33.440072","exception":false,"start_time":"2025-06-17T16:51:33.380621","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"934a3119","cell_type":"code","source":"from sklearn.decomposition import PCA\n\nmodel = Pipeline(steps=[\n    ('preprocessor', preprocessor),\n    ('oversample', SMOTE(random_state=42)),\n    ('scaler', StandardScaler()),\n    ('pca', PCA(n_components='mle', svd_solver='full')),\n    ('classifier', LGBMClassifier())\n])","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.464474Z","iopub.status.busy":"2025-06-17T16:51:33.464245Z","iopub.status.idle":"2025-06-17T16:51:33.468136Z","shell.execute_reply":"2025-06-17T16:51:33.467632Z"},"papermill":{"duration":0.017012,"end_time":"2025-06-17T16:51:33.469119","exception":false,"start_time":"2025-06-17T16:51:33.452107","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"43893583","cell_type":"code","source":"# from imblearn.over_sampling import RandomOverSampler\n# from collections import Counter\n\n# print(\"Phân bố ban đầu:\", Counter(y_train))\n\n# ros = RandomOverSampler(random_state=42)\n# X_resampled, y_resampled = ros.fit_resample(X_train, y_train)\n\n# print(\"Phân bố sau khi oversample:\", Counter(y_resampled))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.492696Z","iopub.status.busy":"2025-06-17T16:51:33.492525Z","iopub.status.idle":"2025-06-17T16:51:33.495364Z","shell.execute_reply":"2025-06-17T16:51:33.494841Z"},"papermill":{"duration":0.0158,"end_time":"2025-06-17T16:51:33.496425","exception":false,"start_time":"2025-06-17T16:51:33.480625","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"37886d78","cell_type":"code","source":"model.fit(X_train, y_train)\ny_pred = model.predict(X_val)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:51:33.520094Z","iopub.status.busy":"2025-06-17T16:51:33.519913Z","iopub.status.idle":"2025-06-17T16:52:18.914163Z","shell.execute_reply":"2025-06-17T16:52:18.913595Z"},"papermill":{"duration":45.407378,"end_time":"2025-06-17T16:52:18.915430","exception":false,"start_time":"2025-06-17T16:51:33.508052","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"0aaa3d7e","cell_type":"code","source":"from sklearn.metrics import f1_score\n\nf1 = f1_score(y_val, y_pred, average='binary') \nprint(\"F1-score:\", f1)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:52:18.940638Z","iopub.status.busy":"2025-06-17T16:52:18.939975Z","iopub.status.idle":"2025-06-17T16:52:19.043683Z","shell.execute_reply":"2025-06-17T16:52:19.043043Z"},"papermill":{"duration":0.117091,"end_time":"2025-06-17T16:52:19.044720","exception":false,"start_time":"2025-06-17T16:52:18.927629","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"f348d371","cell_type":"code","source":"# print(\"Phân bố ban đầu:\", Counter(y))\n\n# ros_big = RandomOverSampler(random_state=42)\n# X_resampled_big, y_resampled_big = ros.fit_resample(X, y)\n\n# print(\"Phân bố sau khi oversample:\", Counter(y_resampled_big))","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:52:19.069941Z","iopub.status.busy":"2025-06-17T16:52:19.069427Z","iopub.status.idle":"2025-06-17T16:52:19.072278Z","shell.execute_reply":"2025-06-17T16:52:19.071741Z"},"papermill":{"duration":0.016187,"end_time":"2025-06-17T16:52:19.073209","exception":false,"start_time":"2025-06-17T16:52:19.057022","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"06e4927f","cell_type":"code","source":"model.fit(X, y)\ny_pred_big = model.predict(X_test)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:52:19.098211Z","iopub.status.busy":"2025-06-17T16:52:19.097794Z","iopub.status.idle":"2025-06-17T16:53:20.028483Z","shell.execute_reply":"2025-06-17T16:53:20.027657Z"},"papermill":{"duration":60.944576,"end_time":"2025-06-17T16:53:20.029832","exception":false,"start_time":"2025-06-17T16:52:19.085256","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"ac01c43a","cell_type":"code","source":"df = pd.read_csv(\"/kaggle/input/ds-108-p-21-assigment-06/sample_Solution.csv\")\n\ndf.info()\n","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:53:20.055855Z","iopub.status.busy":"2025-06-17T16:53:20.055433Z","iopub.status.idle":"2025-06-17T16:53:20.109731Z","shell.execute_reply":"2025-06-17T16:53:20.109008Z"},"papermill":{"duration":0.067913,"end_time":"2025-06-17T16:53:20.110835","exception":false,"start_time":"2025-06-17T16:53:20.042922","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"a5472cd2","cell_type":"code","source":"df['label'] = y_pred_big","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:53:20.136250Z","iopub.status.busy":"2025-06-17T16:53:20.136011Z","iopub.status.idle":"2025-06-17T16:53:20.139600Z","shell.execute_reply":"2025-06-17T16:53:20.139042Z"},"papermill":{"duration":0.017073,"end_time":"2025-06-17T16:53:20.140661","exception":false,"start_time":"2025-06-17T16:53:20.123588","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"937c6b9f","cell_type":"code","source":"df.to_csv(\"submission.csv\", index= False)","metadata":{"execution":{"iopub.execute_input":"2025-06-17T16:53:20.168073Z","iopub.status.busy":"2025-06-17T16:53:20.167884Z","iopub.status.idle":"2025-06-17T16:53:20.248782Z","shell.execute_reply":"2025-06-17T16:53:20.248259Z"},"papermill":{"duration":0.095936,"end_time":"2025-06-17T16:53:20.249773","exception":false,"start_time":"2025-06-17T16:53:20.153837","status":"completed"},"tags":[]},"outputs":[],"execution_count":null},{"id":"b9e86c87","cell_type":"code","source":"","metadata":{"papermill":{"duration":0.011953,"end_time":"2025-06-17T16:53:20.274107","exception":false,"start_time":"2025-06-17T16:53:20.262154","status":"completed"},"tags":[]},"outputs":[],"execution_count":null}]}