{"metadata":{"kernelspec":{"name":"ir","display_name":"R","language":"R"},"language_info":{"name":"R","codemirror_mode":"r","pygments_lexer":"r","mimetype":"text/x-r-source","file_extension":".r","version":"4.0.5"},"kaggle":{"accelerator":"none","dataSources":[{"sourceId":80687,"databundleVersionId":8672016,"sourceType":"competition"}],"dockerImageVersionId":30618,"isInternetEnabled":true,"language":"r","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"- 이 코드는 완벽하지 않아요\n- roc-auc 평가지표일 때 predict과 predict_proba를 비교해보세요\n- 검증데이터를 사용해보세요!","metadata":{}},{"cell_type":"code","source":"# 필요한 라이브러리를 불러옵니다.\nlibrary(data.table)  # 데이터 처리\nlibrary(randomForest)  # 랜덤포레스트 모델\n\n# 데이터 읽어오기\ntrain <- fread(\"/kaggle/input/big-data-analytics-certification-kr-2024-2/train.csv\")\ntest <- fread(\"/kaggle/input/big-data-analytics-certification-kr-2024-2/test.csv\")\n\n# 입력 특성과 타겟 변수 분리\n# 안전하게 컬럼을 제거합니다.\nX_train <- copy(train)\nX_test <- copy(test)\nset(X_train, j = c(\"id\", \"Class\"), value = NULL)  # train 데이터셋에서 id와 Class 컬럼 제거\nset(X_test, j = \"id\", value = NULL)  # test 데이터셋에서 id 컬럼 제거\n\ny_train <- as.factor(train$Class)  # 타겟 변수를 팩터로 변환\n\n# 랜덤포레스트 모델 학습\nmodel <- randomForest(x = X_train, y = y_train, ntree = 100)  # ntree는 트리의 개수\n\n# 테스트 데이터에 대한 예측\ny_pred <- predict(model, X_test)\n\n# 제출 파일 생성\nsubmission <- data.table(id = test$id, Class = y_pred)\nfwrite(submission, file = \"submission.csv\", sep = \",\", quote = FALSE, row.names = FALSE)\n","metadata":{"_uuid":"051d70d956493feee0c6d64651c6a088724dca2a","_execution_state":"idle","execution":{"iopub.status.busy":"2024-05-27T16:46:57.627352Z","iopub.execute_input":"2024-05-27T16:46:57.630727Z","iopub.status.idle":"2024-05-27T16:49:26.381645Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]}]}