# bttree

##### Bradley-Terry Trees

Recursive partitioning (also known as trees) based on Bradley-Terry models.

- Keywords
- tree

##### Usage

```
bttree(formula, data, na.action, cluster,
type = "loglin", ref = NULL, undecided = NULL, position = NULL, …)
```# S3 method for bttree
predict(object, newdata = NULL,
type = c("worth", "rank", "best", "node"), …)

##### Arguments

- formula
A symbolic description of the model to be fit. This should be of type

`y ~ x1 + x2`

where`y`

should be an object of class`paircomp`

and`x1`

and`x2`

are used as partitioning variables.- data
an optional data frame containing the variables in the model.

- na.action
A function which indicates what should happen when the data contain

`NA`

s, defaulting to`na.pass`

.- cluster
optional vector (typically numeric or factor) with a cluster ID to be employed for clustered covariances in the parameter stability tests.

- type
character indicating the type of auxiliary model in

`bttree`

and the type of predictions in the`predict`

method, respectively. For the auxiliary model see`btmodel`

. For the`predict`

method, four options are available: the fitted`"worth"`

parameter for each alternative, the corresponding`"rank"`

, the`"best"`

alternative or the predicted`"node"`

number.- ref, undecided, position
arguments for the Bradley-Terry model passed on to

`btmodel`

.- …
arguments passed to

`mob_control`

.- object
fitted model object of class

`"bttree"`

.- newdata
optionally, a data frame in which to look for variables with which to predict. If omitted, the original observations are used.

##### Details

Bradley-Terry trees are an application of model-based recursive partitioning
(implemented in `mob`

) to Bradley-Terry models for
paired comparison data (implemented in `btmodel`

).
Details about the underlying theory and further explanations of the
illustrations in the example section can be found in
Strobl, Wickelmaier, Zeileis (2011).

Various methods are provided for `"bttree"`

objects, most of them
inherit their behavior from `"mob"`

objects (e.g., `print`

, `summary`

,
etc.). `itempar`

behaves analogously to `coef`

and extracts the
worth/item parameters from the BT models in the nodes of the tree. The `plot`

method employs the `node_btplot`

panel-generating function.

##### Value

An object of S3 class `"bttree"`

inheriting from class `"modelparty"`

.

##### References

Strobl C, Wickelmaier F, Zeileis A (2011). Accounting for
Individual Differences in Bradley-Terry Models by Means of Recursive Partitioning.
*Journal of Educational and Behavioral Statistics*, **36**(2), 135--153.
10.3102/1076998609359791

##### See Also

##### Examples

```
# NOT RUN {
o <- options(digits = 4)
## Germany's Next Topmodel 2007 data
data("Topmodel2007", package = "psychotree")
## BT tree
tm_tree <- bttree(preference ~ ., data = Topmodel2007, minsize = 5, ref = "Barbara")
plot(tm_tree, abbreviate = 1, yscale = c(0, 0.5))
## parameter instability tests in root node
if(require("strucchange")) sctest(tm_tree, node = 1)
## worth/item parameters in terminal nodes
itempar(tm_tree)
## CEMS university choice data
data("CEMSChoice", package = "psychotree")
summary(CEMSChoice$preference)
## BT tree
cems_tree <- bttree(preference ~ french + spanish + italian + study + work + gender + intdegree,
data = CEMSChoice, minsize = 5, ref = "London")
plot(cems_tree, abbreviate = 1, yscale = c(0, 0.5))
itempar(cems_tree)
options(digits = o$digits)
# }
```

*Documentation reproduced from package psychotree, version 0.15-3, License: GPL-2 | GPL-3*