[R] generating symmetric matrices
Michael Dewey
info at aghmed.fsnet.co.uk
Tue Jul 31 19:21:22 CEST 2007
At 16:29 30/07/2007, Gregory Gentlemen wrote:
>Douglas Bates <bates at stat.wisc.edu> wrote: On 7/27/07, Gregory
>Gentlemen wrote:
> > Greetings,
>
> > I have a seemingly simple task which I have not been able to
> solve today. I want to construct a symmetric matrix of arbtriray
> size w/o using loops. The following I thought would do it:
>
> > p <- 6
> > Rmat <- diag(p)
> > dat.cor <- rnorm(p*(p-1)/2)
> > Rmat[outer(1:p, 1:p, "<")] <- Rmat[outer(1:p, 1:p, ">")] <- dat.cor
>
> > However, the problem is that the matrix is filled by column and
> so the resulting matrix is not symmetric.
>
>Could you provide more detail on the properties of the symmetric
>matrices that you would like to generate? It seems that you are
>trying to generate correlation matrices. Is that the case? Do you
>wish the matrices to be a random sample from a specific distribution.
>If so, what distribution?
>
>Yes, my goal is to generate correlation matrices whose entries have
>been sampled independently from a normal with a specified mean and variance.
Would it sufficient to use one of the results of
RSiteSearch("random multivariate normal", restrict = "functions")
or have I completely misunderstood what you want? (I appreciate this
is not exactly what you say you want.)
>Thanks for the help.
>
>Greg
>
>
>---------------------------------
>
> [[alternative HTML version deleted]]
Michael Dewey
http://www.aghmed.fsnet.co.uk
More information about the R-help
mailing list