[R] Create a matrix with increment and element with zero subscript
David Winsemius
dwinsemius at comcast.net
Tue Oct 25 02:02:51 CEST 2011
On Oct 24, 2011, at 7:23 PM, Md Desa, Zairul Nor Deana Binti wrote:
> Hello,
> Does anyone knows how to deal with zero subscript in R. I have this
> code:
> for (i in 1:nitems){
> + for (j in 1:ncat-1) {
> + draw<-matrix(rnorm(nitems*(ncat-1),seed1,seed2),nitems,
> (ncat-1))
> + d<-( sigma_d*draw ) + mu_d
> + draw<-matrix(rtnorm((nitems*(ncat-1)),mean = seed1, sd =
> seed2, lower = .1, upper = 1.5),nitems,(ncat-1))
> + d<-(sigma_d*draw) + mu_d
> + write.matrix(cbind(b.i0,d), file = "F:/KU/MIRT group/
> MIMIC-DIF/R/cpprcode/b0d.dat", sep = " ")
> + b[i,j]<-b[i,j-1]+d[i,j]
> + }
> + }
>
> The error as following:
>
> Error in b[i, j ] <- b[i, j - 1] + d[i, j] :
> replacement has length zero
>
> I would like to to have a matrix where the first column takes from
> initial pre-assigned value (b[i,0]+d1), the second column is
> additive from the first column and a constant d2 that is (b(i,1)=b(i,
> 0)+d1+d2, and so forth. Is there any way that R can read subscript
> of zero?
I don't. (I seem to remember the Matrix package allows such
shenanigans.)
Why don't you instead augment b[,] with a top column of initial
values, using rbind() and then iterate from 2:(ncat-2). (Do note the
parentheses and if you do not know why, then consult ?Syntax for
operatr precendence.)
--
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list