2017-03-22 6 views
1

列車データにモデルをフィットさせています。モデルが訓練されると、私は次のコードr5でc5.0でテストデータを予測する正しい方法

model <- c5.0(Target~.,data=train[,-1]) # removing Client_Code 

でモデルを訓練しています私の変数

Train Variables = Client_Code,A,B,C,D,E,Target 
Test Variables = Client_Code,A,B,C,D,E,Target 

以下は、私はコード

私のテストとして
model_test <- predict(model,test[,-1]) 

次でそれを予測していますデータはまた私が予測しているTargetの列を持っています。予測の正しい方法の上にあるか、別の変数にターゲット変数を格納してからそれをmodに渡す必要があります私がそれを訓練し、テストデータセットを予測しながら同じことをしています。

+0

これは間違っていると思われる理由はありますか?エラーなどが発生しましたか? – MrFlick

答えて

1

予測したいクラス変数を分けることはかなり大変だと思います。例えばcredit dataの場合:

library(C50) 

# Load data 
crx <- read.table(file="./crx.data", header=FALSE, sep=",") 

set.seed(1234) 
# Randomize data 
crx <- crx[ sample(nrow(crx)), ] 

# Classification data and its labels 
X <- crx[,1:15] 
y <- crx[,16] 

# Divide into training and test data 
trainX <- X[1:500,] 
trainy <- y[1:500] 
testX <- X[501:690,] 
testy <- y[501:690] 

# Build model 
model <- C50::C5.0(trainX, trainy) 
summary(model) 

# Predicting values 
p <- predict(model, testX, type="class") 

# Check accuracy 
accuracy <- sum(p == testy)/length(p) 
paste0((accuracy * 100), "% accuracy") 
関連する問題