On Mar 12, 2010, at 9:26 AM, Nils Rüfenacht wrote:

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

Pass the indices in a matrix:

>  A[matrix(c(c(1,3), c(2,3)), ncol=2)]
[1] 4 9

--
David

Any suggestions?

Regards, Nils

______________________________________________
R-help@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.

David Winsemius, MD
West Hartford, CT

______________________________________________
R-help@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.

Reply via email to