arules 1.7.16 (unreleased)
Documentation and Maintenance
- Added missing aliases for
plot.associations()andplot.itemMatrix(). - Including a new tidyverse vignette.
arules 1.7.15 (09/10/2026)
CRAN release: 2026-09-11
New Features
- Added interest measures: Netconf and Zhang’s Measure
- Added classification measures for rules: accuracy, precision, recall, F-score, and balanced accuracy.
Bug Fixes
-
predict(): Fixed block-size handling and block boundaries. Blocked prediction now processes each observation exactly once and correctly handles a single-rownewdataobject. -
aggregate(): Fixed aggregation ofitemsets, which previously discarded the aggregated object. - Fixed the error message produced in non-interactive sessions when a suggested package is not installed.
-
ruleInduction()now warns about unknown arguments. - Corrected the formulas for collective strength, causal support and confidence, least contradiction, and substitute hyper-confidence.
- The misspelled interest-measure names
casualSupportandcasualConfidenceare deprecated. UsecausalSupportandcausalConfidenceinstead. - fixed count smoothing for interest measure computation.
- fixed the bootstrap se attribute.
Documentation and Maintenance
- Added tests for
aggregate(),predict(), PMML round trips, andsupportingTransactions(). - Switched the test suite explicitly to testthat edition 3.
- Fixed the random seed initialization in the package vignette.
- Fixed TYPOs.
- Improved parameter descriptions and general documentation.
- Added five short task-oriented R Markdown vignettes.
arules 1.7.14 (03/28/2026)
CRAN release: 2026-03-29
- Added PROTECT to all getAttr calls in src.
- Removed deprecated src sparse matrix functions.
arules 1.7.13 (01/07/2026)
CRAN release: 2026-01-10
- Fixed link to arulesCBA in README
- Fixed mailto in vignette.
arules 1.7-11 (05/28/2025)
CRAN release: 2025-05-29
Changes
- dissimilarity(): The parameter which is now replaced with the logical items.
- dissimilarity(): Added cross-dissimilarity calculation for Euclidean distances. Dissimilarities are now computed on the sparse itemMatrix objects and tests were added.
- We use now the built-in R_chk_memcpy and R_chk_memset.
arules 1.7-10 (04/22/2025)
CRAN release: 2025-04-22
Bug Fix
- R 4.5.0 changes the pointers for 0-length objects which is problematic with older implementations of memcpy and some sanitizers. I added the solution used in r-lib/rlang provided by aitap (https://github.com/r-lib/rlang/pull/1797). The bug was originally reported by MichaelChirico.
arules 1.7-8 (08/21/2024)
CRAN release: 2024-08-22
Internal Changes
- Disable internal ngCMatrix subsetting code which has issues with R-devel. We use now subsetting provided by package Matrix which is almost as fast.
- Disable internal code for rowSums and colSums for ngCMatrix.
- Internal code for t for ngCMatrix is now only used internally.
- The custom code and the exported symbols are now deprecated and will be removed in the next major release.
arules 1.7-7 (11/28/2023)
CRAN release: 2023-11-29
arules 1.7-6 (03/23/2023)
CRAN release: 2023-03-23
arules 1.7-3 (1/9/2022)
CRAN release: 2022-01-09
arules 1.7-2 (12/09/2021)
CRAN release: 2021-12-10
arules 1.7-0 (11/12/2021)
CRAN release: 2021-11-13
New Feature
- Constructors and conversion
- constructor transactions() can now also create transactions from data in long format (tid, item).
- rules and itemsets have now a constructor.
- toLongFormat converts transactions into a long format data.frame.
- Interest measures
- interestMeasure for rules has now measure “table” which returns the contingency table.
- new interest measure “riskRatio” was added.
- interestMeasure for contingency table-based measures now accept the additional parameter smoothCounts which is added to each count to avoid counts of zero (Laplace smoothing).
- new method for stats confint to calculate confidence intervals for some interest measures added.
- is_redundant can now also use confidence intervals to determine statistical redundancy.
- removed option “chiSquared” from crossTable.
- Mining algorithms
- apriori and eclat gain … additional arguments are now added to the parameter list.
- added new function is.generators to find itemset generators.
- apriori and eclat now store the call in the info slot of the created associations.
Changes
- we use now a better check for installed suggested packages.
- inspect uses now a space after the comma.
- interestMeasures: reuse = TRUE now only reuses the basic measures of “support”, “confidence”, “coverage” and “lift”. All other measures are recalculated to account for possible differences in additional parameters.
- set methods are now also exported as S3 methods using package generics so they do not conflict with tidyverse (dplyr).
Bug Fixes
- fixed mistake in man page for weclat. Weight column needs to be called weight (reported by Alexander Ruth).
- frequent itemsets now do not report “transIdenticalToItemsets” (reported by galadrielbriere).
- fixed read.transactions reading in single format with header from a connection. First item is no longer dropped.
arules 1.6-8 (05/17/2021)
CRAN release: 2021-05-17
New Feature
- transactions have now a constructor function called transactions().
- Added new method compatible() to itemMatrix to check if the item coding is compatible between two objects.
- c() now produces a warning if two itemMatrices with different itemCoding are combined.
- encode and recode accept now for itemLabels also objects with an itemLabels method.
- recode is now also available for associations (itemsets and rules).
arules 1.6-7 (03/12/2021)
CRAN release: 2021-03-16
arules 1.6-6 (05/14/2020)
CRAN release: 2020-05-15
New Features
- added interestMeasure rhsSupport.
- added interestMeasure stdLift.
- addComplement now adds variables and levels to indicate what items are complments.
arules 1.6-5 (04/03/2020)
CRAN release: 2020-04-04
New Features
- improved speed for calculating interestMeasures for rules and itemsets with no available quality information or reuse = FALSE.
- Manual pages for associations were improved with examples for itemCoding.
- Manual page for interestMeasures is now linked with the associated web page.
- interest measure laplace (Laplace confidence) gained parameter k for the number of classes.
arules 1.6-2 (12/02/2018)
CRAN release: 2018-12-03
New Features
- discretizeDF now understands the method “none” which skips discretization.
- discretizeDF now reports which column produces the problem.
arules 1.6-1 (04/04/2018)
CRAN release: 2018-04-07
arules 1.6-0 (2/28/2018)
CRAN release: 2018-03-06
Major Changes
- discretize: the default method is now “frequency” and categories was renamed breaks to be consistent with cut in R-base.
arules 1.5-5 (01/09/2018)
CRAN release: 2018-01-10
arules 1.5-4 (10/12/2017)
CRAN release: 2017-10-12
arules 1.5-3 (08/31/2017)
CRAN release: 2017-09-01
arules 1.5-1 (01/23/2017)
New Features
- Added interest measure maxConf.
- is.significant now supports in addition to Fisher’s exact test, the chi-squared test.
- interest measures Fisher’s exact test and chi-squared (using significance = TRUE) can now produce p-values for substitutes (with complements = FALSE).
- Added function DATAFRAME for more control over coercion to data.frame (e.g., use separate columns for LHS and RHS of rules).
arules 1.5-0 (09/23/2016)
CRAN release: 2016-10-02
Major Changes
- apriori uses now a time limit set in the parameter list with maxtime. The default is 5 seconds. Running out of time or maxlen results in a warning. The warning for low absolute support was removed.
Bug Fixes
- is.redundant now also marks rules with the same confidence as redundant.
- plot for associations and transactions produces now a better error/warning message.
- improved argument check for %pin%. Warns now for multiple patterns (was an error) and give an error for empty pattern.
- inspect prints now consistently the index of rules/itemsets using brackets and starting from 1.
arules 1.4-0 (03/18/2016)
CRAN release: 2016-03-19
New Features
- The transaction class lost slot transactionInfo (we use the itemsetInfo slot now). Note that you may have to rebuild some transaction sets if you are using transactionInfo.
- interestMeasure: performance improvement for “improvement” measure.
- sort: speed up sort by always sorting NAs last.
- head: added method head for associations for getting the best rules according to an interest measure faster than sorting all the associations first.
- abbreviate is now a S4 generic with S4 methods.
arules 1.3-0 (11/11/2015)
CRAN release: 2015-11-14
New Features
- removed deprecated WRITE and SORT functions.
- subset extraction: added checks, handles now NAs and recycles for logical.
- read.transactions gained arguments skip and quote and some defaults for read and write (uses now quotes and no rownames by default) have changed.
- itemMatrix: coercion from matrix checks now for 0-1 matrix with a warning.
- APRIORI and ECLAT report now absolute minimum support.
- APRIORI: out-of-memory while rule building does now result in an error and not a memory fault.
- aggregate uses now ‘by’ instead of ‘itemLabels’ to conform to aggregate in base.
arules 1.2-1 (09/20/2015)
CRAN release: 2015-09-21
arules 1.2-0 (09/14/2015)
CRAN release: 2015-09-15
Major Changes
- added support for weighted association rule mining (by C. Buchta):
- transactions can store weights a column called “weight” in transactionInfo.
- support, itemFrequency and itemFrequencyPlot gained a parameter called weighted.
- weclat extends eclat with transaction weights.
- hits can be used to calculate weights from transact ions.
- We are transitioning to internally use consistently data.frames with the correct number of rows for quality, itemInfo, transactionInfo and itemsetInfo. These data.frames possibly have 0 columns.
- arules uses now testthat (tests are in tests/testthat).
New Features
- sort can now sort by several columns (used to break ties) in quality. It also gained an order parameter to return a permutation vector (order) instead.
- inspect gained parameters setStart, setEnd, itemSep, ruleSep and linebreak to control output better.
- read.transactions now ignores empty items (e.g., caused by trailing commas and leading or trailing white spaces).
- labels now returns not a list but consistent labels for objects
(transactions, itemMatrix, rules, itemsets, and tidLists). - tidLists has now an inspect method, gained coercion from “list”, and has now a replacement method for dimnames().
- Coercion from itemMatrix to matrix results now in a logical matrix.
- fixed as(transactions, “data.frame”). The column names do now have no prefix (except if transactionInfo contains an item called “items”).
- transactions has now its own dimnames function which correctly returns transactionID from transactionInfo as rownames.
- replacement method for dimnames() checks now dimensions.
- item labels are now internally handled as character using stringAsFactor = FALSE in data.frames and not AsIs with I(character).
- rules can now have no item in the RHS.
arules 1.1-7 (6/29/2015)
CRAN release: 2015-07-01
- itemUnion: fixed bug for large amounts of dense rules.
- crossTable gained arguments measure and sort.
- Fixed namespace imports for non-base default packages.
arules 1.1-6 (12/07/2014)
CRAN release: 2014-12-08
- dissimilarity method “pearson” is now set to 1 (max) for neg. correlation. Also added phi correlation coefficient.
- discretize method “cluster” accepts now … passed on to k-means (e.g., for nstart)
- merge for itemMatrix checks now for conformity
- as(…, “transactions”): binary attributes are now translated into items only if TRUE.
arules 1.1-4 (7/25/2014)
CRAN release: 2014-07-26
- C code: fixed problem in error message generation in apriori and eclat (this fixes the trio library problem under Windows)
- C code: rapriori uses now STRING_ELT to be compatible with TERR (TIBCO)
- C code: removed some unused variables.
arules 1.1-3 (6/17/2014)
CRAN release: 2014-06-17
- Fixed dependency on XML and pmml
- the interest measure chi-squared does now also report p-values (with significance=TRUE)
- interestMeasure calculation checks now better for missing transactions
- interestMeasure consistently returns now NA if not defined for a certain rule
arules 1.1-2 (2/21/2014)
CRAN release: 2014-02-21
- discretize gained the parameter ordered.
- itemwise set operations itemUnion, itemSetdiff and itemIntersect added.
- validObject checks now rules more thoroughly
- aggregate removes duplicate items from the lhs
arules 1.1-1 (1/16/2014)
CRAN release: 2014-01-16
- is.superset/is.subset now makes sure that the two arguments conform using recode (number and order of items)
- is.superset/is.subset returns now a matrix with appropriate dimnames
- bug fix: fixed dimname bug in as(…, “dgCMatrix”) for tidLists
- image: labels are now passed on correctly.
- tidLists has now c().
arules 1.1-0 (12/10/2013)
CRAN release: 2013-12-12
- bug fix: reuse in now passed on correctly in interestMeasures (bug reported by Ying Leung)
- direct coercions from and to dgCMatrix is no longer supported use ngCMatrix instead
- coercion from ngCMatrix to itemMatrix and transactions is now possible
- C code: fixed misaligned address on 64-bit systems
arules 1.0-14 (5/24/2013)
CRAN release: 2013-05-24
- discretize handles now NAs correctly
- bug fix in is.subset
arules 1.0-13 (4/7/2013)
CRAN release: 2013-04-07
- transactions: coercion form data.frame now handles logical automatically.
- discretize replaces categorize and offers several additional methods
arules 1.0-12 (11/28/2012)
CRAN release: 2012-11-28
- Added read and write for PMML.
- ‘WRITE’ is now deprecated, use ‘write’ instead
- C code: Added a copy of the C subscript code from R for better performance and compatibility with arulesSequences
arules 1.0-11 (11/19/2012)
CRAN release: 2012-11-19
- Fixed vignette.
- Internal Changes for dimnames and subsetting
arules 1.0-9 and 1.0-10 (9/3/2012)
CRAN release: 2012-08-22
- Added PACKAGE argument to C calls.
- C code: Added C routine symbols to NAMESPACE for arulesSequence
arules 1.0-8 (8/23/2012)
CRAN release: 2012-04-23
- fixed memory problem in eclat with tidLists=TRUE
- added supportedTransactions()
- is.subset/is.superset can not return a sparse matrix
- added support to categorize continuous variables.