tests/testthat/test-warm.R

library("testthat")
library("arules")

context("weighted association mining")

data("Income")

## find and some frequent itemsets
its <- eclat(Income, control=list(verbose=FALSE))[1:5]

expect_equal(support(its, Income), 
  quality(its)$support)
expect_equal(support(its, Income, type = "absolute"), 
  quality(its)$support * length(Income))

expect_equal(support(its, Income, control=list("tidlists")), 
  quality(its)$support)
expect_equal(support(its, Income, type = "absolute", control=list("tidlists")), 
  quality(its)$support * length(Income))

## weights are missing
expect_error(support(its, Income, weighted = TRUE))

## add weights
transactionInfo(Income)$weight <- 1
expect_equal(support(its, Income, weighted = TRUE),
  quality(its)$support)

## check SunBai data
data(SunBai)

## compare weclat with eclat
data(Adult)
is1 <- eclat(Adult, control=list(verbose = FALSE))
is2 <- weclat(Adult, control=list(verbose = FALSE))
k <- match(is1, is2)
expect_equal(quality(is1)$support, quality(is2)$support[k])  

## degenerate transactions
t <- new("transactions")
s <- weclat(t, control=list(verbose = FALSE))
#s
expect_equal(length(s), 0L)

Try the arules package in your browser

Any scripts or data that you put into this service are public.

arules documentation built on April 1, 2023, 12:05 a.m.