Hmmm, this pretty much looks like homework this list is not intended for. Please ask your supervisor/teacher why nautodata$mydata.MPG is not numeric if you cannot find that out yourself.

Best,
Uwe Ligges

On 01.03.2016 00:49, Alnazer Elbedairy wrote:
dear all
attached you will find a csv datasets, there are many steps before these
they work properly. but I have errors in these steps I guess. any help
appreciated.

Step1: convert the data from continuous to categorical

##nautodata is the normalized data. I did it in the previous steps.

MPGCat= c(0,10,15,20,25,30, 35, 40)
MPG <- cut(nautodata$mydata.MPG, MPGCat,labels = c(1:7))
nautodata = data.frame(MPG, nautodata[2:7])
nautodata


Step 2: divided into 10 folds: as follow


fold1= nautodata[1:39,]
fold2= nautodata[40:79,]
fold3= nautodata[80:119,]
fold4= nautodata[120:159,]
fold5= nautodata[160:199,]
fold6= nautodata[200:139,]
fold7= nautodata[240:279,]
fold8= nautodata[280:319,]
fold9= nautodata[320:359,]
fold10= nautodata[360:398,]

datafolds= list(fold1, fold2, fold3, fold4,
fold5,fold6,fold7,fold8,fold9,fold10)

step3:
##conduct 10-fold cross validation on KNN

KNNFoldError= c(0,0,0,0,0,0,0,0,0,0)
MGFoldError=  c(0,0,0,0,0,0,0,0,0,0)

for (i in 1:10)
{
trainData = NULL
for(j in 1:10)
{
   if(i !=j)
     {
      trainData = rbind(trainData, datafolds[[j]])
     }
   else
     testData = datafolds[[j]]
}
#print (trainData)
#print(testData)
   targetData = trainData$MPG
   testTargetData = testData$MPG

   trainData$MPG= NULL
   testData$MPG = NULL

   M1 = knn(train=trainData, test=testData, cl=targetData, k=20)
   M2 = MajorityGuessing(testData,MPGCat)
   print(table(testTargetData,M1))
   print(testTargetData)
   print(M1)
   print(M2)

   KNNFoldError[i] = round(mean(testTargetData != M1), 3)
   MGFoldError[i] = round(mean(testTargetData != M2), 3)
   print(KNNFoldError)
   print(MGFoldError)
}

## these are the error I got:
Quitting from lines 80-86 (l...@m.rmd)
Error in cut.default(nautodata$mydata.MPG, MPGCat, labels = c(1:7)) :
   'x' must be numeric
Calls: <Anonymous> ... withCallingHandlers -> withVisible -> eval -> eval
-> cut -> cut.default
Execution halted
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to