El siguiente código hace parte de una opción como modelo predictivo en el conjunto de datos referente a los pasajeros del titanic el dia de la tragedia. Lo que se requiere es predecir una serie de valores sobre la supervivencia de ciertos pasajeros, la predicción se dará tomando las otras características de los pasajeros en el conjunto de datos. El modelo a realizar estará basado en una regresión lineal y usará dos conjuntos de datos, uno de práctica y otro a rellenar.
#titanic.df <- read.csv(file.choose())
#summary(titanic.df)
#View(titanic.df)
#resp_titanic <- read.csv(file.choose())
#summary(resp_titanic)
#View(titanic.df)
#Revisar valores nulos:
#colSums(is.na(titanic.df))
#titanic.df$Cabin <- NULL
#Tratamiento de nulos:
#titanic.df$Age[is.na(titanic.df$Age)] <- 29
#Definiendo factores y creando matrices:
#Sex_ = factor(titanic.df$Sex)
#val_sex = model.matrix(~Sex_)
#View(val_sex)
#embarked_ = factor(titanic.df$Embarked)
#val_embarked = model.matrix(~embarked_)
#View(val_embarked)
#Uniendo y corrigiendo datos:
#titanic.df <- data.frame(titanic.df, val_sex[,2], val_embarked[,2:4])
#titanic.df$Sex = val_sex[,2]
#titanic.df$val_sex...2. <- NULL
#Revisar volores nulos:
#colSums(is.na(resp_titanic))
#resp_titanic$Cabin <- NULL
#Tratamiento de nulos:
#resp_titanic$Age[is.na(resp_titanic$Age)] <- 30
#resp_titanic$Fare[is.na(resp_titanic$Fare)] <- 35
#Definiendo factores y creando matrices:
#Sex = factor(resp_titanic$Sex)
#val_sex_resp = model.matrix(~Sex)
#Embarked = factor(resp_titanic$Embarked)
#val_embarked_res = model.matrix(~Embarked)
#Uniendo y corrigiendo datos:
#resp_titanic <- data.frame(resp_titanic, val_sex_resp[, 2], val_embarked_resp[, 2:4])
#resp_titanic$Sex <- val_sex_resp[, 2]
#resp_titanic$val_sex_resp...2. <- NULL
#Haciendo una sigmoide:
#sigmoide = function(x){1/(1+exp(-x))}
#x <- seq(-5,5,0.01)
#plot(x, sigmoide(x), col="red")
#Generando RL:
#RL_titanic <- glm(Survived ~ Pclass + Sex + Age + SibSp + Parch + Fare + embarked_C + embarked_Q + embarked_S, data = titanic.df, family = binomial)
#summary(RL_titanic)
#Usando modelo para predecir la supervivencia:
#prediciones <- predict(RL_titanic, resp_titanic)
#View(prediciones)
#Formateando los valores de la predicción:
#mod_pred <- ifelse(prediciones > 0.5, 1, 0)
#View(mod_pred)
#Rellenando valores:
#complete$Survived <- mod_pred
#View(complete)