4

応答変数 ADA と、独立変数 LEV、ROA、および ROAL を含むデータ セットがあります。データは dt と呼ばれます。次のコードを使用して、潜在クラスの係数を取得しました。

m1 <- stepFlexmix(ADA ~ LEV+ROA+ROAL,data=dt,control= list(verbose=0), 
k=1:5,nrep= 10);  

m1 <- getModel(m1, "BIC");

http://rss.acs.unt.edu/Rdoc/library/flexmix/html/flexmix.htmlから以下を読むまで、すべて問題ありませんでした

model Object of FLXM of list of FLXM objects. Default is the object returned by calling FLXMRglm().

私は線形モデルに興味がありますが、デフォルトのモデル呼び出しは一般化された線形モデルであると言っています。GLM ではなく線形モデルを使用するにはどうすればよいですか? かなり長い間検索しましたが、理解できなかったhttp://www.inside-r.org/packages/cran/flexmix/docs/flexmixからのこの例を除いて、ビットを取得 できませんでした:

data("NPreg", package = "flexmix")

## mixture of two linear regression models. Note that control parameters
## can be specified as named list and abbreviated if unique.
ex1 <- flexmix(yn~x+I(x^2), data=NPreg, k=2,
                   control=list(verb=5, iter=100))

ex1
summary(ex1)
plot(ex1)

## now we fit a model with one Gaussian response and one Poisson
## response. Note that the formulas inside the call to FLXMRglm are
## relative to the overall model formula.
ex2 <- flexmix(yn~x, data=NPreg, k=2,
               model=list(FLXMRglm(yn~.+I(x^2)), 
                          FLXMRglm(yp~., family="poisson")))
plot(ex2)

GLM の代わりに線形回帰を使用する方法を教えてください。それとも、すでに LM を使用していて、「デフォルトのモデル ライン」のために混乱しただけですか? 説明してください。ありがとう。

4

1 に答える 1

2

私は数値解析を行って、

m1 <- stepFlexmix(ADA ~ LEV+ROA+ROAL,data=dt,control= list(verbose=0)

は、線形回帰から結果を生成します。実験を行うために、次のコードを実行したところ、推定されたパラメーターは確かに線形回帰によるものであることがわかりました。実験は私の留保を和らげるのに役立ちました。

  x1 <- c(1:200);
  x2 <- x1*x1;
  x3 <- x1*x2;
  e1 <- rnorm(200,0,1);
  e2 <- rnorm(200,0,1);
  y1 <- 5+12*x1+20*x2+30*x3+e1;
  y2 <- 18+5*x1+10*x2+15*x3+e2;
  y <- c(y1,y2)
  x11 <- c(x1,x1)
  x22 <- c(x2,x2)
  x33 <- c(x3,x3)
  d <- data.frame(y,x11,x22,x33)

  m <- stepFlexmix(y ~ x11+x22+x33, data =d, control = list(verbose=0), k=1:5, nrep = 10);
  m <- getModel(m, "BIC");
  parameters(m);
  plotEll(m, data = d)
  m.refit <- refit(m);
  summary(m.refit)
于 2013-11-13T14:42:38.700 に答える