{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.10.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"none","dataSources":[{"sourceId":50160,"databundleVersionId":7921029,"sourceType":"competition"}],"dockerImageVersionId":30664,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import warnings\nwarnings.filterwarnings(\"ignore\")","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2024-03-17T17:05:01.123267Z","iopub.execute_input":"2024-03-17T17:05:01.124419Z","iopub.status.idle":"2024-03-17T17:05:01.138020Z","shell.execute_reply.started":"2024-03-17T17:05:01.124347Z","shell.execute_reply":"2024-03-17T17:05:01.137109Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"import pandas as pd\nimport numpy as np\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.ensemble import RandomForestClassifier\nfrom sklearn.metrics import roc_auc_score\n\n# Load datasets\ntrain_base = pd.read_csv(\"/kaggle/input/home-credit-credit-risk-model-stability/csv_files/train/train_base.csv\")\ntest_base = pd.read_csv(\"/kaggle/input/home-credit-credit-risk-model-stability/csv_files/test/test_base.csv\")\n\n# Data Preprocessing for Training Set\ntrain_target = train_base['target']\ntrain_data = train_base.drop(columns=['target'])  # Drop the target variable from features\n\n# Assuming 'date_decision' is a date column in the training set\ntrain_data['date_decision'] = pd.to_datetime(train_data['date_decision'])\ntrain_data['year_decision'] = train_data['date_decision'].dt.year\ntrain_data['month_decision'] = train_data['date_decision'].dt.month\ntrain_data['day_decision'] = train_data['date_decision'].dt.day\ntrain_data.drop(columns=['date_decision'], inplace=True)  # Drop the original date column\n\n# Assuming there are categorical variables that need encoding in the training set\ntrain_data = pd.get_dummies(train_data)  # One-hot encode categorical variables\n\n# Assuming you've handled missing values in the training set\ntrain_data.fillna(0, inplace=True)  # Filling missing values with 0, replace with appropriate strategy\n\n# Split data into training and validation sets\nX_train, X_val, y_train, y_val = train_test_split(train_data, train_target, test_size=0.2, random_state=42)\n\n# Train model\nmodel = RandomForestClassifier(n_estimators=100, random_state=42)\nmodel.fit(X_train, y_train)\n\n# Evaluate model\ny_val_pred = model.predict_proba(X_val)[:, 1]\nauc_score = roc_auc_score(y_val, y_val_pred)\nprint(\"Validation AUC:\", auc_score)\n\n# Data Preprocessing for Test Set\n# Assuming 'date_decision' is a date column in the test set\ntest_base['date_decision'] = pd.to_datetime(test_base['date_decision'])\ntest_base['year_decision'] = test_base['date_decision'].dt.year\ntest_base['month_decision'] = test_base['date_decision'].dt.month\ntest_base['day_decision'] = test_base['date_decision'].dt.day\ntest_base.drop(columns=['date_decision'], inplace=True)  # Drop the original date column\n\n# Assuming there are categorical variables that need encoding in the test set\ntest_data = pd.get_dummies(test_base)  # One-hot encode categorical variables\n\n# Assuming you've handled missing values in the test set\ntest_data.fillna(0, inplace=True)  # Filling missing values with 0, replace with appropriate strategy\n\n# Make predictions for test set\ntest_predictions = model.predict_proba(test_data)[:, 1]\n\n# Prepare submission file\nsubmission_df = pd.DataFrame({'case_id': test_base['case_id'], 'score': test_predictions})\nsubmission_df.to_csv('submission.csv', index=False)","metadata":{"execution":{"iopub.status.busy":"2024-03-17T17:05:01.139925Z","iopub.execute_input":"2024-03-17T17:05:01.140577Z","iopub.status.idle":"2024-03-17T17:12:24.941919Z","shell.execute_reply.started":"2024-03-17T17:05:01.140528Z","shell.execute_reply":"2024-03-17T17:12:24.940451Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]}]}