Re: [R] subset() multiple arguments

From: Duncan Murdoch <>
Date: Mon, 07 Jul 2008 15:27:59 -0400

On 7/7/2008 3:19 PM, stephen sefick wrote:
> This is what I would like to do and it works just fine. Is there a way to
> shorten this code so I don't have to subset a subset of a subset?
> d<-subset(subset(subset(subset(x, River.Mile<=202), River.Mile>3),
> Lagrangian=="Yes"), EventType=="Regular")

You can combine logical tests using &:

d <- subset(x, (River.Mile<=202) & (River.Mile>3) & (Lagrangian=="Yes") & (EventType=="Regular"))

(The parentheses around the tests are not necessary, but they mean you don't need to check the operator precedence table, and your test would work in some other language with different rules.)

Duncan Murdoch mailing list PLEASE do read the posting guide and provide commented, minimal, self-contained, reproducible code. Received on Mon 07 Jul 2008 - 19:40:28 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Mon 07 Jul 2008 - 20:33:01 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.

list of date sections of archive