[R] matrix manipulation with its rows

Patrick Burns pburns at pburns.seanet.com
Wed Jan 16 11:24:31 CET 2013


Not a great solution, I don't think, but:

 > kronecker(diag(2), matrix(1:6, 2, byrow=TRUE))[c(1,4),]
      [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    1    2    3    0    0    0
[2,]    0    0    0    4    5    6

So using a function that does this in 'lapply'
should solve the problem you state.  I'm guessing
the real problem might be more complex.

Pat

On 16/01/2013 07:59, Kathryn Lord wrote:
> Dear R users,
>
> I have a question about matrix manipulation with its rows.
>
> Plz see the simple example below
>
>
> sample <- list(matrix(1:6, nr=2,nc=3), matrix(7:12, nr=2,nc=3),
> matrix(13:18,nr=2,nc=3))
>
>> sample
> [[1]]
>       [,1] [,2] [,3]
> [1,]    1    3    5
> [2,]    2    4    6
>
> [[2]]
>       [,1] [,2] [,3]
> [1,]    7    9   11
> [2,]    8   10   12
>
> [[3]]
>       [,1] [,2] [,3]
> [1,]   13   15   17
> [2,]   14   16   18
>
> With this list, I'd like to create this below
>
> [[1]]
>       [,1] [,2] [,3]  [,4] [,5] [,6]
> [1,]    1    3    5     0    0    0
> [2,]    0    0    0   2    4    6
>
> [[2]]
>       [,1] [,2] [,3]   [,4] [,5] [,6]
> [1,]    7    9   11     0    0    0
> [2,]     0    0    0    8   10   12
>
> [[3]]
>       [,1] [,2] [,3]       [,4]   [,5]   [,6]
> [1,]   13   15   17      0    0    0
> [2,]       0    0    0   14   16   18
>
>
>
> Any suggestion will be greatly appreciated.
>
> Regards,
>
> Kathryn Lord
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list
> 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.
>

-- 
Patrick Burns
pburns at pburns.seanet.com
twitter: @portfolioprobe
http://www.portfolioprobe.com/blog
http://www.burns-stat.com
(home of 'Some hints for the R beginner'
and 'The R Inferno')



More information about the R-help mailing list