2016-08-18 8 views
1

inspectを使用して各トランザクションの内容を確認してからアイテムを抽出することができますが、アイテムを抽出する便利な方法がありますトランザクションに?パッケージarules内のトランザクション内のアイテムのリストを取得する方法

+1

(http://stackoverflow.com/questions [再現可能な例]のお手伝いをするために容易になるだろう/ 5963269/how-to-make-a-great-r-reproducible-example)を参照してください。たぶんあなたはパッケージのヘルプページの1つを含めることもできますし、抽出する情報と保存する方法を明確にすることもできます。 – MrFlick

答えて

1
a_list <- list(# Create example data 
     c("a","b","c"), 
     c("a","b"), 
     c("a","b","d"), 
     c("c","e"), 
     c("a","b","d","e") 
    ) 

## set transaction names 
names(a_list) <- paste("Tr",c(1:5), sep = "") 
a_list 

## coerce into transactions 
trans1 <- as(a_list, "transactions") 

## analyze transactions 
summary(trans1) 
image(trans1) 

# if you want an actual list structure: 
trans1 <- as(a_list, "list") 

これはimage()から、それをプロットしたものである:今大きなtransactions対象と

enter image description here

data("Adult") 
adult_list <- as(Adult, "list") 
1

あなたができるようにするdata.table呼ばRパッケージがありますこのタイプのトランザクション集約を行います。例えば

:トランザクションによって

集計アイテム:トランザクションに属するすべての項目のリストを取得する

data <- data.frame( 
        transactionID = c("1001", "1001", "1002", "1003", "1003", "1003"), 
        item= c("A", "B", "B", "A", "B", "C") 
       ) 

一つの方法。

enter image description here

Data.table他の方法、機能splitによって:

data.aggregate <- split(data$item, data$transactionID) 
> data.aggregate 
$`1001` 
[1] A B 
Levels: A B C 

$`1002` 
[1] B 
Levels: A B C 

$`1003` 
[1] A B C 
Levels: A B C 
関連する問題