簡體   English   中英

GAM模型錯誤

[英]GAM model error

我的數據框如下所示:

head(bush_status)
distance  status count
       0 endemic   844
       1 exotic     8
       5 native     3
      10 endemic    5
      15 endemic    4
      20 endemic    3

計數數據是非正態分布的。 我試圖以兩種方式將廣義加性模型擬合到我的數據中,以便可以使用方差分析來查看p值是否支持m2。

m1 <- gam(count ~ s(distance) + status, data=bush_status, family="nb")
m2 <- gam(count ~ s(distance, by=status) + status, data=bush_status, family="nb")

m1工作正常,但是m2發送錯誤消息:

"Error in smoothCon(split$smooth.spec[[i]], data, knots, absorb.cons, 
scale.penalty = scale.penalty,  : 
  Can't find by variable"

這遠遠超出了我,因此如果有人可以提供任何建議,將不勝感激!

從您的注釋中可以很明顯地看出,您在平滑器中向by傳遞了一個character變量。 您必須在此處傳遞一個factor變量。 對我來說,這也是一個常識,我認為這是一個設計缺陷(因為基本R回歸函數可以很好地處理字符變量)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM