0

假设您有一个包含两列的数据框 - TransactionId 和 ItemId,它看起来像这样

A a
A b
A c
A e
B a
B d
B e

ETC

并且您想将其表示为一个矩阵,如下所示:

   a b c d e f 
A  1 1 1 0 1 0 
B  1 0 0 1 1 0 

ETC

最优雅的做法是什么?我听说过 model.matrix,但确实相信它仅适用于每个事务单行的数据。

井架

4

1 回答 1

0

您可以使用 arules 包中的 read.transactions 函数:format="single"

数据 <- read.transactions("YourDataset.csv", format = "single", sep=",", cols = c(1,2))

然后,您可以使用“as”函数格式化数据集,如下所示:

如(数据[1:5],“列表”)

作为(数据[1:5],“矩阵”)

作为(数据[1:5],“ngCMatrix”)

这里有一些教程:

http://zoo.cs.yale.edu/classes/cs445/misc/mar13lae08.pdf

http://www.inside-r.org/packages/cran/arules/docs/nitems

希望有帮助。

卡里姆

于 2013-09-18T11:43:06.020 回答