A Laboratory for Recursive Partytioning

A computational toolbox for recursive partitioning. The core of the package is ctree(), an implementation of conditional inference trees which embed tree-structured regression models into a well defined theory of conditional inference procedures. This non-parametric class of regression trees is applicable to all kinds of regression problems, including nominal, ordinal, numeric, censored as well as multivariate response variables and arbitrary measurement scales of the covariates. Based on conditional inference trees, cforest() provides an implementation of Breiman's random forests. The function mob() implements an algorithm for recursive partitioning based on parametric models (e.g. linear models, GLMs or survival regression) employing parameter instability tests for split selection. Extensible functionality for visualizing tree-structured regression models is available. The methods are described in Hothorn et al. (2006) , Zeileis et al. (2008) and Strobl et al. (2007) .


            CHANGES IN party VERSION 1.3-3 (2019-03-04)

o    make rchk happier

            CHANGES IN party VERSION 1.3-2 (2019-03-01)

o    move ExpectCovar and ExpectCovarInfluence classes from coin to

            CHANGES IN party VERSION 1.3-1 (2018-08-08)

o    varimpAUC() now calls varImp::varImpAUC()

            CHANGES IN party VERSION 1.3-0 (2018-04-20)

o    New scale argument for predict(<cforest>, scale = TRUE, ...).
     For simple regression forests, predicting
     the conditional mean by nearest neighbor weights with
     scale = TRUE is now
     equivalent to the aggregation of means. The unscaled version
     proposed in <doi:10.1002/sim.1593> can be obtained with
     scale = FALSE.}

            CHANGES IN party VERSION 1.2-4 (2017-12-13)

o    Bonferroni sometimes overcorrected (by taking constant variables into account). 
     Spotted by Heidi Seibold.

o    Bugfix for long-standing problem in conditional variable importances
     by Dries Debeer.

            CHANGES IN party VERSION 1.2-3 (2017-04-10)

o    predict(<cforest>, OOB = TRUE) in party < 1.2-0 was _correct_
     and version 1.2-0 to 1.2-2 contained in incorrect "correction".
     The test set error and the out-of-bag error are now (again) 
     roughly equal. There won't be any correlation between 
     observations and out-of-bag predictions when the response is
     independent to all explanatory variables. Out-of-bag predictions 
     in package partykit (>= 2.0-0) are now based on the same
     out-of-bag weights and the results from both packages are 
     roughly equivalent. The issue was first spotted by
     Julian Karch and later by Andrew Sage.

