Calculate running Elos for a series of multi-team matches.

elo.run.multiteam(
formula,
data,
na.action,
subset,
k = NULL,
initial.elos = NULL,
...
)

## Arguments

formula |
A one-sided formula with a `multiteam()` object.
See also the the help page for formulas for details. |

data |
A `data.frame` in which to look for objects in `formula` . |

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

subset |
An optional vector specifying a subset of observations. |

k |
A constant k-value (or a vector, where appropriate). |

initial.elos |
An optional named vector containing initial Elo ratings for all teams in `formula` .
If a single (unnamed) value is supplied, that value is applied to all teams. `NULL` (the default)
sets all Elos to 1500. |

... |
Other arguments (not used at this time). |

## Details

This is like `elo.run`

(and in fact it runs `elo.run`

in the background).
The formula takes a `multiteam()`

object, which assumes that teams "win"
in a well-ordered ranking. It assumes that the first place team beats all other teams,
that the second place team loses to the first but beats the others, etc. In that regard,
`elo.run.multiteam`

reduces to `elo.run`

when the number of teams (`ncol(multiteam())`

) is 2

However, this is less flexible than `elo.run`

, because (1) there cannot be ties; (2) it does not accept
adjustments; and (3) k is constant within a "game"

## Examples

data(tournament.multiteam)
elo.run.multiteam(~ multiteam(Place_1, Place_2, Place_3, Place_4),
data = tournament.multiteam, subset = -28, k = 20)
#>
#> An object of class 'elo.run.multiteam', containing information on 8 teams and 27 matches.
#>