dataset = read.csv('dataset/housing.header.binary.txt')
dataset1 = dataset[6] #higest positive correlation
dataset2 = dataset[13] #lowest negative correlation
dependentVal= dataset[14] #dependent value
new_dataset = cbind(dataset1,dataset2, dependentVal) # new matrix
#split dataset
#install.packages('caTools')
library(caTools)
set.seed(123) #this is needed to garantee that every run will produce the same output
split = sample.split(new_dataset, SplitRatio = 0.75)
train_set = subset(new_dataset, split == TRUE)
test_set = subset(new_dataset, split == FALSE)
#Fitting Decision Tree to training set
install.packages('rpart')
library(rpart)
classifier = rpart(formula = Medv ~ Rm + Lstat,
data = train_set)
#predicting the test set results
y_pred = predict(classifier, newdata = test_set[3], type ='class')
我想要预测test_set
的第三列数据,但是一直出现以下错误:
Error in eval(predvars, data, env) : object 'Rm' not found
即使我指定的是test_set[3]
而非包含Rm
的test_set[1]
列名如下:Rm
、Lstat
和Medv
。
test_set[3]
和test_set[2]
都会出现相同的错误:
Error in eval(predvars, data, env) : object Rm not found
而test_set[1]
则会出现:
Error in eval(predvars, data, env) : object 'Lstat' not found
我尝试了以下方法:
names(test_set) <- c('Rm', 'Lstat','Medv')
:显式地重命名了变量名。is.data.frame(test_set)
:检查了test_set
是否为数据框。