[R] Getting multiple matrix-values using a single command

Henrique Dallazuanna wwwhsd at gmail.com
Fri Mar 12 20:01:27 CET 2010


Try this:

 diag(A[c(1,3),c(2,3)])

2010/3/12 Nils Rüfenacht <nils.ruefenacht at bluewin.ch>:
> Dear all!
>
> I'm trying to get multiple values from a matrix by using a single command.
>
> Given a matrix A
>
> A <- matrix(seq(1,9),nrow=3,ncol=3)
>
> How can I get e.g. the values A[1,2] = 4 and A[3,3] = 9 with a single
> command and without using any loop? My first idea was to generate a row- and
> a column vector for the indices, i.e. c(1,3) indicating row number 1 (for
> A[1,2]) and row number 3 (for A[3,3]) and similar for column-indices. Then
> I've tried to call
>
> A[c(1,3),c(2,3)]
>
> but instead of 4 , 9 the result is
>
> [,1] [,2]
> [1,]    4    7
> [2,]    6    9
>
> Any suggestions?
>
> Regards, Nils
>
> ______________________________________________
> 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.
>



-- 
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O



More information about the R-help mailing list