{"cells":[{"metadata":{},"cell_type":"markdown","source":"# Load Data"},{"metadata":{"_uuid":"051d70d956493feee0c6d64651c6a088724dca2a","_execution_state":"idle","trusted":true},"cell_type":"code","source":"library(readr)\ndf <- read_csv(\"../input/cat-in-the-dat-ii/train.csv\")\nhead(df)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"library(caTools)\nsplit <- sample.split(df$target, SplitRatio = 0.8)\ndf_train <- df[split == TRUE, ]\ndf_code <- df[split == FALSE, ]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"vars <- c(\"bin_0\", \"bin_1\", \"bin_2\", \"bin_3\", \"bin_4\", \"nom_0\", \"nom_1\", \"nom_2\", \"nom_3\", \"nom_4\", \"nom_5\", \"nom_6\", \"nom_7\", \"nom_8\", \"nom_9\", \"ord_0\", \"ord_1\", \"ord_2\", \"ord_3\", \"ord_4\", \"ord_5\", \"day\", \"month\")","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"library(vtreat) #one hot encoding to numerical and auto imputing\ntreatplan <- designTreatmentsC(df_code, vars, \"target\", TRUE, rareCount = 10, rareSig = 0.3)\nlevels(as.factor(treatplan$scoreFrame$code))","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df_treat <- prepare(treatplan, df_train, pruneSig = 0.03)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"library(dplyr)\ndf_cor <- as.data.frame(cor(df_treat)) %>%\n  select(target) %>%\n  abs() %>%\n  filter(target > 0.04, target != 1) %>%\n  rownames() %>%\n  as.character()\ndf_cor","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"model <- glm(as.formula(paste(\"target\", paste(df_cor, collapse = \" + \"), sep = \" ~ \")),\n             df_treat,\n             family = binomial(\"logit\"))","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"test <- read_csv(\"../input/cat-in-the-dat-ii/test.csv\")\ntest_treat <- prepare(treatplan, test, pruneSig = 0.03)\ntest$target <- predict(model, test_treat)\ntest$id <- as.integer(test$id)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"submission <- test[ , c(\"id\", \"target\")]\nhead(submission)\nwrite.csv(submission, file = \"submission.csv\", row.names = FALSE)","execution_count":null,"outputs":[]}],"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":"3.6.3"}},"nbformat":4,"nbformat_minor":4}