Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 11

not_one_item_rating_users = ratings_counts_by_users %>% filter(count>3)

ind = as.integer(not_one_item_rating_users$User.ID)
unique(rbind(book_ratings, test_ratings))
setdiffDF(book_ratings, test_ratings)
book_ratings
test_ratings
setdiffDF(book_ratings, test_ratings)
filter(book_ratings,User.ID %in% !not_one_item_rating_users$User.ID)
viewed_movies
aydmer001::viewed_movies
not_one_item_rating_users
book_ratings %>% group_by(book_ratings$User.ID) top_n(1)
book_ratings %>% group_by(book_ratings$User.ID) %>% top_n(1)
book_ratings %>% group_by(book_ratings$User.ID) %>% tally(G)%>%top_n(1)
book_ratings %>% group_by(book_ratings$User.ID) %>% top_n(1)
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(1)
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(1)
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(1)
test_ratings$Book.Rating =0
all_ratings = rbind(test_ratings, book_ratings)
book_ratings$User.ID[1,]
book_ratings[1,]$User.ID
book_ratings
book_ratings = book_ratings %>% filter(book_ratings$Book.Rating>0)
book_ratings = book_ratings %>% left_join(book_info, by="ISBN") %>% select(User.ID,
Book.Rating, Book.Title)
load("/Users/merveaydin/Downloads/book_ratings.Rdata")
book_ratings = book_ratings %>% filter(book_ratings$Book.Rating>0)
book_ratings = book_ratings %>% left_join(book_info, by="ISBN") %>% select(User.ID,
Book.Rating, Book.Title)
#book_ratings[c(1008, 1009, 16884,16885), ]
book_ratings = book_ratings[-c(1008, 16884), ]
ratings_wide = book_ratings %>% select(User.ID, Book.Title, Book.Rating) %>%
spread(key = Book.Title, value = Book.Rating, fill=0) #Error: Duplicate identifiers
for rows (1008, 1009), (16884, 16885)
ratings_wide_users = ratings_wide[,1]
ratings_wide = ratings_wide[,-1]
rownames(ratings_wide) = ratings_wide_users
ratings_wide = as.matrix(ratings_wide)
book_ratings[1,]$User.ID
ind = as.integer(not_one_item_rating_users$User.ID)
ind
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(1)
test_ratings
not_one_item_rating_users = ratings_counts_by_users %>% filter(count>3)
not_one_item_rating_users
test_ratings
test_ratings$Book.Rating =0
test_ratings
all_ratings = rbind(test_ratings, book_ratings)
all_ratings
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(2)
test_ratings
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(3)
test_ratings
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% top_n(4)
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
test_ratings
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% Book.Rating = 0
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% book_ratings$Book.Rating = 0
library(dplyr)
library(tidyverse)
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% book_ratings$Book.Rating = 0
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
%>% (book_ratings$Book.Rating = 0)
test_ratings = filter(book_ratings,User.ID %in% not_one_item_rating_users$User.ID)
test_ratings
rownames(test_ratings)
book_ratings[J(unique(User.ID)), mult = "first"]
book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1)
book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(book.ratings$User.ID %in%
not_one_item_rating_users$User.ID)
book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% not_one_item_rating_users$User.ID)
not_one_item_rating_users
book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% not_one_item_rating_users$User.ID)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% not_one_item_rating_users$User.ID)
test_ratings
ratings_counts_by_users <- group_by(book_ratings, User.ID) %>% summarize(count =
n())
not_one_item_rating_users = ratings_counts_by_users %>% filter(count>3)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% not_one_item_rating_users$User.ID)
test_ratings
test_ratings
rbind(ratings_wide, test_ratings)
test_ratings
ratings_wide
rbind(book_ratings, test_ratings)
new_book_ratings = rbind(book_ratings, test_ratings)
new_book_ratings[!duplicated(new_book_ratings), ]
newnew = new_book_ratings[!duplicated(new_book_ratings), ]
newnew
new_book_ratings
new_book_ratings = rbind(book_ratings, test_ratings)
newnew = new_book_ratings[!duplicated(new_book_ratings), ]
df <- data.frame(rbind(c(2,9,6),c(4,6,7),c(4,6,7),c(4,6,7),c(2,9,6))))
df <- data.frame(rbind(c(2,9,6),c(4,6,7),c(4,6,7),c(4,6,7),c(2,9,6)))
df
new_book_ratings
test_ratings
new_book_ratings = data.frame(rbind(book_ratings, test_ratings))
new_book_ratings
test_ratings
test_ratings = as.data.frame(test_ratings)
test_ratings
new_book_ratings = data.frame(rbind(book_ratings, test_ratings))
new_book_ratings
newnew = new_book_ratings[!duplicated(new_book_ratings), ]
newnew
long_to_wide(new_book_ratings, userid = "User.ID",itemid = "Book.Title",itemrating
= "Book.Rating" )
aydmer001::long_to_wide(new_book_ratings, userid = "User.ID",itemid =
"Book.Title",itemrating = "Book.Rating" )
one_item_rating_users = ratings_counts_by_users %>% filter(count=1)
ratings_counts_by_users <- group_by(book_ratings, User.ID) %>% summarize(count =
n())
one_item_rating_users = ratings_counts_by_users %>% filter(count=1)
one_item_rating_users = ratings_counts_by_users %>% filter(count==1)
one_item_rating_users
ratings_counts_by_users
max(ratings_counts_by_users$count)
ratings_counts_by_users
View(ratings_counts_by_users)
two_item_rating_users = ratings_counts_by_users %>% filter(count==2)
two_item_rating_users
mtcars %>%
mutate(mpg=replace(mpg, cyl==4, NA)) %>%
as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% not_one_item_rating_users$User.ID)
%>% mutate(test = "yes")
test_ratings
test_ratings = as.data.frame(test_ratings)
new_book_ratings = data.frame(rbind(book_ratings, test_ratings))
book_ratings$test = "No"
book_ratings
new_book_ratings = data.frame(rbind(book_ratings, test_ratings))
new_book_ratings
test_ratings
new_book_ratings %>%
mutate(test=replace(test, test_ratings[,1:3]==new_book_ratings[,1:3], NA)) %>%
as.data.frame()
new_book_ratings %>%
mutate(test=replace(test, test_ratings[,1:3]=new_book_ratings[,1:3], NA)) %>%
new_book_ratings %>% group_by(User.ID)
two_item_rating_users = ratings_counts_by_users %>% filter(count==2) %>%
filter(row_number()==1)
two_item_rating_users
two_item_rating_users = ratings_counts_by_users %>% filter(count==2)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(test = "yes") %>% as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(test = "yes") %>% as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
as.data.frame()
test_ratings_lefover = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID)%>%
as.data.frame()
test_ratings_lefover = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID)%>%
as.data.frame()
test_ratings_lefover
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
as.data.frame()
test_ratings
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
as.data.frame()
test_ratings
load("/Users/merveaydin/Downloads/book_ratings.Rdata")
book_ratings = book_ratings %>% filter(book_ratings$Book.Rating>0)
book_ratings = book_ratings %>% left_join(book_info, by="ISBN") %>% select(User.ID,
Book.Rating, Book.Title)
#book_ratings[c(1008, 1009, 16884,16885), ]
book_ratings = book_ratings[-c(1008, 16884), ]
ratings_wide = book_ratings %>% select(User.ID, Book.Title, Book.Rating) %>%
spread(key = Book.Title, value = Book.Rating, fill=0) #Error: Duplicate identifiers
for rows (1008, 1009), (16884, 16885)
ratings_wide_users = ratings_wide[,1]
ratings_wide = ratings_wide[,-1]
rownames(ratings_wide) = ratings_wide_users
ratings_wide = as.matrix(ratings_wide)
ratings_counts_by_users <- group_by(book_ratings, User.ID) %>% summarize(count =
n())
one_item_rating_users = ratings_counts_by_users %>% filter(count==1)
two_item_rating_users = ratings_counts_by_users %>% filter(count==2)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
as.data.frame()
test_ratings_lefover = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID)%>%
as.data.frame()
morethantwo_item_rating_users = ratings_counts_by_users %>% filter(count>=3)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
test_ratings
train_one
new_book_ratings = rbind(test_ratings, train_one, train_two)
new_book_ratings
morethantwo_item_rating_users = ratings_counts_by_users %>% filter(count>=3)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% morethantwo_item_rating_users$User.ID)
%>% mutate(tt = "train") %>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% morethantwo_item_rating_users$User.ID)
%>% mutate(tt = "train") %>% as.data.frame()
new_book_ratings = rbind(test_ratings, train_one, train_two)
new_book_ratings
one_item_rating_users
new_book_ratings
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% morethantwo_item_rating_users$User.ID)
%>% mutate(tt = "train") %>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% morethantwo_item_rating_users$User.ID)
%>% mutate(tt = "train") %>% as.data.frame()
train_three = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% one_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==2) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% morethantwo_item_rating_users$User.ID)
%>% mutate(tt = "train") %>% as.data.frame()
train_three = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in% one_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
new_book_ratings = rbind(test_ratings, train_one, train_two, train_three)
new_book_ratings
book_ratings %>%
group_by(User.ID) %>%
filter(row_number()>1) %>% filter(User.ID %in% two_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
two_item_rating_users = ratings_counts_by_users %>% filter(count!=2)
two_item_rating_users
two_item_rating_users = ratings_counts_by_users %>% filter(count==2)
two_item_rating_users
two_item_rating_users = ratings_counts_by_users %>% filter(count!=2)
two_item_rating_users
two_item_rating_users = ratings_counts_by_users %>% filter(count>2&count<2)
two_item_rating_users
ratings_counts_by_users <- group_by(book_ratings, User.ID) %>% summarize(count =
n())
two_item_rating_users = ratings_counts_by_users %>% filter(count=2)
two_item_rating_users = ratings_counts_by_users %>% filter(count==2)
two_item_rating_users = ratings_counts_by_users %>% filter(count!==2)
two_item_rating_users = ratings_counts_by_users %>%
filter(ratings_counts_by_users$count==2)
two_item_rating_users = ratings_counts_by_users %>%
filter(ratings_counts_by_users$count!=2)
two_item_rating_users
two_item_rating_users = ratings_counts_by_users %>%
filter(ratings_counts_by_users$count==2)
two_item_rating_users
five_item_rating_users = ratings_counts_by_users %>%
filter(ratings_counts_by_users$count==5)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()!=1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
test_ratings
train_one
five_item_rating_users
five_item_rating_users
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
test_ratings
train_one
smallerthan5_item_rating_users = ratings_counts_by_users %>% filter(count<5)
biggerthan5_item_rating_users = ratings_counts_by_users %>% filter(count>5)
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1&2) %>% filter(User.ID %in% five_item_rating_users$User.ID)
%>% mutate(tt = "test")%>% as.data.frame()
test_ratings
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==c(1,2)) %>% filter(User.ID %in%
five_item_rating_users$User.ID) %>% mutate(tt = "test")%>% as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
mutate(tt = "test")%>% as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()!=1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
mutate(tt = "train") %>% as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in%
c(smallerthan5_item_rating_users$User.ID, biggerthan5_item_rating_users$User.ID))
%>% mutate(tt = "train") %>% as.data.frame()
new_book_ratings = rbind(test_ratings, train_one, train_two)
new_book_ratings
new_book_ratings[1:249, ]
test = new_book_ratings[1:249, 1:3]
train = new_book_ratings[250:nrow(new_book_ratings), 1:3]
test
test = new_book_ratings[1:249, 1:3]$Book.Rating
train = new_book_ratings[250:nrow(new_book_ratings), 1:3]
new_book_ratings$Book.Rating=0
new_book_ratings
long_to_wide(new_book_ratings, userid = "User.ID",itemid = "Book.Title",itemrating
= "Book.Rating")
aydmer001::long_to_wide(new_book_ratings, userid = "User.ID",itemid =
"Book.Title",itemrating = "Book.Rating")
new_book_ratings$User.ID[1]
widefortest = aydmer001::long_to_wide(new_book_ratings, userid = "User.ID",itemid =
"Book.Title",itemrating = "Book.Rating")
widefortest = aydmer001::long_to_wide(new_book_ratings, userid = "User.ID",itemid =
"Book.Title",itemrating = "Book.Rating")
aydmer001::recommender_item_based(user = new_book_ratings$User.ID[1],widefortest )
new_book_ratings$User.ID[1]
aydmer001::recommender_item_based(user = 278843, widefortest )
aydmer001::recommender_item_based(278843, widefortest )
aydmer001::recommender_item_based(278843, ratings_wide )
widefortest = aydmer001::long_to_wide(new_book_ratings[,1:3], userid =
"User.ID",itemid = "Book.Title",itemrating = "Book.Rating")
aydmer001::recommender_item_based(278843, widefortest )
recommender_item_based
aydmer001::recommender_item_based
aydmer001::recommender_item_based("278843", widefortest )
widefortest
widefortest = aydmer001::long_to_wide(new_book_ratings[,1:3], userid =
"User.ID",itemid = "Book.Title",itemrating = "Book.Rating")
widefortest_users = ratings_wide[,1]
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest_users = widefortest[,1]
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest[,1]
widefortest = aydmer001::long_to_wide(new_book_ratings[,1:3], userid =
"User.ID",itemid = "Book.Title",itemrating = "Book.Rating")
widefortest
widefortest_users = widefortest$User.ID
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest = as.matrix(widefortest)
aydmer001::recommender_item_based("278843", as.matriwidefortest )
aydmer001::recommender_item_based("278843", widefortest )
aydmer001::recommender_item_based(widefortest_users[1], widefortest )
aydmer001::recommender_item_based(widefortest_users[2], widefortest )
aydmer001::recommender_item_based(widefortest_users[2], ratings_wide )
training_set_long = book_ratings
n = nrow(book_ratings)*0.1
set.seed(123)
index = sample(1:nrow(book_ratings), n)
training_set_long = book_ratings
training_set_long$Book.Rating[index] = 0
aydmer001::long_to_wide(training_set_long, userid = "User.ID",itemid =
"Book.Title",itemrating = "Book.Rating")
index
aydmer001::recommender_item_based("5267", ratings_wide )
widefortest = aydmer001::long_to_wide(training_set_long, userid = "User.ID",itemid
= "Book.Title",itemrating = "Book.Rating")
widefortest_users = widefortest$User.ID
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest = as.matrix(widefortest)
aydmer001::recommender_item_based(widefortest[1,], widefortest )
widefortest
aydmer001::recommender_item_based(26, widefortest )
aydmer001::recommender_item_based("26", widefortest )
widefortest = aydmer001::long_to_wide(training_set_long, userid = "User.ID",itemid
= "Book.Title",itemrating = "Book.Rating")
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest = as.matrix(widefortest)
aydmer001::recommender_item_based("26", widefortest )
widefortest
aydmer001::recommender_item_based("114", widefortest )
aydmer001::recommender_item_based("125", widefortest )
widefortest = aydmer001::long_to_wide(training_set_long, userid = "User.ID",itemid
= "Book.Title",itemrating = "Book.Rating")
widefortest_users = widefortest$User.ID
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest = as.matrix(widefortest)
widefortest_users = as.matrix(widefortest$User.ID)
widefortest = aydmer001::long_to_wide(new_book_ratings[,1:3], userid =
"User.ID",itemid = "Book.Title",itemrating = "Book.Rating")
widefortest_users = as.matrix(widefortest[1, ])
widefortest_users = as.matrix(widefortest[,1])
widefortest = aydmer001::long_to_wide(new_book_ratings[,1:3], userid =
"User.ID",itemid = "Book.Title",itemrating = "Book.Rating")
widefortest_users = as.matrix(widefortest[,1])
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest = as.matrix(widefortest)
aydmer001::recommender_item_based(widefortest_users[2], widefortest )
aydmer001::recommender_item_based
widefortest
ratings_wide
new_book_ratings
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% five_item_rating_users$User.ID)%>%
as.data.frame()
test_ratings = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()==1) %>% filter(User.ID %in% five_item_rating_users$User.ID)%>%
as.data.frame()
train_one = book_ratings %>%
group_by(User.ID) %>%
filter(row_number()!=1) %>% filter(User.ID %in% five_item_rating_users$User.ID) %>%
as.data.frame()
train_two = book_ratings %>%
group_by(User.ID) %>% filter(User.ID %in%
c(smallerthan5_item_rating_users$User.ID, biggerthan5_item_rating_users$User.ID))
%>% as.data.frame()
new_book_ratings = rbind(test_ratings, train_one, train_two)
test_ratings$Book.Rating = 0
new_book_ratings = rbind(test_ratings, train_one, train_two)
widefortest = aydmer001::long_to_wide(new_book_ratings, userid = "User.ID",itemid =
"Book.Title",itemrating = "Book.Rating")
widefortest_users = as.matrix(widefortest[,1])
widefortest = widefortest[,-1]
rownames(widefortest) = widefortest_users
widefortest = as.matrix(widefortest)
aydmer001::recommender_item_based(widefortest_users[2], widefortest )
aydmer001::recommender_item_based
aydmer001:::book_similarities(widefortest)
aydmer001::recommender_item_based
book_similarities = aydmer001:::book_similarities(widefortest)
widefortest_users[2]
user_alreadyread <- row.names(book_similarities)[widefortest["51",] != 0]
user_alreadyread
widefortest
aydmer001::recommender_item_based("51", widefortest )
apply(aydmer001:::book_similarities[, user_alreadyread], 1, sum)
user_alreadyread
apply(aydmer001:::book_similarities[, as.character(user_alreadyread)], 1, sum)
user_alreadyread
apply(aydmer001:::book_similarities[, "the street lawyer"], 1, sum)
book_similarities
apply(aydmer001:::book_similarities[, 2], 1, sum)
apply(aydmer001:::book_similarities[, "the street lawyer"], 1, sum)
apply(aydmer001:::book_similarities[, "the street lawyer"], 1, sum)
book_similarities
aydmer001:::book_similarities
aydmer001::recommender_user_based(widefortest_users[2], ratings_wide )
aydmer001::recommender_user_based(widefortest_users[2], widefortest )
aydmer001::recommender_item_based
book_similarities = aydmer001:::book_similarities_function(widefortest)
knitr::opts_chunk$set(echo = TRUE)
book_similarities = aydmer001:::book_similarities_function(widefortest)
library(aydmer001)
knitr::opts_chunk$set(echo = TRUE)
book_similarities = aydmer001:::book_similarities_function(widefortest)
book_similarities_results = aydmer001:::book_similarities_function(widefortest)
book_similarities_results = aydmer001:::book_similarities(widefortest)
apply(aydmer001:::book_similarities_results[, "the street lawyer"], 1, sum)
book_similarities_results[, "the street lawyer"]
book_similarities_results[, "the street lawyer"], 1, sum)
book_similarities_results[, "the street lawyer"]
apply(book_similarities_results[, "the street lawyer"], 1, sum)
book_similarities_results[, "the street lawyer"]
apply(book_similarities_results[, "the street lawyer"], 1, sum)
book_similarities_results = aydmer001:::book_similarities(widefortest)
user_alreadyread <- row.names(book_similarities)[widefortest["51",] != 0]
apply(book_similarities_results[, user_alreadyread], 1, sum)
setwd("~/datasci/aydmer001")
rmarkdown::render("vignettes/my-vignette.Rmd")
setwd("~/Desktop")
rmarkdown::render("vignettes/my-vignette.Rmd")
rmarkdown::render("/my-vignette.Rmd")
rmarkdown::render("~/my-vignette.Rmd")
knit_with_parameters('~/Desktop/my-vignette.Rmd')
unlink('my-vignette_cache', recursive = TRUE)
unlink('my-vignette_cache', recursive = TRUE)
knitr::opts_chunk$set(echo = TRUE)
knitr::opts_chunk$set(cache = TRUE)
library(aydmer001)
library(knitr)
library(dplyr)
library(tidyverse)
library(NNLM)
library(NMF)
load("~/datasci/aydmer001/data/book_ratings.Rdata")
head(book_ratings)
book_ratings_filtered = book_ratings %>% filter(book_ratings$Book.Rating>0)
book_ratings_filtered = book_ratings_filtered %>% left_join(book_info, by="ISBN")
%>% select(User.ID, Book.Rating, Book.Title)
head(book_ratings_filtered)
book_ratings_filtered[c(1008, 1009, 16884,16885), ]
book_ratings_filtered = book_ratings_filtered[-c(1008, 16884), ]
ratings_wide = long_to_wide(book_ratings_filtered, userid = "User.ID", itemid =
"Book.Title", itemrating = "Book.Rating")
head(ratings_wide)
ratings_wide_users = ratings_wide$User.ID
ratings_wide = ratings_wide[,-1]
rownames(ratings_wide) = ratings_wide_users
ratings_wide = as.matrix(ratings_wide)
user_user = recommender_user_based("4017", ratings_wide)
user_user
user_item = recommender_item_based("4017", ratings_wide)
user_item
estim.r = NMF::nmfEstimateRank(ratings_wide, 2:7, method = "pe-nmf", alpha = 0.02,
beta = 0.02, nrun = 5)
knitr::opts_chunk$set(echo = TRUE)
knitr::opts_chunk$set(cache = TRUE)
library(aydmer001)
library(knitr)
library(dplyr)
library(tidyverse)
library(NNLM)
library(NMF)
load("~/datasci/aydmer001/data/book_ratings.Rdata")
#Method "pe-nmf" works well with sparse data
estim.r = NMF::nmfEstimateRank(ratings_wide, 2:7, method = "pe-nmf", alpha = 0.02,
beta = 0.02, nrun = 5)
#Method "pe-nmf" works well with sparse data
estim.r = NMF::nmfEstimateRank(ratings_wide, 2:7, method = "pe-nmf", alpha = 0.02,
beta = 0.02, nrun = 3)

You might also like