我的回復Y是 0-1 之間的百分比。我的資料是由分類法或進化關系嵌套的,比如說 phylum/genus/family/species,我有一個連續的協變數temp和一個fac帶有級別fac1& 的分類協變數fac2。
我有興趣估計:
- 和(截距)
Y之間是否存在差異以及由此解釋了多少差異fac1fac2 - 是否每個級別的 fac 對
temp(線性如此斜率)有不同的回應 Y我的分類法的每個級別是否存在差異以及這些差異解釋了多少(參見varcomp)- 我的分類法的每個級別是否對
temp(線性如此斜率)有不同的反應
一個蠻力的想法是將我的資料分成最低分類法這里的物種,對每個物種進行線性 beta 回歸 i as betareg(Y(i)~temp)。然后為每個物種提取斜率和截距,并將它們分組到每個 fac 的更高分類級別,并將斜率(截距)的分布(例如,通過 Kullback-Leibler 散度)與我在引導我的 Y 值時得到的分布進行比較。或者分別比較分類級別或我的因子 fac 之間的斜率(或截距)的分布。或者只是比較分類級別或我的因子級別之間的平均斜率和截距。不確定這是個好主意。也不確定如何回答我的分類級別解釋了多少方差的問題,就像在嵌套隨機混合效應模型中一樣。
另一種選擇可能只是那些混合模型,但我如何在一個模型中包含我想測驗的所有方面
說我可以使用“gamlss”包來做:
library(gamlss)
model<-gamlss(Y~temp*fac re(random=~1|phylum/genus/family/species),family=BE)
但在這里我看不到包含隨機斜率的方法,或者我可以這樣做:
model<-gamlss(Y~re(random=~temp*fac|phylum/genus/family/species),family=BE)
但是對 lme 的內部呼叫在這方面有一些問題,并且猜測這無論如何都不是正確的表示法。有什么方法可以實作我想要測驗的內容,不一定是使用 gamlss 而是任何其他包含嵌套結構和 beta 回歸的包?謝謝!
uj5u.com熱心網友回復:
在 中glmmTMB,如果您的回應中沒有確切的 0 或 1 值,則應該使用以下方法:
library(glmmTMB)
glmmTMB(Y ~ temp*fac (1 temp | phylum/genus/family/species),
data = ...,
family = beta_family)
- 如果您的值為零,您將需要做一些事情。例如,您可以在 中添加零通脹項
glmmTMB;brms可以處理零一膨脹的 Beta 回應;您可以稍微“壓縮”0/1 值(請參閱 Smithson 和 Verkuilen 的 Beta 回歸論文的附錄)。如果您只有幾個 0/1 值,那么您做什么就無所謂了。如果你有很多,你需要花一些時間認真思考它們的含義,這將影響你處理它們的方式。它們是否代表審查(即不完全是 0/1 但離邊界太近而無法衡量差異的值)?它們是一種性質不同的反應嗎?等等。 ...) - 正如我在我的評論中所說,計算 GLMM 的方差分量非常棘手 - 不一定有一個簡單的分解,例如見這里。但是,您可以計算每個分類級別的截距和斜率的方差并進行比較(并且您可以使用標準偏差與固定效應的大小進行比較......)
- 此處給出的模型可能非常苛刻,具體取決于系統發育的大小 - 例如,您可能在門級別上沒有足夠的復制(在這種情況下,您可以擬合模型
~ temp*(fac phylum) (1 temp | phylum:(genus/family/species)),即將門效應作為固定效應) . - 這是假設你愿意假設的影響
fac,及其與互動temp,做到不跨系統發育變化...
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/389581.html
下一篇:R-在兩組列中搜索兩個條件
