r - 在 R 中执行 GAM(mgcv 包)时,“model.matrix.formula(form, data) 中的错误:数据必须是 data.frame”
问题描述
寻求一个友好的灵魂,知道如何解决这个错误或者理解为什么会出现这个错误。
不完全确定发生了什么,但每次我尝试使用随机效果(bs="re"
带有mgcv
包)进行 GAM 时都会出现此错误。这很奇怪,因为不仅出现在新模型上,甚至出现在以前工作的模型上(多次)。我确保数据没有 NA、科学数据或随机公式。此外,我没有使用日期格式来避免错误,以前是这样工作的。
我也尝试通过将数据转换为数据框,as.data.frame(x)
但发生了同样的错误。
我一直在玩这个公式,似乎每次出现随机效应bs="re"
时,无论是其中的 2 个(站点、州)还是其中一个(站点),都会出现错误。如果我将它们完全排除在公式之外,它就会完美地工作。
我想这可能是:
与我可能已经安装但尝试解决但没有效果的另一个软件包有些不兼容。删除了所有最近安装的软件包,错误仍然存在。
其他可能是对
mgcv
包的任何更新?
更新:它适用于 R 软件,但不适用于 R studio。
有没有人知道如何解决这个问题或为什么会出现这个问题
以下模型以前可以工作但不再有效,每次都给我提到的错误
gam_2a <- gam(Total_Items ~ s(DayI0, k=14) + s(Site, State, bs="re"), offset(log(EffortDayC)),data = x,family=poisson(link="log"),method = "REML")
变量说明:
Total_Items = 每个事件发现的碎片数量;
DayI0 = 自第一次清理后的天数(数字);
地点 = 抽样地点(地点在州内);
状态 = 采样状态;
EffortDayC = Effort(海滩长度、志愿者人数、采样时间)*DayC(采样间隔);
下面的 str(x) 输出:
和头部的数据更好理解一点: enter image description here enter image description here
解决方案
排序!该软件包agricolae
导致与该mgcv
软件包不兼容。
推荐阅读
- javascript - 在 JavaScript 循环期间加载进度条
- ios - Firebase 从 AutoId 节点 Swift iOS 读取数据
- swift - How to change the size of a collection view cell after adding content to that cell
- sql-server - 使用 FOR JSON PATH 嵌套 JSON
- vue.js - 根据条件更改路由器名称
- c# - WPF creating resource dictionary that has many bindable parameters
- flutter - 是否可以在颤动的标签栏选择中更改应用栏文本更改?
- html - flex row with dynamic height add bottom space then start shrink
- r - Histograms changing shape when specifying new color aesthetic
- angular - Need help converting a json string to an object