R语言练习-利用决策树模型分析泰坦尼克生还率
三、利用ticket识别家庭,后分析
1.添加家庭号
#计算各家庭成员的生还率
f$train$type<-"T"
f$validation$type<-"V"
all<-rbind(f$train,f$validation)
ctree_model<-ctree(
survived~pclass+sex+age+sibsp+parch+fare+embarked,
data=f$train
)
all$prob<-sapply(
predict(ctree_model,newdata=all,
type="prob"),
function(result){
result[1]})
#添加家庭ID
library(plyr)
family_idx<-0
ticket_based_family_id<-ddply(all,.(ticket),function(rows){
family_idx<<-family_idx+1 #family_idx是在函数外部声明的变量,使用<<-运算符进行赋值
return(data.frame(f