Mining Associations from Weighted Transaction Data with Eclat (WARM)
Find frequent itemsets with the Eclat algorithm. This implementation uses optimized tidlist joins and transaction weights to implement weighted association rule mining (WARM).
weclat(data, parameter = NULL, control = NULL)
data |
an object that can be coerced into an object of class
|
parameter |
an object of class
|
control |
an object of class
|
Transaction weights are stored in the transaction as a column called
weight
in transactionInfo
.
The weighted support of an itemset is the sum of the weights of the
transactions that contain the itemset. An itemset is frequent if
its weighted support is equal or greater than the threshold specified
by support
(assuming that the weights sum to one).
Note that ECLAT only mines (weighted) frequent itemsets. Weighted
association rules can be created using ruleInduction
.
Returns an object of class
itemsets
. Note that weighted support is returned in
quality
as column support
.
The C code can be interrupted by CTRL-C. This is convenient but comes at the price that the code cannot clean up its internal memory.
Christian Buchta
G.D. Ramkumar, S. Ranka, and S. Tsur (1998). Weighted Association Rules: Model and Algorithm, Proceedings of ACM SIGKDD
Class
transactions
,
function
ruleInduction
,
eclat
## Example 1: SunBai data data(SunBai) SunBai ## weights are stored in transactionInfo transactionInfo(SunBai) ## mine weighted support itemsets using transaction support in SunBai s <- weclat(SunBai, parameter = list(support = 0.3), control = list(verbose = TRUE)) inspect(sort(s)) ## create rules using weighted support (satisfying a minimum ## weighted confidence of 90%). r <- ruleInduction(s, confidence = .9) inspect(r) ## Example 2: Find association rules in weighted data trans <- list( c("A", "B", "C", "D", "E"), c("C", "F", "G"), c("A", "B"), c("A"), c("C", "F", "G", "H"), c("A", "G", "H") ) ## convert list to transactions trans <- as(trans, "transactions") ## add weight information transactionInfo(trans) <- data.frame(weights = c(5, 10, 6, 7, 5, 1)) inspect(trans) ## mine weightd support itemsets s <- weclat(trans, parameter = list(support = 0.3), control = list(verbose = TRUE)) inspect(sort(s)) ## create association rules r <- ruleInduction(s, confidence = .5) inspect(r)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.