https://github.com/cran/editrules
Raw File
Tip revision: 158ecf96aac9c3038b383b043b76d92ec963a35a authored by Edwin de Jonge on 25 September 2011, 00:00:00 UTC
version 2.0-3
Tip revision: 158ecf9
NEWS
version 2.0-3
- new generic function checkDatamodel: checks data agains datamodel implied by editarray
- bugfix in localizeErrors: crashed when reduce() (used in blocks) removes variables in editarray (thanks to Bikram Maharjan)
- internally, eliminate.editarray performs extra edit redundancy checks
- fixed cornercase in `[.editarray`. Now correctly handles empty character ("") as category name.
- added numcat function, returns number of categories for each variable in an editarray

version 2.0-2
- NOTE: 2.0-2 is not a CRAN release
- includes *BETA* version of mixed edit parsing
- includes *BETA* version of error localiztion as MIP problem (option method='mip' in localizeErrors)
- eliminate.editarray gained speed in certain cases
- fixed cornercase in editarray: empty category value gave new variable 
- New function editfile reads edits and domain definitions from text file
- editarray gains env (environment) argument
- editarray and editmatrix now handle zero-length arguments

version 2.0-1
- bugfix in isSubset.editarray
- buxfix in localizeErrors: maxduration was previously ignored (thanks to Francesca Pogelli and Teresa Buglielli of ISTAT)
- buxfix in parseEdits: non constant parsing was not detected. It is now also possible to use x*100 (thanks to Francesca Pogelli and Teresa Buglielli of ISTAT)
- bugfix in errorLocalizer: no solution was returned if maxdurationExceeded==TRUE (even if at least 1 solution was found)
- bugfix in summary.errorLocation: could not handle NA in status fields

version 2.0-0
- Final version of vignette.
- Function 'contains' now S3 generic and overloaded for editmatrix object.
- BREAKING CHANGE. as.data.frame.editmatrix is now symmetrical with as.data.frame.editarray. Use toDataFrame for old behaviour.
- str overloaded for objects of class editarray (gives output similar to str.editmatrix)

version 1.9-0
- Parser for categorical edits accepts edits in the form "if ( <set expression> ) FALSE"
- Parser for categorical edits accepts '&' as well as '&&'
- Corner case in reduce.editmatrix: now handles empty inputmatrices.
- substValue.editarray now works for boolean values
- Parser for all edits accepts expression vector

version 1.8-1
- fixed a corner case bug for deducorrect

version 1.8-0
- violatedEdits.editmatrix more robust against NA's in records
- plot method for arguments of class errorLocation, violatedEdits
- errorLocalizer now throws error when edit set contains variables not encountered in record.
- solved edge case in error localizer. $adapt would be NA if all variables were NA (now TRUE)
- bugfix in violatedEdits.editmatrix (inequalities were checked incorrectly)
- bugfix in edge case of 'contains' (nonuniform output if editarray has only one rule)
- summary method for arguments of class editmatrix, editarray, errorLocation
- localizeErrors now accepts an array of weights so weights can be set per record
- localizeErrors gains arguments 'useBlocks' (default: TRUE) and 'verbose' (default: FALSE).
- variable and edge nodes can be colored in plot.editmatrix or plot.editarray.

version 1.7-0
- several improvements in parsing categorical edit rules in the presence of & and | operators.
- solved a bug in violatedEdits causing inequality violations to go unnoticed (since version 1.5.0, thanks to Elmar Wein)
- substValue.editarray now works for multiple variables
- Introduced the special FALSE edit (indicating that the set of valid records is empty)
- editarray now emits error when the | or || operator is used in conjuncion with an 'if' statement.
- Solved inconsistent parsing character->editmatrix->character in case a (derived) edit reduces the datamodel
- Solved bug in blocks (constants were ignored for obects of class editmatrix)
- Output of errorLocalizer.editarray is now equivalent to errorLocalizer.editmatrix
- isFeasible tested for objects of class editarray (works)
- blocks now also works for objects of class editarray
- overloaded indexing for objects of class editarray
- added function 'reduce' which deletes unnecessary variables and rows from editarray or edimatrix
- BREAKING CHANGE argument 'remove' is replaced with reduce for clarity
- NOTE: Default value for argument 'warn' in isFeasible is now set to TRUE
- NOTE: Default value for argument 'remove' in substValue.editarray is now set to FALSE

version 1.6-0
- Added functionality for plotting edit graphs directly from edit sets
- Added functionality for deriving igraph objects directly from edit sets
- Added functionality for deriving adjacency matrices for edit sets
- Package now suggests igraph package for graphical analysis of edit sets
- Fixed bug causing wrong error localization or crash when weights are used. (Thanks to Kenneth Chin-A-Fat)

version 1.5-2
- Fixed column matching bug in violatedEdits.editarray

version 1.5-1
- Fixed a bug in violatedEdits.editmatrix which caused deducorrect correctTypos to fail (Thanks to Brian Ripley for contacting us)

