#file.choose()
base_de_datos <- read.csv ("/Users/ricardogc/Downloads/José Luis titanic.csv .csv")
summary(base_de_datos)
## pclass survived name
## Min. :1.000 Min. :0.000 Connolly, Miss. Kate : 2
## 1st Qu.:2.000 1st Qu.:0.000 Kelly, Mr. James : 2
## Median :3.000 Median :0.000 : 1
## Mean :2.295 Mean :0.382 Abbing, Mr. Anthony : 1
## 3rd Qu.:3.000 3rd Qu.:1.000 Abbott, Master. Eugene Joseph: 1
## Max. :3.000 Max. :1.000 Abbott, Mr. Rossmore Edward : 1
## NA's :1 NA's :1 (Other) :1302
## sex age sibsp parch
## : 1 Min. : 0.1667 Min. :0.0000 Min. :0.000
## female:466 1st Qu.:21.0000 1st Qu.:0.0000 1st Qu.:0.000
## male :843 Median :28.0000 Median :0.0000 Median :0.000
## Mean :29.8811 Mean :0.4989 Mean :0.385
## 3rd Qu.:39.0000 3rd Qu.:1.0000 3rd Qu.:0.000
## Max. :80.0000 Max. :8.0000 Max. :9.000
## NA's :264 NA's :1 NA's :1
## ticket fare cabin embarked
## CA. 2343: 11 Min. : 0.000 :1015 : 3
## 1601 : 8 1st Qu.: 7.896 C23 C25 C27 : 6 C:270
## CA 2144 : 8 Median : 14.454 B57 B59 B63 B66: 5 Q:123
## 3101295 : 7 Mean : 33.295 G6 : 5 S:914
## 347077 : 7 3rd Qu.: 31.275 B96 B98 : 4
## 347082 : 7 Max. :512.329 C22 C26 : 4
## (Other) :1262 NA's :2 (Other) : 271
## boat body home.dest
## :824 Min. : 1.0 :565
## 13 : 39 1st Qu.: 72.0 New York, NY : 64
## C : 38 Median :155.0 London : 14
## 15 : 37 Mean :160.8 Montreal, PQ : 10
## 14 : 33 3rd Qu.:256.0 Cornwall / Akron, OH: 9
## 4 : 31 Max. :328.0 Paris, France : 9
## (Other):308 NA's :1189 (Other) :639
Titanic <- base_de_datos[,c("pclass","age","sex","survived")]
Titanic$survived <- as.factor(ifelse(Titanic$survived==0, "Murió", "Sobrevivió"))
Titanic$pclass <- as.factor(Titanic$pclass)
Titanic$sex <- as.factor(Titanic$sex)
str(Titanic)
## 'data.frame': 1310 obs. of 4 variables:
## $ pclass : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
## $ age : num 29 0.917 2 30 25 ...
## $ sex : Factor w/ 3 levels "","female","male": 2 3 2 3 2 3 2 3 2 3 ...
## $ survived: Factor w/ 2 levels "Murió","Sobrevivió": 2 2 1 1 1 2 2 1 2 1 ...
sum(is.na(Titanic))
## [1] 266
Titanic <- na.omit(Titanic)
library(rpart)
arbol <- rpart(formula=survived ~ ., data = Titanic)
arbol
## n= 1046
##
## node), split, n, loss, yval, (yprob)
## * denotes terminal node
##
## 1) root 1046 427 Murió (0.59177820 0.40822180)
## 2) sex=male 658 135 Murió (0.79483283 0.20516717)
## 4) age>=9.5 615 110 Murió (0.82113821 0.17886179) *
## 5) age< 9.5 43 18 Sobrevivió (0.41860465 0.58139535)
## 10) pclass=3 29 11 Murió (0.62068966 0.37931034) *
## 11) pclass=1,2 14 0 Sobrevivió (0.00000000 1.00000000) *
## 3) sex=female 388 96 Sobrevivió (0.24742268 0.75257732)
## 6) pclass=3 152 72 Murió (0.52631579 0.47368421)
## 12) age>=1.5 145 66 Murió (0.54482759 0.45517241) *
## 13) age< 1.5 7 1 Sobrevivió (0.14285714 0.85714286) *
## 7) pclass=1,2 236 16 Sobrevivió (0.06779661 0.93220339) *
library(rpart.plot)
rpart.plot(arbol)
prp(arbol,extra = 7,prefix = "fracción/n")
arbol <- rpart(formula=survived ~ ., data = Titanic)
arbol
## n= 1046
##
## node), split, n, loss, yval, (yprob)
## * denotes terminal node
##
## 1) root 1046 427 Murió (0.59177820 0.40822180)
## 2) sex=male 658 135 Murió (0.79483283 0.20516717)
## 4) age>=9.5 615 110 Murió (0.82113821 0.17886179) *
## 5) age< 9.5 43 18 Sobrevivió (0.41860465 0.58139535)
## 10) pclass=3 29 11 Murió (0.62068966 0.37931034) *
## 11) pclass=1,2 14 0 Sobrevivió (0.00000000 1.00000000) *
## 3) sex=female 388 96 Sobrevivió (0.24742268 0.75257732)
## 6) pclass=3 152 72 Murió (0.52631579 0.47368421)
## 12) age>=1.5 145 66 Murió (0.54482759 0.45517241) *
## 13) age< 1.5 7 1 Sobrevivió (0.14285714 0.85714286) *
## 7) pclass=1,2 236 16 Sobrevivió (0.06779661 0.93220339) *
#install.packages("rpart.plot")
library(rpart.plot)
rpart.plot(arbol)
prp(arbol,extra = 7,prefix = "fracción/n")
#install.packages("shiny")
#library(shiny)
Se analizo un arbol de decisiones para observar los porcentajes que tenian los pasajeros del Titanic para sobrevivir. Se tomaron en cuenta los diferentes factores por lo cuales hubieron muertes en el barco los cuales son: clase, años, genero y probabilidad de sobrevivir.
El 63% de los Hombres murieron y el 37% sobrevivieron.
Niños menores a 9 años tenían mayor oportunidad de sobrevivir.
Del 63% de los hombres que murieron el 59% eran mayores de 9.5 años.
Debemos de tomar en cuenta a la hora de progrmar el no equivocarnos con errores de dedo como lo son comas, perentesis ya que esto genera que el sistema de R muestre en los comandos cuando se corre como error.
Esto se puede corregir si tenemos cuidado a la hora de programar y ser cuidadoso con los codigos que estamos estableciendo, asi mismo seriamos mucho más eficientes y claros con lo que queremos analizar.