Я провел опрос, в котором просили людей оценить ресторан по шкале от 1 до 7, и использовал индивидуальные результаты регрессии коэффициентов для оценки счета двух новых ресторанов.
results<- NULL #Set a new variable to stack
for(i in 1:6){
results<-rbind(results,coef(lm(score~alcohol+type+price,d1[d1$id==i,])))
}
, что приводит к
(Intercept) alcoholY typericenoodle price12000
[1,] 3.50 3.00 -5.000000e-01 1.00
[2,] 2.50 3.00 5.000000e-01 1.50
[3,] 4.25 1.00 -5.000000e-01 1.00
[4,] 4.50 -0.50 -1.030373e-16 1.50
[5,] 7.00 -0.50 -5.000000e-01 -2.50
[6,] 4.25 -1.75 -2.500000e-01 2.75
Я хочу использовать это
case1<-c(1,1,1,1) #First option
case2<-c(1,0,0,0) #Second option
pred_score <- cbind(results%*%case1,results%*%case2)
results
head(pred_score,n=6) #CheckData, we can see the predicted scores
for each individual
summary(pred_score)
apply(pred_score,1,which.max)
table(apply(pred_score,1,which.max))/6 #table for market share .
prediction
barplot(table(apply(pred_score,1,which.max))/6,main='Market .
Share',ylab='Share') #Bar plot for market share prediction
Но результаты (оценочный балл отдельных лиц) выходят за границыот 1 до 7
[,1] [,2]
[1,] 7.00 3.50
[2,] 7.50 2.50
[3,] 5.75 4.25
[4,] 5.50 4.50
[5,] 3.50 7.00
[6,] 5.00 4.25
Любая помощь будет очень полезна!