Re: [R] Accessing values of a matrix
Hello Sarah, thanks for answering For example if I have the following example test - as.data.frame(matrix(c(1,2,3,4, 11,12,13,14, a,b,b,c), nrow = 3, ncol=3,dimnames = list(c(r1,r2,r3,r4),NULL)) V1 V2 V3 r1 1 11 a r2 2 12 b r3 3 13 b r4 4 14 c it is easy to select test - test[,mylist] with for example mylist - c(V1,V3) V1 V3 r1 1 a r2 2 b r3 3 b r4 4 c But after how can I restrict test in selecting the rows where the result in column V3 are in a list mylist2, with for example mylist2 -c(b,c,d) ? which would give as an example V1 V3 r2 2 b r3 3 b r4 4 c Regards Colin -- View this message in context: http://n4.nabble.com/Accessing-values-of-a-matrix-tp1561932p1564533.html Sent from the R help mailing list archive at Nabble.com. __ 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.
Re: [R] Accessing values of a matrix
On Feb 22, 2010, at 8:45 AM, statquant wrote: Hello Sarah, thanks for answering For example if I have the following example test - as.data.frame(matrix(c(1,2,3,4, 11,12,13,14, a,b,b,c), nrow = 3, ncol=3,dimnames = list(c(r1,r2,r3,r4),NULL)) This is a malformed example. Should be: test - as.data.frame(matrix(c(1,2,3,4, 11,12,13,14, a,b,b,c), nrow= 4, ncol=3,dimnames = list(c(r1,r2,r3,r4),NULL)) ) test V1 V2 V3 r1 1 11 a r2 2 12 b r3 3 13 b r4 4 14 c V1 V2 V3 r1 1 11 a r2 2 12 b r3 3 13 b r4 4 14 c it is easy to select test - test[,mylist] with for example mylist - c(V1,V3) V1 V3 r1 1 a r2 2 b r3 3 b r4 4 c But after how can I restrict test in selecting the rows where the result in column V3 are in a list mylist2, with for example mylist2 - c(b,c,d) ? which would give as an example ?%in% ?[ ?subset test[test$V3 %in% c(b,c,d), c(V1,V2)] V1 V2 r2 2 12 r3 3 13 r4 4 14 #Or: subset(test, V3 %in% c(b,c,d), select=c(V1, V3)) V1 V3 r2 2 b r3 3 b r4 4 c V1 V3 r2 2 b r3 3 b r4 4 c Regards Colin -- View this message in context: http://n4.nabble.com/Accessing-values-of-a-matrix-tp1561932p1564533.html Sent from the R help mailing list archive at Nabble.com. __ 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. __ 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.
Re: [R] Accessing values of a matrix
OKKK Thanks a lot for letting me know the subset function Cheers -- View this message in context: http://n4.nabble.com/Accessing-values-of-a-matrix-tp1561932p1564724.html Sent from the R help mailing list archive at Nabble.com. __ 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.
[R] Accessing values of a matrix
hello all, thank you for taking the time I have a matrix A that have column names (let say n columns), I want to reduce the matrix to have just a few of those column (p colums, this is trivial), but for the lines I want only the lines such that A(i,J) is part of a list (J is fixed and known) I am sure it is very easy but I don't find it (I tryed which but it doesn't seem to work) Surely I could do a loop but I want to learn how to do things without time consuming loops. Thanks Colin -- View this message in context: http://n4.nabble.com/Accessing-values-of-a-matrix-tp1561932p1561932.html Sent from the R help mailing list archive at Nabble.com. __ 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.
Re: [R] Accessing values of a matrix
Hi Colin, You'll get a better answer if you provide an actual example, including what you tried that didn't work. It looks to me like you want to subset a data frame based on column names, though I'm not sure what A(i, J) is supposed to be. if so, then this is one approach: A - data.frame(A = 1:3, B = 4:6, C=7:9) A A B C 1 1 4 7 2 2 5 8 3 3 6 9 J - c(A, C) newA - A[, colnames(A) %in% J] newA A C 1 1 7 2 2 8 3 3 9 Sarah On Fri, Feb 19, 2010 at 12:11 PM, statquant colin.uman...@barcap.com wrote: hello all, thank you for taking the time I have a matrix A that have column names (let say n columns), I want to reduce the matrix to have just a few of those column (p colums, this is trivial), but for the lines I want only the lines such that A(i,J) is part of a list (J is fixed and known) I am sure it is very easy but I don't find it (I tryed which but it doesn't seem to work) Surely I could do a loop but I want to learn how to do things without time consuming loops. Thanks Colin -- -- Sarah Goslee http://www.functionaldiversity.org __ 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.