Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- library(magrittr)
- library(recommenderlab)
- ### real valued recommender
- data(Jester5k)
- ## create 90/10 split (known/unknown) for the first 500 users in Jester5k
- e <- evaluationScheme(Jester5k[1:500,], method="split", train=0.9,
- k=1, given=15)
- e
- ## create a user-based CF recommender using training data
- r <- Recommender(getData(e, "train"), "UBCF")
- ## create predictions for the test data using known ratings (see given above)
- p <- predict(r, getData(e, "known"), type="ratings")
- p
- ## compute error metrics averaged per user and then averaged over all
- ## recommendations
- calcPredictionAccuracy(p, getData(e, "unknown"))
- head(calcPredictionAccuracy(p, getData(e, "unknown"), byUser=TRUE))
- ## evaluate topNLists instead (you need to specify given and goodRating!)
- p <- predict(r, getData(e, "known"), type="topNList", n=100)
- p
- calcPredictionAccuracy(p, getData(e, "unknown"), given=100, goodRating=5, byUser=T) %>% head
- as(p,'list') %>% `[`(1)
- #as(getData(e, "unknown"),'matrix')[1:5,1:50]
- as(p,'matrix')[1,] %>% sort(decreasing = T)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement