質問

最小二乗平均とその標準誤差 aov オブジェクトは次のように取得できます model.tables 関数:

npk.aov <- aov(yield ~ block + N*P*K, npk)
model.tables(npk.aov, "means", se = TRUE)

一般化最小二乗平均とその標準誤差を次から取得するにはどうすればよいでしょうか。 nlme または lme4 オブジェクト:

library(nlme)
data(Machines)
fm1Machine <- lme(score ~ Machine, data = Machines, random = ~ 1 | Worker )

コメントやヒントをいただければ幸いです。ありがとう

役に立ちましたか?

解決

lme と nlme は最尤法または制限された最尤法 (後者がデフォルト) に適合するため、結果はこれらの方法のいずれかに基づきます。

summary(fm1Machine) 平均値と標準誤差を含む出力が得られます。

....irrelevant output deleted
Fixed effects: score ~ Machine 
               Value Std.Error DF  t-value p-value
(Intercept) 52.35556  2.229312 46 23.48507       0
MachineB     7.96667  1.053883 46  7.55935       0
MachineC    13.91667  1.053883 46 13.20514       0
 Correlation: 
....irrelevant output deleted

固定効果を切片で近似したため、MachineA の結果ではなく、固定効果の結果に切片項が得られます。MachineB と MachineC の結果は切片と対比されるため、MachineB と MachineC の平均を取得するには、それぞれの値を切片平均に加算します。しかし、標準誤差はあなたが望むものではありません。

求めている情報を取得するには、固定効果に切片項が含まれないようにモデルを近似します ( -1 固定効果の最後:

fm1Machine <- lme(score ~ Machine-1, data = Machines, random = ~ 1 | Worker )

これにより、必要な平均値と標準エラー出力が得られます。

....irrelevant output deleted
Fixed effects: score ~ Machine - 1 
            Value Std.Error DF  t-value p-value
MachineA 52.35556  2.229312 46 23.48507       0
MachineB 60.32222  2.229312 46 27.05867       0
MachineC 66.27222  2.229312 46 29.72765       0
....irrelevant output deleted

他のヒント

ダグラスベイツを引用するには

http://markmail.org/message/dqpk6ftztpbzgekm

「ほとんどのユーザーにとって、lsmeansの定義は「lsmeansステートメントを使用したときにSASから取得する番号」であると強く疑っています。そのような番号を取得するための私の提案は、SASライセンスを購入して使用することです。モデルに合わせたSAS。」

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top