Accuracy of different algorithms on item and user rating Dataset

library(caret)
library(data.table)



ratings<-fread("ratings.csv")
ratings[,N:=.N,.(user_id,book_id)]
ratings<-ratings[N==1]
ratings[,N:=.N,.(user_id)]
rated<-ratings[1:15000,]
rated<-rated[,1:3]

full<-setNames(with(rated,expand.grid(sort(unique(book_id)),sort(unique(user_id)))),
               c("book_id","user_id"))
rated<-merge(full,rated,all=TRUE)
rated[is.na(rated)]<-0
rated$rating<-as.factor(rated$rating)

seprate<-createDataPartition(rated$rating,p=0.8,list=FALSE)
trainset<-rated[separate,]
testset<-rated[-separate,]

control<-trainControl(method="cv",number=10)
fit.knn<-train(rating~.,trainset,method="knn",metric="Accuracy",trControl=control)
print(fit.knn)

prediction<-predict(fit.knn,testset)
confusionMatrix(factor(prediction,levels=0:5),factor(testset$rating,levels=0:5))

change "method "and get "result"
place ratings file  in project directory

Comments

Popular posts from this blog

One Girl

Worst World

You Play ? Mind Play?