抱歉帖子太长!我是 R 新手,一直在努力提高对这门语言的掌握。我偶然发现了这个有趣的足球结果建模项目:http://www1.maths.leeds.ac.uk/~voss/projects/2010-sports/JamesGardner.pdf http://www1.maths.leeds.ac.uk/~voss/projects/2010-sports/JamesGardner.pdf
当我运行模拟完整赛季的代码时,我不断遇到问题(首先提到第 36 页,附录第 59 页):
Games <- function(parameters)
{
teams <- rownames(parameters)
P <- parameters$teams
home <- parameters$home
n <- length(teams)
C <- data.frame()
row <- 1
for (i in 1:n) {
for (j in 1:n) {
if (i != j) {
C[row,1] <- teams[i]
C[row,2] <- teams[j]
C[row,3] <- rpois(1, exp(P[i,]$Attack - P[j,]$Defence + home))
C[row,4] <- rpois(1, exp(P[j,]$Attack - P[i,]$Defence))
row <- row + 1
}
}
}
return(C)
}
Games(TeamParameters)
我得到的回应是
Error in `*tmp*`[[j]] : subscript out of bounds
当我尝试回溯()时,这就是我得到的:
3: `[<-.data.frame`(`*tmp*`, row, 1, value = NULL) at #11
2: `[<-`(`*tmp*`, row, 1, value = NULL) at #11
1: Games(TeamParameters)
我真的不明白该错误的含义,我将不胜感激任何帮助。再次为这么长的帖子道歉,但我对这个项目真的很感兴趣,并且很想了解问题是什么!