I have a problem using BradleyTerry2 package in R. My data looks like as below. I created the data from another code, and I think the format is same to the "citations.sf" in BradleyTerry exmple (https://cran.r-project.org/web/packages/BradleyTerry2/vignettes/BradleyTerry.pdf)
player1 player2 win1 win2
1 1 2 10 0
2 1 3 10 0
3 1 4 5 5
4 1 5 10 0
5 1 6 9 1
6 2 3 6 4
7 2 4 4 6
8 2 5 5 5
9 2 6 8 2
10 3 4 2 8
11 3 5 7 3
12 3 6 6 4
13 4 5 10 0
14 4 6 9 1
15 5 6 4 6
However, when I run speedModel <- BTm(cbind(win1, win2), player1, player2, data = dat)
, It shows an error message as below.
Error in Diff(player1, player2, formula, id, data, separate.ability, refcat, : 'player1$..' and 'player2$..' must be factors with the same levels
I looked at another page on StackOverflow (Updated with data: Error in Diff...must be factors with the same levels), and I tried the below code. (I don't understand what it does, though.)
levels(dat[,1]) <- dat(c(dat[,1], dat[,2]))
levels(dat[,2]) <- dat(c(dat[,1], dat[,2]))
However, the BTm() function throws the same message. Can anyone tell me what I can do?
Here is the result of dput(dat)
structure(list(player1 = structure(c(1L, 1L, 1L, 1L, 1L, 2L,
2L, 2L, 2L, 3L, 3L, 3L, 4L, 4L, 5L), .Label = 1:6), player2 = structure(c(2L,
3L, 4L, 5L, 6L, 3L, 4L, 5L, 6L, 4L, 5L, 6L, 5L, 6L, 6L), .Label = 1:6),
win1 = c(10L, 10L, 5L, 10L, 9L, 6L, 4L, 5L, 8L, 2L, 7L, 6L,
10L, 9L, 4L), win2 = c(0L, 0L, 5L, 0L, 1L, 4L, 6L, 5L, 2L,
8L, 3L, 4L, 0L, 1L, 6L)), row.names = c(NA, -15L), class = "data.frame")