R中的GLM的Visreg:在'solve'中出现奇异矩阵'a'错误消息

问题描述

我对R还是很陌生,但是到目前为止,我一直在设法将其用于我的硕士论文。

已运行以下GLM:

M1 <- glm.nb(abundance ~ temp * fseason * fperiod * fregion 
                       + offset(LogRSize) + offset(LogPLength) + offset(LogSLength),data = test_data)

visreg(M1,"temp",by = "fperiod")

我正在尝试使用visreg可视化回归,但是收到以下错误消息。我已经使用visreg以相同的格式运行具有相同结构和数据的模型,并且可以正常工作-唯一的区别是数据集在不同的时间段内,所以我不确定这次有什么不同。 / p>

qr.solve(qr.R(qr.lm(object))[p1,p1])错误
求解中的奇异矩阵'a'

    > str(test_data)
tibble [2,660 x 15] (S3: tbl_df/tbl/data.frame)
 $ abundance     : num [1:2660] 0 0 0 0 0 1 0 0 4 0 ...
 $ month         : chr [1:2660] "09" "10" "11" "09" ...
 $ season        : num [1:2660] 1 1 1 1 1 1 1 1 1 1 ...
 $ season_length : num [1:2660] 3 3 3 3 3 3 3 3 3 3 ...
 $ period        : chr [1:2660] "1" "1" "1" "1" ...
 $ period_length : num [1:2660] 10 10 10 10 10 10 10 10 10 10 ...
 $ region        : num [1:2660] 2 2 2 2 2 2 2 2 2 2 ...
 $ region_size_km: num [1:2660] 19157 19157 19157 19157 19157 ...
 $ temp          : num [1:2660] 15.38 9.51 5.03 14.99 8.99 ...
 $ fseason       : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
 $ LogSLength    : num [1:2660] 1.1 1.1 1.1 1.1 1.1 ...
 $ fperiod       : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
 $ LogPLength    : num [1:2660] 2.3 2.3 2.3 2.3 2.3 ...
 $ LogRSize      : num [1:2660] 9.86 9.86 9.86 9.86 9.86 ...
 $ fregion       : Factor w/ 10 levels "1","3","4",..: 2 2 2 2 2 2 2 2 2 2 ...

此处的最小可重复示例:

https://drive.google.com/drive/folders/1p3-0BqKvErtedbT2PIr0J_FKSxihg4Td?usp=sharing

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...