我创建了以下函数以适合C5.0模型,并使用sink
将模型摘要写入txt文件。在C5.0()中,x和y由变量Col_Pred
和Str_Resp
组成,因此仅打印变量名。所以我想在打印模型摘要之前打印变量值。可能是因为Col_Pred
太长,当R认为其达到行的长度限制时,“ Col_Pred =”出现了多次。任何人都知道如何在模型摘要中调用模型时避免打印不必要的'Col_Pred ='或打印Col_Pred
的值。谢谢
C50Training<-function(DF,Col_Pred,Str_Resp,Num_Rati=.75,Str_PathSum,Str_PathMode){
library(C50);library(caret);library(e1071)
set.seed(1234)
ModeName<-C5.0(x=DF[,Col_Pred],y=DF[,c(Str_Resp)],
control=C5.0Control(sample=Num_Rati))
sink(file=paste(Str_PathSum,"/SumC50",gsub("-","",gsub(":","",gsub(" ","",as.character(Sys.time())))),".txt",sep=""))
cat(
paste("DF=",deparse(substitute(DF)),sep=""),"\n",
paste("Str_Resp=",deparse(substitute(Str_Resp)),sep=""),"\n",
paste("Col_Pred=",deparse(substitute(Col_Pred)),sep=""),"\n",
paste("Num_Rati=",deparse(substitute(Num_Rati)),sep=""),"\n"
)
print(summary(ModeName))
sink()
}