使用 R 我试图预测前 10 部电影

问题描述 投票:0回答:0

在这段代码中:-

top10_prediction_linear <- test_set %>%
  left_join(b_i, by = "movieId") %>%
  left_join(b_u, by = "userId") %>%
  mutate(y_hat = mu + b_i + b_u) %>%
  arrange(desc(y_hat)) %>%
  select(title) %>%
  unique() %>%
  slice_head(n = 10)
top10_prediction_linear_df <- data.frame(Title = top10_prediction_linear,
                                         Rating = rep(NA, 10), 
                                         Count = rep(NA, 10))

for (i in 1:10) {
  indexes <- which(test_set$title == as.character(top10_prediction_linear[i]))
  top10_prediction_linear_df$Rating[i] <- mean(test_set$rating[indexes])
  top10_prediction_linear_df$Count[i] <- sum(
    test_set$title == as.character(top10_prediction_linear[i])
  )
}
print(top10_prediction_linear_df)

我收到这个错误:-

UseMethod("left_join") 错误: 没有适用于“left_join”的适用方法应用于类“c('矩阵','数组','整数','数字')”的对象

帮我消除这个错误并运行我的代码

r video recommendation-engine
© www.soinside.com 2019 - 2024. All rights reserved.