在R编程中将arules事务数据转换为项目矩阵

在R编程中将arules事务数据转换为项目矩阵,r,apriori,arules,binary-matrix,R,Apriori,Arules,Binary Matrix,我有一个具有100000行的数据集,其事务格式如下 B038-82C81778E81C Toy Story B038-82C81778E81C Planet of the apes B038-82C81778E81C Iron Man 9C05-EE9B44E8C18F Bruce Almighty 9C05-EE9B44E8C18F Iron Man 9C05-EE9B44E8C18F Toy Story 8F59-9956070D8005 Toy Story 8F

我有一个具有100000行的数据集,其事务格式如下

B038-82C81778E81C   Toy Story
B038-82C81778E81C   Planet of the apes
B038-82C81778E81C   Iron Man
9C05-EE9B44E8C18F   Bruce Almighty
9C05-EE9B44E8C18F   Iron Man
9C05-EE9B44E8C18F   Toy Story
8F59-9956070D8005   Toy Story
8F59-9956070D8005   Gravity
8F59-9956070D8005   Iron Man
8F59-9956070D8005   Gone
B52F-9936734525AF   Planet of the Apes
B52F-9936734525AF   Bruce Almighty
我想将其转换为如下矩阵格式(或真/假标志)

我尝试了以下步骤

TrnsDataset1<-read.transactions("~/Desktop/movieswid_1Copy.txt", format= c("single"), sep="\t", cols = c(1,2), rm.duplicates=TRUE);
L <- as(TrnsDataset1,"list");
M <- as(L,"matrix")
CM<- as (M,"ngCMatrix");
因此,某些行是完美的,但在某些行中,唯一id将添加到电影列表中,\t和\n

我想要以下格式的列表 9C05-EE9B44E8C18F c(“全能的布鲁斯”、“钢铁侠”、“玩具总动员”)


这样我相信我会很容易达到要求的结果。非常感谢你的帮助。

我有点困惑,因为你说你想要两样东西。如果只需要稀疏矩阵,则可以跳过列表和标准矩阵变换。你可以这么做

TrnsDataset1 <- read.transactions(...);
mm <- t(as(TrnsDataset1,"ngCMatrix"))
这是一个真/假值矩阵(此处缩写为fit in space)。根本不需要浏览列表表格

B038-82C81778E81C   c("Toy Story\nB038-82C81778E81C\tPlanet of the apes\nB038-82C81778E81C\tIron Man")
9C05-EE9B44E8C18F   c("Bruce Almighty","Iron Man","Toy Story")
TrnsDataset1 <- read.transactions(...);
mm <- t(as(TrnsDataset1,"ngCMatrix"))
4 x 6 sparse Matrix of class "ngCMatrix"
                  Bruce Almighty Gone Gravity Iron Man Planet Toy Story
8F59-9956070D8005              .    |       |        |      .         |
9C05-EE9B44E8C18F              |    .       .        |      .         |
B038-82C81778E81C              .    .       .        |      |         |
B52F-9936734525AF              |    .       .        .      |         .