# glicko_run: Glicko rating algorithm In sport: Sequential Pairwise Online Rating Techniques

 glicko_run R Documentation

## Glicko rating algorithm

### Description

Glicko rating algorithm

### Usage

``````glicko_run(
data,
formula,
r = numeric(0),
rd = numeric(0),
init_r = 1500,
init_rd = 350,
lambda = numeric(0),
share = numeric(0),
weight = numeric(0),
kappa = 0.5
)
``````

### Arguments

 `data` data.frame which contains columns specified in formula, and optional columns defined by `lambda`, `weight`. `formula` formula which specifies the model. RHS Allows only player rating parameter and it should be specified in following manner: `rank | id ~ player(name)`. `rank` player position in event. `id` event identifier in which pairwise comparison is assessed. `player(name)` name of the contestant. In this case `player(name)` helps algorithm point name of the column where player names are stored. Users can also specify formula in in different way: `rank | id ~ player(name|team)`. Which means that players are playing in teams, and results are observed for teams not for players. For more see vignette. `r` named vector of initial players ratings estimates. If not specified then `r` will be created automatically for parameters specified in `formula` with initial value `init_r`. `rd` rd named vector of initial rating deviation estimates. If not specified then `rd` will be created automatically for parameters specified in `formula` with initial value `init_rd`. `init_r` initial values for `r` if not provided. Default (`glicko = 1500`, `glicko2 = 1500`, `bbt = 25`, `dbl = 0`) `init_rd` initial values for `rd` if not provided. Default (`glicko = 350`, `glicko2 = 350`, `bbt = 25/3`, `dbl = 1`) `lambda` name of the column in `data` containing lambda values or one constant value (eg. `lambda = colname` or `lambda = 0.5`). Lambda impact prior variance, and uncertainty of the matchup result. The higher lambda, the higher prior variance and more uncertain result of the matchup. Higher lambda flattens chances of winning. `share` name of the column in `data` containing player share in team efforts. It's used to first calculate combined rating of the team and then redistribute ratings update back to players level. Warning - it should be used only if formula is specified with players nested within teams (`player(player|team)`). `weight` name of the column in `data` containing weights values or one constant (eg. `weight = colname` or `weight = 0.5`). Weights increasing (weight > 1) or decreasing (weight < 1) update change. Higher weight increasing impact of event result on rating estimate. `kappa` controls `rd` shrinkage not to be greater than `rd*(1 - kappa)`. `kappa=1` means that `rd` will not be decreased.

### Value

A "rating" object is returned:

• `final_r` named vector containing players ratings.

• `final_rd` named vector containing players ratings deviations.

• `r` data.frame with evolution of the ratings and ratings deviations estimated at each event.

• `pairs` pairwise combinations of players in analysed events with prior probability and result of a challenge.

• `class` of the object.

• `method` type of algorithm used.

• `settings` arguments specified in function call.

### Examples

``````# the simplest example
data <- data.frame(
id = c(1, 1, 1, 1),
team = c("A", "A", "B", "B"),
player = c("a", "b", "c", "d"),
rank_team = c(1, 1, 2, 2),
rank_player = c(3, 4, 1, 2)
)

# Example from Glickman
glicko <- glicko_run(
data = data,
formula = rank_player | id ~ player(player),
r = setNames(c(1500.0, 1400.0, 1550.0, 1700.0), c("a", "b", "c", "d")),
rd = setNames(c(200.0, 30.0, 100.0, 300.0), c("a", "b", "c", "d"))
)

# nested matchup
glicko <- glicko_run(
data = data,
formula = rank_team | id ~ player(player | team)
)
``````

sport documentation built on May 29, 2024, 7:55 a.m.