version 1.5-0
- BETA FUNCTIONALITY: Error localization, variable elimination etc. for categorical variables.
- new function localizeErrors(E,dat) processes whole dataset with $searchBest() (needs more testing).
- errorLocalizer throws error at invalid weights (thanks to Kenneth Chin-A-Fat).
- Argument maxweight was ignored by errorLocalizer.editmatrix, now works.
- violatedEdits has better (more clear) output.

version 1.0-2
- solved bug in as.character.editmatrix (thanks to Sander Scholtus)

version 1.0-1
- solved edge case in $searchBest() method of errorLocalizer (thanks to Sander Scholtus)

version 1.0-0
- Formal upgrade only.

version 0.9-1
- errorLocalizer now robust when variables occur in record and not in editmatrix.

version 0.9-0
- Performance gain by improved bounding condition in backtracking object returned by errorLocalizer 
- functions getH and geth for objects of class editmatrix added.
- removed bug from $searchBest(), a sole solution wasn't returned.
- backtracker$searchNext() and $searchAll() gain maxduration argument
- BREAKING CHANGE: function findBlocks replaced by blocks. finblocks now emits warning, will become error in next release
- Solved bug causing eliminateFM to return spurious but harmless edits in edge case, thanks to Sander Scholtus
- Backtracker gains maxdepth and maxduration parameter
- errorLocalizer gains maxduration, maxadapt and maxweight parameter
- removed deprecated functions cp.editmatrix, replaceValue
 
version 0.8-0
- removed deprecated functions getC. getMatrix from source
- deprecated functions cp.editmatrix, replaceValue now emit error
- added index to vignette
- solved corner case error in error localizer
- BREAKING CHANGE: renamed choicepoint into backtracker
- cp object generated by errorLocalizer does not return final editmatrix anymore (useless).
- solved a bug causing isObviouslyInfeasible to miss certain cases
- substValue can now replace multiple values at once.
- `[.editmatrix` now retains derivation history (previously lost in substValue operations)
- removed a bug from echelon.editmatrix, it failed when no operation was possible.

version 0.7-1
- made as.errormatrix a bit more robust and solved a cornercase 
- fixed bug in editmatrix causing crashes in cornercase when "description" column of input is empty.

version 0.7
- errorLocalizer gains searchBest() function, returns random solution in case of degeneracy
- added as.character coercions in editmatrix to solve crash
- BREAKING CHANGE: replaceValues renamed to substValues. Currently warns, will emit error in next release.
- BREAKING CHANGE: cp.editmatrix renamed to errorLocalizer and now S3 generic. Currently warns, will emit error in next release.
- getC and getMatrix are deprecated and now emit errors.
- Vignette ready for review
- solved bug in documentation of cp.editmatrix
- solved bug in str.editmatrix
- isObviouslyRedundant now finds duplicate rows within tolerance.
- overloaded built-in function "duplicated" for editmatrix. 
- Added full feasibility check for editmatrix: isFeasible
- removed bug from findBlocks and exported.

version 0.6
- Edit rule coercions: as.expression as.character as.editmatrix as.data.frame
- Transform equality restrictions to reduced row echelon form
- Obvious (in)feasibility and redundancy checks for linear edit rules
- The following functions are deprecated, and give a warning: getC, getMatrix (warnings will become errors in the next release).
- Added cp.editmatrix which solves error localization under generalized Fellegi-Holt paradigm
- Added choicepoint algorithm for generic binary search
- Option normalize=TRUE for editmatrix is now the default
- Overloaded str function for editmatrix object
- Added fully vectorized Fourier-Motzkin elimination function with redundancy removal
- Added a normalize function
- Exported and documented replaceValue
- rewrote internal representation of editmatrix, it is now an augemented matrix (A|b)
- BREAKING CHANGE: clean up of notation/syntax/naming convention: constants are named b, coefficients are named A

version 0.5
- fixed breakage at single record input of violatedEdits
- added findBlocks, break up a matrix in its constituing blocks

version 0.4-1
- long edit rules (> 60 characters) failed, the upper limit for editrules is right now 500
- added row subscript operator for object of class editmatrix
- added getMatrix, same functionality as as.matrix, but more symetric with respect to getOps, getC and getVars

version 0.4
- improved expression parsing
- improved handling of wrong input for method editmatrix
- improved handling of extra columns in editrules
- added as.data.frame.editmatrix
- negative coefficients and constants were not parsed correctly
- added vignette
- removed deprecated editsinfo parameter from editmatrix
- added getOps and getCONSTANT functions for retrieving operators and constants from an editmatrix
- checkRows is now S3 generic and overloaded for character, data.frame and editmatrix
- added simplification of constraints (coefficients will be summed)
- renamed errormatrix into violatedEdits

version 0.2
- added CONSTANT parsing and generation
- simplified editmatrix by removing one parameter (accepting both types of input)
- renamed editsinfo to more understandable editrules
- removed documentation of internal "edits" function

version 0.1-1
- added an as.matrix function
- improved editmatrix example
back to top