OK. I initialize real large vector and matrix and then shrink them when
I use them in the loop. The following lines worked. I'd glad to know of
better approaches.
bsum<-rep(0,1000); bsum
vsum<-matrix(rep(0,1000000),nrow=1000); vsum
for (ind in 1:3) { mydata <- read.csv(paste0("midata", ind, ".csv"))
...
k<-length(ame.00$bame)
bsum<-bsum[1:k]+ame.00$bame
vsum<-vsum[1:k,1:k]+ame.00$vame
}
On 2/28/2024 4:56 PM, Steven Yen wrote:
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
>
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.