Hi,

I got a bit lost with your explanation for your second problem. A reproducible example would DEFINITELY help to understand what you have and what you're trying to get.

For your first problem
subset1 <- summarystats[summarystats$Class == 1 & summarystats$Type == 1 & summarystats$Category == 1, ]
should work.
If not, maybe looking at str(summarystats) could help you figure out what the problem is (or could be)

By the way in
summarystats<-as.data.frame(read.csv(file=f_summary))
as.data.frame() is useless since read.csv() outputs a data.frame

For your second problem, it's difficult for me to understand anything because I don't know what summarystats$Dataset is. Could there be a problem with factors here?

HTH,
Ivan



Le 11/18/2010 15:39, Martin Tomko a écrit :
Dear all,
I have searched the forums for an answer - and there is plenty of questions along the same line - but none of the paproaches shown worked to my problem:

I have a data frame that I get from a csv:

summarystats<-as.data.frame(read.csv(file=f_summary));

where I have the columns Dataset, Class, Type, Category,..
Problem1: I want to find a subset of this frame, based on values in multiple columns
What I do currently is:

subset1 <- summarystats
subset1<-subset1[subset1$Class == 1,]
subset1<-subset1[subset1$Type == 1,]
subset1<-subset1[subset1$Category == 1,]

Now, this works, but is UGLY! I tried using "&&" or "&" , for isntance : subset1<-subset1[ (subset1$Class == 1)&& (subset1$Category == 1),]
but it returns an empty data frame.

Anyway, the main problem is
Problem2:
I have a second data frame - a square matrix (rownames == colnames), distm:

distm<-read.table(file=f_simmatrix, sep = ",");
what I want is select ONLY the columns and rows entries matching the above subset1:

subset2<-distm[subset1$Dataset,subset1$Dataset] returns a matrix of correct size, but with incorrect entries (established by visual inspection).

this is the same as:
selectedrows<-as.vector(subset1$Dataset)
subset2<-distm[selectedrows,selectedrows]

also verified using:
rownames(subset2)%in% selectedrows
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [13] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE [25] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[37] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE

What am I missing?

Thanks
Martin

______________________________________________
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.


--
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calan...@uni-hamburg.de

**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/1525_8_1.php

______________________________________________
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