Muito obrigado, era isto mesmo, desculpem
minha ignorância!
Mauro,
na função f1 você quer dar nomes às colunas de 'z' mas em
nenhum
momento você definiu 'z'.
Creio que o que você queria era, na
verdade, 'colnames(w)' e não 'colnames(z)'.
Gustavo H. M. A.
Rocha
Em 8 de outubro de 2011 00:43, Mauro Sznelwar <sznelwar@uol.com.br>
escreveu:
> Alguém sabe dizer o que está errado por aqui?
>
>
set.seed(123)
> b<-5
> sigma2<-2
> n<-20
>
x<-runif(n,10,20)
> y<-b*x+rnorm(n,0,sqrt(sigma2))
>
plot(x,y)
> ###############################################
>
#Función para estimar la distribución posterior
>
f1<-function(beta0,nu,a,b,m,x,y)
> {
> A<-0
> for(i in
1:n)
> {
> for(j in 1:n)
> {
>
A<-A+x[j]*y[i]*(x[j]*y[i]-x[i]*y[j])/(sum(x^2)+nu)
> }
>
}
> B0<-(nu*sum((y-beta0*x)^2))/(sum(x)+nu)
>
med<-(sum(x*y)+nu*beta0)/(sum(x^2)+nu)
>
dp<-sqrt((A+B0+b)/((n+a)*(sum(x^2)+nu)))
>
beta<-rt(m,(n+a)/2)*dp+med
> gamma1<-(n+a)/2;
>
delta1<-(A+B0+b)/2
> sigma2<-1/rgamma(m,gamma1,delta1)
>
w<-matrix(c(beta,sigma2),ncol=2)
>
colnames(z)<-c("beta","sigma2")
> return(w)
> }
>
>
###############################################
> #Asignamos los valores
para las ditribuciones
> # apriori y el número de
simulaciones
>
> beta0<-4
> nu<-0.00001
>
a<-1
> b<-1
> m<-1000
>
>>
simula<-f1(beta0,nu,a,b,m,x,y)
> Erro em colnames(z) <- c("beta",
"sigma2") : objeto 'z' não encontrado
>> simula
> Erro: objeto
'simula' não encontrado
>