# [R] 'subscript out of bounds' in matrices

Roger Peng rpeng at stat.ucla.edu
Mon Nov 12 21:56:27 CET 2001

```I'm not entirely sure what's wrong with the code you have, but you might
be better off doing the following:  If p is a 2x1 matrix and you want to
make a diagonal matrix with elements of p on the diagonal, maybe:

diagp <- diag(as.vector(p))

would work better?

-roger
_____________________________
UCLA Department of Statistics
rpeng at stat.ucla.edu

On Mon, 12 Nov 2001, Laura Gross wrote:

> Dear list
>
> Having read through all the archives of the mailing lists, I've had no
> luck finding the answer to my problem.
>
> I am running a for(i in 1:n) loop and am creating a matrix, p, for each
> of the n observations. This matrix p is a 2x1 matrix. I am then doing
> the following:
>
> diagp<-diag(c(p[1,1],p[2,1]))
>
> to create a matrix with the elements of P on the diagonal (i.e. a 4x4
> matrix).
>
> This works fine when I have n=60, however when I increase the size of
> the data set to n=100, I get the error message:
>
> Error in diag(c(p[1, 1], p[2, 1])) : subscript out of bounds
>
> I put this down to a problem with memory at first so increased the
> memory in my PC from 128Mb to 256Mb yet it made no difference and the
> error still occurred. I am eventually going to need to run this command
> for n=8000.
>
> Could anybody suggest what I can do to solve this problem? Do I need to
> store my matrix as another type of variable?
>
> Thanks in advance for any help
> Laura
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
> r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
>

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._

```