Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

array operation giving me merged table

Tags:

arrays

r

So, I made 10 matrix of 10X1 dimension, one of them looks like this,

chains <- array(NA, dim = c(10, 1, 10))
chains

, , 10

    [,1]
[1,]   NA
[2,]   NA
[3,]   NA
[4,]   NA
[5,]   NA
[6,]   NA
[7,]   NA
[8,]   NA
[9,]   NA
[10,]   NA

However, I want to keep last 6 observations from each matrix, so I did,

   chains <-chains[5:10,,]
   chains

        [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
[2,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
[3,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
[4,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
[5,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA
[6,]   NA   NA   NA   NA   NA   NA   NA   NA   NA    NA

suddenly it gives me one table, which gives me dimensional error on later algorithm,

i still want my "chain" array looks like this, , , 7

     [,1]
[1,]   NA
[2,]   NA
[3,]   NA
[4,]   NA
[5,]   NA
[6,]   NA


, , 8

    [,1]
[1,]   NA
[2,]   NA
[3,]   NA
[4,]   NA
[5,]   NA
[6,]   NA


, , 9

    [,1]
[1,]   NA
[2,]   NA
[3,]   NA
[4,]   NA
[5,]   NA
[6,]   NA


, , 10

    [,1]
[1,]   NA
[2,]   NA
[3,]   NA
[4,]   NA
[5,]   NA
[6,]   NA

I apologize for the bad formatting, any help will be appreciated!

like image 449
jayinbluecity Avatar asked Sep 22 '26 00:09

jayinbluecity


1 Answers

We need drop=FALSE to prevent the subset from dropping the dimensions

chainsN <- chains[5:10,,,drop=FALSE]
str(chainsN)
#logi [1:6, 1, 1:10] NA NA NA NA NA NA ...

It is mentioned in the help page of ?Extract

drop - For matrices and arrays. If TRUE the result is coerced to the lowest possible dimension

like image 126
akrun Avatar answered Sep 23 '26 14:09

akrun



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!