[R] Selecting groups with R
David Winsemius
dwinsemius at comcast.net
Sat Aug 22 00:26:30 CEST 2009
On Aug 21, 2009, at 6:08 PM, jlwoodard wrote:
>
> I have a data set similar to the following:
>
> Color Score
> RED 10
> RED 13
> RED 12
> WHITE 22
> WHITE 27
> WHITE 25
> BLUE 18
> BLUE 17
> BLUE 16
>
> and I am trying to to select just the values of Color that are equal
> to RED
> or WHITE, excluding the BLUE.
>
> I've tried the following:
> myComp1<-subset(dataset, Color =="RED" | Color == "WHITE")
> myComp1<-subset(dataset, Color != "BLUE")
> myComp1<-dataset[which(dataset$Color != "BLUE"),]
>
> Each of the above lines successfully excludes the BLUE subjects, but
> the
> "BLUE" category is still present in my data set; that is, if I try
> table(Color) I get
>
> RED WHITE BLUE
> 82 151 0
You are being bitten by the behavior of factors.
>
> If I try to do a t-test (since I've presumably gone from three
> groups to two
> groups), I get:
How.... did you do the "t-test"?
> Error in if (stderr < 10 * .Machine$double.eps * max(abs(mx),
> abs(my)))
> stop("data are essentially constant") :
> missing value where TRUE/FALSE needed
> In addition: Warning message:
> In mean.default(y) : argument is not numeric or logical: returning NA
>
> and describe.by(score,Color) gives me descriptives for RED and
> WHITE, and
> BLUE also shows up as NULL.
>
> How can I eliminate the BLUE category completely so I can do a t-
> test using
> Color (with just the RED and WHITE subjects)?
dataset$Color <- as.character(dataset$Color)
--
David Winsemius, MD
Heritage Laboratories
West Hartford, CT
More information about the R-help
mailing list