2012-03-28 19 views
2

ロジスティック回帰があり、ロジット曲線からシミュレーションデータを生成したいと思います。私のコードは以下の通りです:ロジットモデルからデータをシミュレートする方法

#Begin Code   
    require(gld) 

    runs<-100 
    num.trees<-500 
    p<-0.5 

    trial.1<-rgl(num.trees,1859.75592, 0.02179, -0.09578, 0.24264, param = "fkml", lambda5 = NULL) 
    trial.1 <- floor(trial.1/10)*10+1 

    minDecade <- min(trial.1) 
    maxDecade <- max(trial.1) 
    allDecades <- seq(minDecade-100, 2001, by=10) 

    x<-1:length(allDecades) 
    y<-sample(trial.1, p*num.trees) 


binTrees <- rep(0,length(allDecades)) 

for (i in 1:length(allDecades)) { 

     binTrees[i] <- length(which(y==allDecades[i])) 
    } 
     binTrees 


    binTrees<-cumsum(binTrees)/sum(binTrees) 

    fit<-glm(binTrees~x,family=binomial(link='logit')) 

    plot(binTrees) 
    lines(fitted.values(fit)) 

    #End Code 

基本的には、この最後のビットから、どのように私のロジスティック回帰からシミュレートされたデータを生成することができますか? 私が話したことのある人は、これを行うためにCDF機能を使用することをお勧めしましたが、どこから始めるべきかわかりません。私の目標は、フィットした曲線に基づいて完全なデータセットを作り直すことです。

アドバイスを事前にいただきありがとうございます!

+0

この質問から、あなたは統計学者との相談の利点があるように思えます。私の意見では、それの代わりに始めるのが良い場所は、アームパッケージとその中の参考になります。 – BenBarnes

答えて

0

あなたはロジスティック回帰を用いたシミュレーション実験をしていた場合は、一般的に二項分布から描画されます:

> set.seed(123) 
> df1 <- data.frame(event=rbinom(n=20, size=1, prob=.4)) 
> glm(event ~ . , df1, family="binomial") 

Call: glm(formula = event ~ ., family = "binomial", data = df1) 

Coefficients: 
(Intercept) 
    -0.4055 

Degrees of Freedom: 19 Total (i.e. Null); 19 Residual 
Null Deviance:  26.92 
Residual Deviance: 26.92 AIC: 28.92 
> exp(-0.4055)/(1+exp(-0.4055)) 
[1] 0.3999916 
> sum(df1$event)/length(df1$event) 
[1] 0.4 # that degree of agreement with the simulated parameter is accidental. 

(名前のないパッケージに基づいて)あなたのrgl機能的な結果との間の接続と、残りのコードが不明瞭に見えるので、あなたが自然の自然言語であなたがシミュレートしたいと思っているものを記述した方が良いでしょう。

+0

ありがとうございます。サブサンプルされたデータセットにロジスティック曲線を当てようとしています。そして、その曲線に基づいて、オリジナルと同じサイズのデータ​​セット(サブサンプルされたデータ)を再作成したいと考えています。さまざまなレベルのサンプリングがパラメータ推定に及ぼす影響を確認したいと思います。 – jtgarcia

+0

また、rgl関数とgldパッケージは日付の分布を作成するために使われています。日付の分布は何十年にもわたります。私の主な目的はあまりありません。サブサンプルするデータセットを作成するためにそれらを使用します。 – jtgarcia

+0

@jtgarcia、これは、適合モデルに基づく分布からシミュレートするのではなく、ブートストラップのように聞こえる。あなたは達成しようとしていることをブートストラップするでしょうか? – BenBarnes

関連する問題