找不到函数 "spread"

could not find function "spread"

所以目前我正在尝试弄清楚如何从 MovieLense (https://grouplens.org/datasets/movielens/100k/) 构建电影推荐系统。我从教程中阅读了一些说明。

library(dplyr)
library(recommenderlab)
library(magrittr)

data <- read.table("u.data", header = F, stringsAsFactors = T) 
head(data)

   V1  V2 V3        V4
1 196 242  3 881250949
2 186 302  3 891717742
3  22 377  1 878887116
4 244  51  2 880606923
5 166 346  1 886397596
6 298 474  4 884182806

说明:V1是userid,V2是itemid,V3是评分

现在我需要将日志格式写入ratingMatrix,结果将是这样的:

    1  2  3  4  5  6  7  8  9 10
1   5  3  4  3  3  5  4  1  5  3
2   4 NA NA NA NA NA NA NA NA  2
3  NA NA NA NA NA NA NA NA NA NA
4  NA NA NA NA NA NA NA NA NA NA
5   4  3 NA NA NA NA NA NA NA NA
6   4 NA NA NA NA NA  2  4  4 NA
7  NA NA NA  5 NA NA  5  5  5  4
8  NA NA NA NA NA NA  3 NA NA NA
9  NA NA NA NA NA  5  4 NA NA NA
10  4 NA NA  4 NA NA  4 NA  4 NA

代码:

temp = data %>% select(1:3) %>% spread(V2,V3) %>% select(-1)
temp[1:10,1:10]

Error in spread(., V2, V3) : could not find function "spread"

尝试用 library(tidyverse) 替换 library(dplyr)spread 函数现在位于 tidyr 包中,该包与 dplyr.

一起属于 tidyverse 的一部分