我有數據顯示動物何時來到一個測量站。 example csv file here數據的前幾行是這樣的:R中有協變量的循環線性迴歸
Site_ID DateTime HourOfDay MinTemp LunarPhase Habitat
F1 6/12/2013 14:01:00 14 -1 0 river
F1 6/12/2013 14:23:00 14 -1 0 river
F2 6/13/2013 1:21:00 1 3 1 upland
F2 6/14/2013 1:33:00 1 4 2 upland
F3 6/14/2013 1:48:00 1 4 2 river
F3 6/15/2013 11:08:00 11 0 0 river
我想R中執行圓形線性迴歸以確定峯值活動倍。因變量可能是DateTime或HourOfDay,以較容易的爲準。我想將協變量Site_ID(隨機效應),加上MinTemp,LunarPhase和Habitat納入混合效應模型。
我一直在使用程序循環的lm.circular功能嘗試,並有下面的代碼:
data<-read.csv("StackOverflowExampleData.csv")
data$DateTime<-as.POSIXct(as.character(data$DateTime), format = "%m/%d/%Y %H:%M:%S")
data$LunarPhase<-as.factor(data$LunarPhase)
str(data)
library(circular)
y<-data$DateTime
y<-circular(y, units ="hours",template = "clock24",rotation = "clock")
x<-data[,c(1,4,5,6)]
lm.circular(y=y, x=x, init=c(1,1,1,1), type='c-l', verbose=TRUE)
我不斷收到錯誤:
Error in Ops.POSIXt(x, 12) : '/' not defined for "POSIXt" objects
顯然,這是一個已知的bug,但我很困惑this threat about it,並不能確定一個適當的解決辦法。建議?
此外,我的這個數據的最終目標是運行一個glm的循環線性版本,然後使用AIC或其他一些信息理論方法來測試多個模型。我正在尋找的模式將是什麼圓形線性版本是這樣的:
glmer(HourOfDay~MinTemp+LunarPhase+Habitat+(1|Site_ID),family=binomial,data=data)
也許,這就是圓形包裝的應用不當。如果是這樣,我願意接受使用數據和協變量調查高峯活動的模型和/或圖形的其他建議。
注:我沒有搜索相關討論,發現this somewhat relevant thread,但它從來沒有回答過,沒有在R中請求解決方案,並且是不同的範圍。
特別是如果你想添加一個隨機效應項到這個模型,我想你必須使用類似[AD模型生成器](http://admb-project.org),可能通過R2admb包。 .. –