将数据集转换为离散量以评估R中的模型准确性,为什么as.factor不起作用?

时间:2018-10-28 07:09:27

标签: r discretization j48

我使用以下electricity数据集。数据包括连续值。我想使用J48并将其与其他模型以及实际值进行比较。但是,即使我使用as.factor也可以获得0的准确性。 这是我的代码:

dat1 <- fread(.. electricity dataset...)

dat1$Date<-NULL
dat1$Time<-NULL
dat1$Voltage2<-as.factor (dat1$Voltage)
dat1$Voltage<-NULL

dat2<-dat1[1:5000,]
dat3<-dat1[1:2000,]

require (plyr)
require (partykit)
require (rpart)require (rJava)
install.packages("RWekajars")
require("RWeka")
j48.model<- J48(Voltage2~ ., data = dat2, control = Weka_control(M = 30, C = 0.05))
ACC=  mean ( predict(j48.model, dat3[,c(1:6)], type = "class") ==  dat3$Voltage2)

从下表中可以看出,这些值接近且不相同,因此精度为0。如何解决?

> 
          Global_active_power Global_reactive_power Global_intensity Sub_metering_1 Sub_metering_2 Sub_metering_3    Voltage   J48  
   1: 0.322 0.114 1.4 0 0 0 239.86 241.48 242.21 244.39 239.94                                                      239.43  225.36     
   2: 0.320 0.114 1.4 0 0 0 239.95 241.48 242.21 243.46 239.94                                                      239.43  225.36    
   3: 0.320 0.114 1.4 0 0 0  239.9 241.48 242.21 243.46 239.94                                                      239.43  225.36     
   4: 0.318 0.116 1.4 0 0 0 240.15 241.77 242.21 243.46 239.94                                                      240.31  225.42     
   5: 0.318 0.116 1.4 0 0 0 240.42 241.77 242.21 243.46 239.94                                                      240.31  225.42     
  ---    

0 个答案:

没有答案