我正在尝试对以下内容进行负二项式回归:
df <- structure(list(Year = c("2018", "2018", "2018", "2018", "2018",
"2018", "2018", "2018", "2018", "2018", "2018", "2018", "2019",
"2019", "2019", "2019", "2019", "2019"), Month = c("1", "10",
"11", "12", "2", "3", "4", "5", "6", "7", "8", "9", "1", "2",
"3", "4", "5", "6"), count = c(109L, 91L, 73L, 74L, 94L, 113L,
92L, 100L, 114L, 111L, 106L, 86L, 116L, 92L, 94L, 84L, 78L, 98L
), year_mon = c("2018 - 1", "2018 - 10", "2018 - 11", "2018 - 12",
"2018 - 2", "2018 - 3", "2018 - 4", "2018 - 5", "2018 - 6", "2018 - 7",
"2018 - 8", "2018 - 9", "2019 - 1", "2019 - 2", "2019 - 3", "2019 - 4",
"2019 - 5", "2019 - 6")), row.names = c(NA, -18L), groups = structure(list(
Year = c("2018", "2019"), .rows = structure(list(1:12, 13:18), ptype = integer(0), class = c("vctrs_list_of",
"vctrs_vctr", "list"))), row.names = 1:2, class = c("tbl_df",
"tbl", "data.frame"), .drop = TRUE), class = c("grouped_df",
"tbl_df", "tbl", "data.frame"))
我假设这是除泊松回归之外最好的回归技术,但我运行以下......
library(MASS)
summary(glm.nb(count ~ year_mon, data=df))
..并得到这个错误...
Error in while ((it <- it + 1) < limit && abs(del) > eps) { :
missing value where TRUE/FALSE neededError in while ((it <- it + 1) < limit && abs(del) > eps) { :
missing value where TRUE/FALSE needed
不确定我在这里到底做错了什么。我并不完全依赖于负比诺姆,但我想要另一个模型来比较,而不仅仅是泊松,这看起来很合适。