Wrapper Algorithm for All Relevant Feature Selection

An all relevant feature selection wrapper algorithm. It finds relevant features by comparing original attributes' importance with importance achievable at random, estimated using their permuted copies (shadows).


Changes in 6.0:

  • Migration from GitHub to NotABug.
  • Additional verbosity level, doTrace=3.
  • Boruta for those in a hurry vignette.
  • Extra-trees importance.

Changes in 5.3:

  • Xgboost importance.
  • Codebase modernisation.

Changes in 5.2:

  • New status messages, including proper grammar and a count of still undecided attributes. (Thanks to Aristide Mooyaart for suggesting this)
  • Boruta to formula conversion functions (getConfirmedFormula, getNonRejectedFormula) are back, after a silent disappearance in the 2.0 version. (Thanks to Marco Niemann)
  • Documentation fixes.

Changes in 5.1:

  • Documentation fix. (Thanks to Andrew Slack-Smith for spotting the problem)
  • ranger VIM providers fixed to support survival problems. (Thanks to James Iremonger for spotting this)
  • Various documentation updates.
  • Code and issues on GitHub.

Changes in 5.0:

  • ranger RF implementation replaced randomForest in default importance providers, bringing speed and parallel processing capabilities. Results should be the same, but there may be minor differences. Using getImp=getImpLegacyRfZ restores legacy behaviour. See ?getImpLegacyRf for a further discussion.
  • Names of columns in the attStats output changed to reflect the fact that Boruta may use arbitrary importance source.
  • Documentation fixes, better organisation of code over files.

Changes in 4.0:

  • Initial rounds were dropped from the algorithm, as they seem redundant after implementation of a proper p-value adjustment. This should provide noticeable speed-up, however the results may be different than in previous versions.
  • TentativeRoughFix interface changes in order to adapt to the change mentioned above.
  • Output of the importance source is validated, so that wrong values will be clearly reported.
  • Code clean-up.

Changes in 3.1:

  • Better status messages.

Changes in 3.0:

  • More importance adapters defined.
  • Fixed TentativeRoughFix() bug making this function always return the original Boruta object without any modification.
  • Built-in multiple-comparisons correction, which breaks compatibility with older version of Boruta. Use pValue=0.001 and mcAdj=FALSE to trigger the legacy behaviour.
  • Experimental, "forced" mode of Boruta dropped. It is equivalent to fixing light argument of Boruta function to TRUE, its previously default value.

Changes in 2.1:

  • Fixed attStats() bug making withTentative argument behave opposite to what it should do. (Thanks to Jitao David Zhang for spotting this)

Changes in 2.0:

  • Allowed to replace randomForest with other importance source.
  • Changes in output; "rand" attributes are now called "shadow" ones.
  • ZScoreHistory is now ImpHistory; some scripts and old Boruta objects may become incompatible.
  • Documentation updates.
  • Formulae export functions become private.

Changes in 1.5:

  • Improved performance of dealing with huge inputs.
  • Removed redundant decisionHistory from output.

Changes in 1.4:

  • Fixed manual entry suggesting that Boruta can only work for classification problems. (Thanks to Allan Engelhardt for spotting this)
  • Fixed an error occurring when all attributes are claimed Rejected during one of the initial rounds. (Thanks to Allan Engelhardt for spotting this)

Changes in 1.3:

  • Fixes to the output. (Thanks to Achim Zeileis for suggesting them)

Changes in 1.2:

  • New plotting function plotZHistory.
  • Changes in manual.

Changes in 1.1:

  • Fixed a bug making get*Formula functions throw error when Boruta was run with formula provided as a variable.
  • Fixed minor documentation inconsistency.

Changes in 1.0:

  • First public release.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


7.0.0 by Miron Bartosz Kursa, 2 years ago


Report a bug at https://gitlab.com/mbq/Boruta/issues

Browse source code at https://github.com/cran/Boruta

Authors: Miron Bartosz Kursa [aut, cre] , Witold Remigiusz Rudnicki [aut]

Documentation:   PDF Manual  

Task views: Machine Learning & Statistical Learning

GPL (>= 2) license

Imports ranger

Suggests mlbench, rFerns, randomForest, testthat, xgboost, survival

Imported by immcp, multiclassPairs.

Depended on by hsdar.

Suggested by fscaret, varrank.

See at CRAN