混合模型/ REML結果:我們是否有文件記錄如何計算標準誤差將SLS與REML(也稱為混合效果)結合使用,對於置信區間的標準誤差,客戶在不同的程序包(R / Python / JMP)中可獲得不同的結果。 (R / Python / JMP:0.05 / 0.08 / 0.002)這是40的因數,這是相當高的。 我們是否有任何有關如何精確計算(公式)的文檔。 BLUPS本身以及FE和ME的估計值都是不同程序包中的信號量,但是是預測間隔和置信區間。
我認為這可能與不同的基礎重複協方差結構(默認值)或Kacker-Harville-Correction有關?
添加示例: https://www.rdocumentation.org/packages/doBy/versions/4.6-3/topics/data-dietox
-建築模型重量=時間+飼料+豬(隨機效應)
jian @laural_jmp
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差嗨,馬丁,
您是否可以共享數據和模型的腳本?如果可以的話,那將非常有幫助。另外,哪些標準誤差和置信區間不同?我也試圖將伊麗莎白(Elizabeth)加入這首單曲。
謝謝。
勞拉
@eclaassen
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差馬丁
如果可以提供產生置信區間和標準誤差的R代碼,那將是有幫助的。 我的R知識落後,只能成功建立模型(使用Dietox數據和lmer())並獲得邊際和條件預測值。 這些值與JMP匹配。
使用Dietox數據,我運行了JMP和SAS(PROC MIXED)中指定的模型,邊際和條件預測值和置信區間匹配(當在SAS-KR2中為邊際和Satterthwaite指定了相應的DDFM方法時) 。 SAS沒有個人CI。 在16.0中已解決的單個CI的自由度存在問題。
我知道Kackar-Harville校正的協方差矩陣用於固定效應估計值的檢驗/間隔。 如果涉及隨機效果,則使用Satterthwaite方法。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差用戶從保存的條件均值CI列中計算出0.002的標準誤差。

回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差我要求提供R代碼。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差嗨,馬丁,
我相信用於計算方差分量的協方差矩陣的方法在以下論文的第1306頁上:
Wolfinger,R.D., Tobias,R。D.和Sall,J。(1994)。 “為一般線性混合模型計算高斯似然及其導數。” SIAM科學計算雜誌15:1294-1310。
Proc Mixed的SAS文檔提供了更多詳細信息是否有用?
SAS幫助中心:默認輸出
伊麗莎白可能知道另一個很好的參考?
勞拉
@eclaassen
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差jian ,
我沒有看到此公式列? 我對看到它非常感興趣,因為我不知道在沒有自由度的情況下如何計算它,這並不容易。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差嗨,伊麗莎白,
現在附帶的還有R代碼。 他們用
checkintervals_dietox.R
* R 3.6.3
您還需要什麼嗎? 看來他們也使用了lmer。
回复:根據馬丁的說法,他們正在比較標準錯誤...啊。 我剛剛寫了很長的回复,當我發帖時,我收到驗證錯誤,並且回复丟失了。 我將嘗試重新創建...,希望我們不會收到重複的帖子。
那不是SE嗎? 差= obs + crit * se-(obs-crit * se)= 2 * crit * se。 採取這種差異不會成為我們感興趣的標準誤差。 這就是置信區間寬度的方差,據我所知,這並不是什麼“有趣的”東西。 如果獲得預測值或置信區間的標準誤差,則SE約為0.834,這更像是平均SE,因為每個觀察值都有自己的SE。

