2016-08-03 15 views
0

Als ich in der Hilfedatei für die oben schauen, gibt es dieses Beispielprogramm in R:rbprobitGibbs Hilfedokumentation simulierte Eingabewerte?

## 
## rbprobitGibbs example 
## 
if(nchar(Sys.getenv("LONG_TEST")) != 0) {R=2000} else {R=10} 

set.seed(66) 
simbprobit= 
function(X,beta) { 
## function to simulate from binary probit including x variable 
y=ifelse((X%*%beta+rnorm(nrow(X)))<0,0,1) 
list(X=X,y=y,beta=beta) 
} 

nobs=200 
X=cbind(rep(1,nobs),runif(nobs),runif(nobs)) 
beta=c(0,1,-1) 
nvar=ncol(X) 
simout=simbprobit(X,beta) 

Data1=list(X=simout$X,y=simout$y) 
Mcmc1=list(R=R,keep=1) 

out=rbprobitGibbs(Data=Data1,Mcmc=Mcmc1) 

summary(out$betadraw,tvalues=beta) 

if(0){ 
## plotting example 
plot(out$betadraw,tvalues=beta) 
} 

Also, meine Frage ist, wird der Code für simbprobit einfach einige simulierte Werte für die rbprobitGibbs Funktion vorbereiten? Das heißt, wenn ich die Ergebnisse von rbprobitGibbs berechne, kann ich simbprobit effektiv ignorieren und einfach die Daten, Prior, Mcmc Eingangswerte vorbereiten?

Antwort

0

Ja, nach einigen Recherchen habe ich festgestellt, dass es sich um eine simulierte Zufallseingabe über simbprobit handelt, wegen des Funktionsaufrufs rnorm, was bedeutet, dass es sich um eine Zufallsvariable handelt. Von der Hilfe-Datei:

dnorm gibt die Dichte, gibt pnorm die Verteilungsfunktion, qnorm die Quantilsfunktion gibt, und rnorm generiert zufällige abweicht.“