[R] Initializing vector and matrices

Steven Yen @tyen @end|ng |rom ntu@edu@tw
Wed Feb 28 09:56:30 CET 2024


Is there as way to initialize a vector (matrix) with an unknown length 
(dimension)? NULL does not seem to work. The lines below work with a 
vector of length 4 and a matrix of 4 x 4. What if I do not know 
initially the length/dimension of the vector/matrix?

All I want is to add up (accumulate)  the vector and matrix as I go 
through the loop.

Or, are there other ways to accumulate such vectors and matrices?

 > x<-rep(0,4)  # this works but I like to leave the length open
 >  for (i in 1:3){
+  x1<-1:4
+  x<-x+x1
+ }
 > x
[1]  3  6  9 12

 > y = 0*matrix(1:16, nrow = 4, ncol = 4); # this works but I like to 
leave the dimension open
      [,1] [,2] [,3] [,4]
[1,]    0    0    0    0
[2,]    0    0    0    0
[3,]    0    0    0    0
[4,]    0    0    0    0
 > for (i in 1:3){
+   y1<-matrix(17:32, nrow = 4, ncol = 4)
+   y<-y+y1
+ }
 > y
      [,1] [,2] [,3] [,4]
[1,]   51   63   75   87
[2,]   54   66   78   90
[3,]   57   69   81   93
[4,]   60   72   84   96
 >



More information about the R-help mailing list