2015-01-14 6 views
1

набора данных можно загрузить с http://archive.ics.uci.edu/ml/machine-learning-databases/wine-quality/недействительных модель формулы в ExtractVars при использовании функции rpart в R

Получение следующее сообщение об ошибке:

formula(formula, data = data) : 
    invalid model formula in ExtractVars 

Используя следующий код:

install.packages("rpart") 
library("rpart") 

# you'll need to change the following from windows to work on a linux box: 
mydata <- read.csv(file="c:/Users/md7968/downloads/winequality-red.csv") 

# grow tree 
fit <- rpart(YouSweetBoy ~ "residual sugar" + "citric acid", method = "class", data = mydata 

Имейте в виду, что я изменил разделители в CSV-файле запятыми.

Возможно, он неправильно считывает данные. Простите меня, я новичок в R и не очень хороший программист.

ответ

4

Посмотрите на names(mydata). Когда вы создаете data.frame, read.table() превратит «плохие» имена столбцов в хорошие. Вы не можете (ну, не должны) иметь пробел в имени столбца, так что R изменяет пробелы на периоды. Кроме того, вы никогда не должны указывать строки в формуле. Попробуйте

fit <- rpart(quality ~ residual.sugar + citric.acid, method = "class", data = mydata) 

(я понятия не имею, что «YouSweetBoy» должен был быть так, что не было в наборе данных, так что я изменил его на «качество»).

+0

Большое вам спасибо! Тем не менее, я запустил код и получил следующее: Ошибка в eval (expr, envir, enc): объект «качество» не найден – dgene54

+0

У набора данных, с которым вы связаны, был столбец «качество». Замените это тем, что вы хотите, чтобы ваша переменная ответа была. – MrFlick

+0

В листе был столбец качества, однако я все еще получаю сообщение об ошибке. – dgene54