o    comment on false alarms by maacheck / bcheck (email by
     Tomas Kalibera April 10, 2017) in party/src/*c

            CHANGES IN party VERSION 1.2-2 (2017-02-27)

o    free memory in src/Distributions.c (pointed out by
     Martin Binder)

o    register C routines

            CHANGES IN party VERSION 1.2-1 (2017-02-08)

o    fix a memory leak occuring while searching for surrogate
     splits in the process of predicting the terminal node ID

o    surrogate splits might have used statistics with slightly
     incorrect weights

o    party::ctree gives _same_ results as partykit::ctree 
     (version >= 2.0-1 from R-forge)

            CHANGES IN party VERSION 1.2-0 (2017-02-06)

o    predict(<cforest>, OOB = TRUE) relied on incorrect weights
     and gave suboptimal predictions. varimp() was not affected.
     The effect was pointed out by Julian Karch when comparing
     party::cforest to partykit::cforest

            CHANGES IN party VERSION 1.1-2 (2016-11-28)

o    remove ctree_memory(), also from examples

            CHANGES IN party VERSION 1.1-1 (2016-11-23)

o    fix memory leak

            CHANGES IN party VERSION 1.1-0 (2016-11-18)

o    don't change values of R objects in C code, this caused
     problems with byte compiling. ctree_memory() had to be
     removed in this process.

            CHANGES IN party VERSION 1.0-26 (2016-09-01)

o    compare with libcoin instead of coin

            CHANGES IN party VERSION 1.0-25 (2015-11-04)

o    remove show from export

            CHANGES IN party VERSION 1.0-24 (2015-08-25)

o    initialize, show needed import

            CHANGES IN party VERSION 1.0-23 (2015-08-14)

o    update Rout.saves to coin 1.1-0: logrank_trafo now
     has the same sign for each tie handling method which
     changes some of the cut-points

            CHANGES IN party VERSION 1.0-22 (2015-07-28)

o    NAMESPACE update

            CHANGES IN party VERSION 1.0-21 (2015-06-06)

o    reference output updated for recent versions of R

            CHANGES IN party VERSION 1.0-20 (2015-02-18)

o    is.na.Surv is now an S3 generic in survival 2.37-7

            CHANGES IN party VERSION 1.0-19 (2014-12-17)

o    directly link to mvtnorm and thus make duplication of 
     FORTRAN code obsolate.

o    export prettytree (for package mlmeta by Andrew Z)

            CHANGES IN party VERSION 1.0-18 (2014-11-10)

o    internal call to svd acummulated memory until the 
     garbage collector was able to clean up (only after the 
     whole forest was grown). Fix by Philip Montgomery
     <[email protected]>.

            CHANGES IN party VERSION 1.0-17 (2014-09-17)

o    move initialize methods of coin classes to coin and
     re-import them

            CHANGES IN party VERSION 1.0-16 (2014-08-18)

o    import("grid")

            CHANGES IN party VERSION 1.0-15 (2014-06-26)

o    allow for missing predictor values in new varimp for
     right-censored responses

o    introduce varperm argument to R_get_nodeID

            CHANGES IN party VERSION 1.0-14 (2014-05-30)

o    add experimental varimp() for right-censored responses

            CHANGES IN party VERSION 1.0-13 (2014-02-01)

o    deal with protection issues in R-devel

            CHANGES IN party VERSION 1.0-12 (2014-01-15)

o    mammoexp -> TH.data

            CHANGES IN party VERSION 1.0-11 (2013-12-13)

o    deal with empty levels for teststat = "quad"
     (bug reported by Wei-Yin Loh <[email protected]>)

            CHANGES IN party VERSION 1.0-10 (2013-10-24)

o    new demo "strucchange-perm"

o    proximity has newdata argument

            CHANGES IN party VERSION 1.0-9 (2013-09-02)

o    export initVariableFrame (for usage in RWeka only)

o    fix NAMESPACE problems

o    data is in TH.data, not ipred anymore

            CHANGES IN party VERSION 1.0-8 (2013-07-11)

o    update mvtdist

o    documentation update

            CHANGES IN party VERSION 1.0-7 (2013-05-31)

o    ctree and cforest ignored the scores argument for the
     response. Spotted and fixed by Silke Janitza 
     <[email protected]>.

            CHANGES IN party VERSION 1.0-6 (2013-01-09)

o    use hist()$density instead of hist()$Intensities as 
     reported by R 3.0.0 to be

            CHANGES IN party VERSION 1.0-5 (2013-01-07)

o    fix class problem reported by R 3.0.0 to be

            CHANGES IN party VERSION 1.0-4 (2012-12-18)

o    export varimpAUC()

o    add where() method for RandomForest class

            CHANGES IN party VERSION 1.0-3 (2012-09-26)

o    new function varimpAUC() for AUC-based variable importance measures

o    the `weights' argument in cforest() can now be used to define
     alternative case weights for each of the trees in the forest.

            CHANGES IN party VERSION 1.0-2 (2012-04-26)

o    version 1.0-0 introduced a new bug in plotting Kaplan-Meier curves
     when fixing the weight problem in survfit; the x-axis labels where
     incorrect. Spotted by Sarah Vowler <[email protected]>.

            CHANGES IN party VERSION 1.0-1 (2012-03-23)

o    fix -Werror warnings suggested by Murray Stokely <[email protected]>

o    make sure no factor variables are evaluated as surrogate split

o    fix confusing warning messages in varimp and check
     for non-unity weights

            CHANGES IN party VERSION 1.0-0 (2012-02-17)

o    varimp can now partially deal with missing values

o    Kaplan-Meier curves are now computed _after_ removing
     zero case weights (see comment in ?survfit); plots may change

o    use cforest_unbiased instead of cforest_control/cforest_classical
     in examples and regression tests

            CHANGES IN party VERSION 0.9-99996 (2011-12-20)

o    don't ship doxygen documentation with package

o    ctree() and cforest() don't handle `-' in formulae,
     warning added to Rd files

            CHANGES IN party VERSION 0.9-99995 (2011-10-27)

o    observations with missing values in newdata might not have gone 
     with the majority in predict(<ctree>, newdata) when no surrogate 
     split was applicable. Spotted and fixed by 
     Vik <[email protected]>.

            CHANGES IN party VERSION 0.9-99994 (2011-08-22)

o    reuse classes exported by coin

            CHANGES IN party VERSION 0.9-99993 (2011-07-26)

o    attach NAMESPACE properly in tests

            CHANGES IN party VERSION 0.9-99992 (2011-05-02)

o    fix partial matching problems

            CHANGES IN party VERSION 0.9-99991 (2010-11-19)

o    fix tests/ dependencies

            CHANGES IN party VERSION 0.9-9999 (2010-09-13)

o    add update slots to tree and forest objects (later to be used
     for crossvalidation)

            CHANGES IN party VERSION 0.9-9998 (2010-08-23)

o    allow for internal permutations in predict via R_predict2

            CHANGES IN party VERSION 0.9-9997 (2010-07-06)

o    update mvt.f (see mvtnorm)

            CHANGES IN party VERSION 0.9-9996 (2010-06-24)

o    print progress bar while forest grows (via trace = TRUE
     in cforest_control())

            CHANGES IN party VERSION 0.9-9995 (2010-05-19)

o    assignment of observations based on surrogate splits
     during fitting might have failed; observations went
     with majority (in a sub-optimal way)

            CHANGES IN party VERSION 0.9-9994 (2010-04-14)

o    varimp() gives warning for non-unity weights

o    "no admissible split found" warnings disabled

            CHANGES IN party VERSION 0.9-9993 (2010-03-04)

o    just internals needed for mboost

            CHANGES IN party VERSION 0.9-9992 (2010-02-26)

o    Bug fix in mob plotting for anova models

            CHANGES IN party VERSION 0.9-9991 (2010-01-27)

o    Bug fix in error handling of mob().

            CHANGES IN party VERSION 0.9-999 (2009-09-24)

o    minbucket was erronously interpreted as minbucket + 1

o    p-values for teststat = "max" were wrong
     in the uncommon case of zero variances

            CHANGES IN party VERSION 0.9-998 (2009-06-17)

o    mtry may vary with tree depth

o    finding surrogate variables may have failed, fixed.

            CHANGES IN party VERSION 0.9-997 (2009-06-04)

o    documentation fixes

            CHANGES IN party VERSION 0.9-996 (2009-03-27)

o    survival fixes

            CHANGES IN party VERSION 0.9-994 (2009-02-10)

o    fix bug in new varimp function (which was triggered
     by splits in categorical variables)

            CHANGES IN party VERSION 0.9-993 (2009-01-29)

o    new C-level function R_remove_weights

            CHANGES IN party VERSION 0.9-992 (2009-01-19)

o   update CITATION file

            CHANGES IN party VERSION 0.9-991 (2009-01-13)

o   new conditional variable importance measure 
    (Strobl et al., 2008, BMC Bioinformatics) available.

            CHANGES IN party VERSION 0.9-99 (2008-10-28)

o   a suboptimal split was implemented when the best
    split corresponded to the last row of <data> due to
    a coding error. This should have happend only very
    rarely, however, the glaucoma example is affected.

            CHANGES IN party VERSION 0.9-98 (2008-10-15)

o   don't compute ordering of censored variables (thanks to
    Brian D. Ripley for the report)

o   experimental version of partialPlot for cforests

o   teststat = "quad" and testtype = "Univariate" produced
    wrong criteria in the presence of constant exploratory variables.
    Spotted by Sebastian Wietzke <[email protected]>

            CHANGES IN party VERSION 0.9-97 (2008-06-26)

o   predictions for new data containing missing values were
    wrong. Bug spotted by Wei-Yin Loh <[email protected]>

o   vignette updates

            CHANGES IN party VERSION 0.9-96 (2008-06-06)

o   make searching for surrogate splits a little more stable

            CHANGES IN party VERSION 0.9-95 (2008-02-27)

o   proximity() now gives _relative_ numbers 
    (similar to `randomForest'), not absolute numbers
    long-standing feature request by Henric Nilsson

            CHANGES IN party VERSION 0.9-94 (2008-01-30)

o   documentation updates

            CHANGES IN party VERSION 0.9-93 (2007-11-30)

o   It is now an error to ask for more surrogate variables
    than actually available. Thanks to Henric Nilsson.

            CHANGES IN party VERSION 0.9-92 (2007-11-22)

o   predict(<ctree-object>) computed predictions
    for observations with zero weights (by passing them down the tree).
    This was already done this way by predict(<cforest-object>) but resulted
    in an error for ctree()s.

o   minbucket added to ctree_control()

            CHANGES IN party VERSION 0.9-91 (2007-09-26)

o   bugfix: NAs in factors lead to segfaults on 64bit machines
    as reported by Carolin Strobl <[email protected]>

o   related to this: be more careful when splitting in
    variables containing missing values, especially factors.

o   add examples to regression tests

o   new function `proximity' (feature request by Henric Nilsson)

            CHANGES IN party VERSION 0.9-90 (2007-09-24)

o   new defaults for `control' argument of `cforest': unbiased
    forests are now grown by default

o   new defaults for binary classification tree visualization:
    stacked bar charts are used by default.

            CHANGES IN party VERSION 0.9-14 (2007-07-23)

o   fix problem in `varimp' introduced by new weights handling

            CHANGES IN party VERSION 0.9-13 (2007-07-23)

o   update `mvt.f'

o   improve the memory footprint of RandomForest objects
    substancially (by removing the weights slots from each node).
    More careful revision of the predict and fitting code is needed.

o   predictions for cforest with multivariate response are
    now returned in a matrix (should be a data.frame)

o   remove confusing `no admissible split found' warning 
    (which simply meant that the `minsplit' wasn't met).

            CHANGES IN party VERSION 0.9-12 (2007-06-28)

o   adjust to coin 0.6-4

            CHANGES IN party VERSION 0.9-11 (2007-06-11)

o   populate `where' slot in `mob' objects.

o   `mob_control' now has an `na.action' argument

o   cforest with replace = FALSE, fraction = ...
    can now deal with weights (spotted by Carolin Strobl
    <[email protected]>)

o   interface to LAPACK (`dgesdd' for computing a SVD)
    directly. As a side-effect, the svdmem class can be 
    simplified and no memory allocation during 
    tree growing is necessary (which results in a measureable
    performance gain)

            CHANGES IN party VERSION 0.9-10 (2007-02-28)

o   internal infrastructure for fit(x, y) interfaces,
    including a VariableFrame method for matrices.

o   deal with factors with only one level and variables where
    all observations are NA

o   don't compute design matrices in `ModelEnvFormula'

            CHANGES IN party VERSION 0.9-9 (2007-02-02)

o   internal changes to data objects: joint transformations
    only necessary for response variables (new class `ResponseFrame')
    but we need to distinguish between testing (using ranks, for
    example) and prediction (means of raw data!).

    Problem spotted by Henric Nilsson <[email protected]>.

            CHANGES IN party VERSION 0.9-8 (2007-01-15)

o   thicker median lines in boxplots

            CHANGES IN party VERSION 0.9-7 (2007-01-15)

o   fix problems with multivariate response variables
    (spotted by Henric Nilsson <[email protected]>)

            CHANGES IN party VERSION 0.9-6 (2006-11-28)

o   R-2.5.0 does not allow to change the storage.mode of factors

            CHANGES IN party VERSION 0.9-5 (2006-10-27)

o   adjusted p values computed with testtype = "MonteCarlo"
    did not take dimensionality of the underlying linear statistics
    into account. It is now ensured that _p values_ are resampled,
    not test statistics.

o   fix escape problems

            CHANGES IN party VERSION 0.9-4 (2006-09-15)

o   make sure `maxsurrogates' exceeds number of input variables

o   fix problems reported by valgrind

            CHANGES IN party VERSION 0.9-3 (2006-09-08)

o    don't call RNG functions in mvt (this is done in C code, once)

            CHANGES IN party VERSION 0.9-2 (2006-09-07)

o    mob() can't currently handle missing values,
     they are removed and a warning is given.

o    add `methods' and `vcd' to Depends:

            CHANGES IN party VERSION 0.9-0 (2006-08-31)

o    node_barplot() can now also draw stacked barplots.

o    simplify handling of ordinal variables. It is now possible
     to have multiple (ordinal) response variables.

o    some documentation updates

o    fix problems with NA handling for factors

o    make sure minsplit criterion applies in the presence of missing
     values. Bug spotted by Han Lee <[email protected]>.

            CHANGES IN party VERSION 0.8-8 (2006-08-23)

o    export `varimp' (variable importance measures for cforest())

o    documentation updates

o    add codetools checks

            CHANGES IN party VERSION 0.8-7 (2006-07-17)

o    REAL(NULL) now gives an error in C code and scores could be 
     potentially NULL: fixed for the time being.

o    add `show' method for BinaryTree and RandomForest objects

            CHANGES IN party VERSION 0.8-6 (2006-05-22)

o    add some validity checks for hyper parameters

o    add function `varimp' for computing variable importance
     measures for some random forests (this is still experimental and
     thus not exported yet, so use `party:::varimp')

            CHANGES IN party VERSION 0.8-5 (2006-04-25)

o    all hyper parameters to `cforest' are now controlled using
     objects of a new class `ForestControl' which can be created using

o    sampling of a fraction of the observations without replacement
     is now available for the `cforest' implementation of random forest.

            CHANGES IN party VERSION 0.8-4 (2006-04-04)

o    renamed argument `teststattype' to `teststat' with defaults
     c("quad", "max") in order to be compatible with the `coin' package, 
     version >= 0.4-5

o    use `1 - (1 - p)^k' instead of `p * k' for Bonferroni-adjustment.
     Node 7 for the `GlaucomaM' data is now splitted in addition (in tms).

            CHANGES IN party VERSION 0.8-3 (2006-03-20)

o   `predict' returned nonsensical results in case a tree was 
    fitted to a multivariate response variable. Now a list with one
    element for each observation is returned.

            CHANGES IN party VERSION 0.8-2 (2006-03-01)

o    plotting buglets fixed: improved axis in MOB plots,
     correct (transparent) background on jpeg() and png() devices.

	CHANGES IN `party' VERSION 0.8-1 (2006-02-23)

o    `testtype' can be Bonferroni, MonteCarlo, Univariate and
     Teststatistic (instead of Raw)		

o    removed unnecessary constraint on weights in `cforest'

o    maximize raw test statistics for random forest by default.

	CHANGES IN `party' VERSION 0.8-0 (2006-02-15)		

o    `cforest', an implementation of Breiman's random forest ensemble
     algorithm based on conditional inference trees (`ctree') has been
 added. It is somewhat experimental and thus for advanced users only.

o    `mob', an object-oriented implementation of a recently suggested
     algorithm for model-based recursive partitioning (Zeileis, Hothorn,
 Hornik, 2005) has been added. It works out of the box for partitioning
 (generalized) linear regression models, others can be easily plugged
 in. A new vignette "MOB" describes the implementation ideas and provides
 a few examples.

o    new S3 generic reweight() with methods for (g)linearModel
     for re-fitting a model with different weights.

o    new argument `maxdepth' to `ctree_control' which allows for
     growing trees of a fixed maximum depth.

o    LazyData: yes

	CHANGES IN `party' VERSION 0.3-6 (2006-02-06)

o    use a different way to deal with NAMESPACEs during in tests/*.R
     following a suggestion by Prof. Brian D. Ripley

o    use LazyLoad: yes instead of SaveImage: yes

	CHANGES IN `party' VERSION 0.3-5 (2006-02-02)

o    make R CMD check happy and move src/README to inst/README

	CHANGES IN `party' VERSION 0.3-4 (2006-01-18)

o    documentation updates

	CHANGES IN `party' VERSION 0.3-3 (2006-01-18)

o    some new convenience functions, not exported

	CHANGES IN `party' VERSION 0.3-2 (2006-01-12)

o    isequal must not check equality of attributes

	CHANGES IN `party' VERSION 0.3-1 (2005-12-02)

o    fix bug introduced in version 0.3-0: coin:::factor_trafo applies
     treatment contrasts in case of a binary factor but we need the full
     design matrix

o    documentation updates

	CHANGES IN `party' VERSION 0.3-0 (2005-11-29)

o    `ytrafo' and `xtrafo' functions make use of `coin:::trafo' now,
     i.e. the handling of influence functions and transformations
     has been unified in packages `party' and `coin'

	CHANGES IN `party' VERSION 0.2-10 (2005-11-08)

o    new slot `data' in BinaryTree objects, slots inputnames and levels 
     have been removed

	CHANGES IN `party' VERSION 0.2-9 (2005-10-19)

o    splits in categorical variables could have failed due 
     to weired internal checks

	CHANGES IN `party' VERSION 0.2-8 (2005-08-06)

o    fix problems reported by codetools

	CHANGES IN `party' VERSION 0.2-7 (2005-08-31)

o    extract inputs using [email protected]("input", data = newdata) in predict

	CHANGES IN `party' VERSION 0.2-6 (2005-08-29)

o   make gfortran happy

	CHANGES IN `party' VERSION 0.2-5 (2005-08-19)

o    ctree() now searches the global environment for variables given
     in `formula' when the `data' argument is unspecified.

	CHANGES IN `party' VERSION 0.2-4 (2005-07-07)

o    names of `criterion' element in `SplittingNode' objects were wrong

o    categorical splits with `ctree_control(testtype = "MonteCarlo")'
     were potentially wrong

	CHANGES IN `party' VERSION 0.2-3 (2005-06-29)

o   print and plot only levels which are available in a node (for nominal

	CHANGES IN `party' VERSION 0.2-2 (2005-06-27)

o   ./src/Makedeps will be automatically generated (on Windows)
    and must not be part of the source-package.

o   vignette cosmetics

Reference manual

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