SAS和JMP之間的差異很小。 (-2 log)可能性是相同的,由於數據表中的值沒有被很好地舍入,因此我們遇到了局部局部最優或一些數字模糊的情況。 儘管固定效果相同,但即使預測值在小數點後第四位也會發生變化。
/* outpm gives the marginal prediction information (values, se, CI) that corresponds to JMPs Mean Confidence Interval */
proc mixed data=sasuser.dietox nobound cl covtest;
class pig;
model weight= time feed / ddfm=kr2 s outpm=krpredmean;
random pig ;
run;
/* outp gives the conditional prediction information that corresponds to JMPs Conditional Mean CI */
proc mixed data=sasuser.dietox nobound;
class pig;
model weight= time feed / ddfm=satterth s outp=spred;
random pig;
run;
確實,JMP和Python / R之間的預測值SE的任何差異均源於Martin /屏幕快照中指出的組/豬差異SE的差異。 方差的方差起作用。 我不知道Python是如何計算出來的,所有其他SE都同意而一個SE卻不同意,這似乎很奇怪。 同樣,SAS和JMP本質上是一致的,而JMP SLS-REML和Mixed是一致的,而使用的例程略有不同。
回复:根據馬丁的說法,他們正在比較標準錯誤...嗯,轉發中丟失了一些信息:
條件預測SE可以在JMPPro的Mixed中獲得。 當兩個平台都提供邊際SE(預測的標準錯誤)時,我不知道為什麼它們在SLS-REML中不可用。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差似乎置信區間中的任何差異都來自方差分量的計算標準誤差。
Python輸出的組/豬方差為31.836,SE為2.125。 (摘自Martin的屏幕截圖)
R輸出為:
Random effects:
Groups Name Variance Std.Dev.
Pig (Intercept) 31.836 5.642
Residual 7.364 2.714
Number of obs: 789, groups: Pig, 72
JMP具有:
SAS具有:
| 協方差參數估計 |
|---|
| Cov Parm |
估計 |
標準 錯誤 |
Z值 |
Z |
Α |
降低 |
上 |
|---|
| 豬 |
31.8276 |
5.4936 |
5.79 |
<.0001 |
0.05 |
21.0604 |
42.5949 |
|---|
| 剩餘的 |
7.3645 |
0.3898 |
18.89 |
<.0001 |
0.05 |
6.6565 |
8.1924 |
|---|
所有軟件包都具有相同的對數似然性。
所有軟件包的參數估計值基本上相同。
豬/組差異組件的SE與SAS,JMP和R相當,但在Python中卻大不相同。
殘差方差的SE與SAS和JMP相當,但是R非常不同,我在Python輸出屏幕截圖中看不到該估計的SE。
因為在進一步的計算中需要方差分量的那些SE,所以我們得到了預測置信區間的差異。 我沒有找到一種方法來獲得R在置信區間中用來直接比較它們的自由度和/或SE。 我們只會在間隔中看到由此產生的差異。
要查看各種時間間隔的自由度,可以在JMP中添加自定義測試。 該腳本包括與平均置信區間和條件均值CI等效的自定義測試。 您可以看到預測值,並且SE與保存這些列時獲得的值匹配。 附加信息是用於測試/ CI的DFDen。 該DFDen可用於查找與SE一起用於CI的臨界值。
Fit Model(
Y( :Weight ),
Effects( :Feed, :Time ),
Random Effects( :Pig ),
NoBounds( 1 ),
Personality( "Standard Least Squares" ),
Method( "REML" ),
Emphasis( "Minimal Report" ),
Run(
:Weight << {Summary of Fit( 1 ), Analysis of Variance( 0 ),
Parameter Estimates( 1 ), Scaled Estimates( 0 ),
Plot Actual by Predicted( 0 ), Plot Regression( 0 ),
Plot Residual by Predicted( 0 ), Plot Studentized Residuals( 0 ),
Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ),
Custom Test(
[1 5.200005 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0],
Label( "obs2 marginal" )
), Custom Test(
[1 5.200005 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0],
Label( "obs2 conditional" )
)}
)
);
我想這個“解釋”了問題的出處,但沒有解釋原因。 我不知道R或Python是如何獲得方差分量的SE的,但顯然存在差異。 JMP和SAS程序已完全記錄(我認為JMP文檔指向所有深層統計推斷信息的SAS文檔)。Viya LMIXED過程的相關文檔(與常規PROC MIXED相同)
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差我注意到JMP和SAS將其標記為“標準錯誤”,而R包將其稱為Std.Dev。 有區別嗎? 在其固定效果報告中,R標記為Std。 錯誤。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差可能不會。 儘管從技術上講不是同一件事,但通常這些術語可以互換使用。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差謝謝伊麗莎白!
關於所使用的優化算法,在文檔中提到了Newton-Raphson,但有一點要在LMIXED中進行更改。 我猜在JMP中,我們只是使用NR而沒有更改要切換,對嗎?
而且也不會有任何選擇寫出黑森州矩陣。 有了此輸出,我們也許可以比較迭代與迭代之間是否存在與R算法不同的差異,儘管在數學上不應存在差異。 我會讓客戶做比較工作)。
再次感謝您的調查! 那很有幫助。
回复:混合模型/ REML結果:我們是否有文檔將如何計算標準誤差JMP中沒有選項可以更改估計方法。
JMP沒有選擇輸出Hessian矩陣的選項(我們通常不直接存儲它,因為它很大),但是在Fit Mixed的JMP 16中,現在有一些選項可以在報告中包括最終的漸近協方差矩陣。
對於慢速回复,我深表歉意。 儘管“訂閱”了該主題,但是我沒有很快收到新回复的通知。 如果您需要更快速的答案,請隨時給我加標籤。 我想我可以更快地收到標籤通知!