2016-11-10 1 views
-1

У меня очень большой набор данных. Вот пример некоторых из них.Как предсказывать что-то в R, учитывая две спецификации?

      Car sport SUV Wagon Minivan Pickup AWD RWD MSRP Invoice EngineSize Cylinders HP City.MPG Hwy.MPG Weight 
      Chevrolet Aveo 4dr  0 0  0  0  0 0 0 11690 10965  1.6   4 103  28  34 2370 
Chevrolet Aveo LS 4dr hatch  0 0  0  0  0 0 0 12585 11802  1.6   4 103  28  34 2348 
     Chevrolet Cavalier 2dr  0 0  0  0  0 0 0 14610 13697  2.2   4 140  26  37 2617 
     Chevrolet Cavalier 4dr  0 0  0  0  0 0 0 14810 13884  2.2   4 140  26  37 2676 
    Chevrolet Cavalier LS 2dr  0 0  0  0  0 0 0 16385 15357  2.2   4 140  26  37 2617 
      Dodge Neon SE 4dr  0 0  0  0  0 0 0 13670 12849  2.0   4 132  29  36 2581 

Что я хочу сделать, это предсказать мощность спортивного автомобиля с 3,5-литровым двигателем. Я честно не слишком уверен, с чего начать. Я сделал эти модели для поиска лошадиных сил спортивного автомобиля.

sportFilter <- cars$sport==1 
hpModelSport <- lm(cars$HP[sportFilter] ~ cars$EngineSize[sportFilter]) 

И это для размера двигателя.

hpModel <- lm(HP ~ EngineSize, data = cars) 

Но как использовать оба эти. И модель размера двигателя просто общая, как я могу указать 3,5-литровый?

+0

Конечно здесь вы идете https://drive.google.com/file/d/0B5n-r165dW8FWXc1M1ZDcWQ5M0E/ view? usp = sharing –

+1

'm <- lm (HP ~ EngineSize, автомобили, подмножество = автомобили $ sport == 1); pred (m, data.frame (EngineSize = 3.5)) ' – alistaire

ответ

1

Предполагая, что вы пытаетесь предсказать HP основанный на EngineSize и sport вы можете сделать следующее:

cars <- read.table("d:/Downloads/04cars.csv", header =T, sep =",", stringsAsFactors = FALSE) 
fit <- lm(HP ~ EngineSize + sport , data=cars) 
vals <- data.frame(EngineSize = 3.5, sport = 1) 
predict(fit, newdata=vals) 
+0

Это именно то, что я искал, спасибо! –

Смежные вопросы