私は、サンプル平均で他の変数を一定に保つことにより、モデル内の個々の変数の説明力を調べようとしています。
ただし、次のようなことはできません。
Temperature = alpha + Beta1*RFGG + Beta2*RFSOx + Beta3*RFSolar
どこ Beta1=Beta2=Beta3 -- 次のようなもの
Temperature = alpha + Beta1*(RFGG + RFSolar + RFSOx)
これを行いたいのは、1 つの独立変数が標本平均で保持されず、残りが保持されている場合の説明力 (R^2/残差のサイズ) の違いを比較できるようにするためです。
Temperature = alpha + Beta1*(RFGG + meanRFSolar + meanRFSOx)
また
Temperature = alpha + Beta1*RFGG + Beta1*meanRFSolar + Beta1*meanRFSOx
ただし、lm関数は独自の係数を推定しているように見えるため、何かを一定に保つ方法がわかりません。これは、私が一緒に投げようとしたいくつかの醜いコードです。
# fixing a new clean matrix for my data
dat = cbind(dat[,1:2],dat[,4:6]) # contains 162 rows of: Date, Temp, RFGG, RFSolar, RFSOx
# make a bunch of sample mean independent variables to use
meandat = dat[,3:5]
meandat$RFGG = mean(dat$RFGG)
meandat$RFSolar = mean(dat$RFSolar)
meandat$RFSOx = mean(dat$RFSOx)
RFTotal = dat$RFGG + dat$RFSOx + dat$RFSolar
B = coef(lm(dat$Temp ~ 1 + RFTot)) # trying to save the coefficients to use them...
B1 = c(rep(B[1],length = length(dat[,1])))
B2 = c(rep(B[2],length = length(dat[,1])))
summary(lm(dat$Temp ~ B1 + B2*dat$RFGG:meandat$RFSOx:meandat$RFSolar)) # failure
summary(lm(dat$Temp ~ B1 + B2*RFTot))
これを見た人は誰でも見てくれてありがとう。質問があれば私に聞いてください。