0

I'm trying to subset two years of microclimate data from a larger dataset in R. I can subset one year, but am struggling to subset two years in the same operation.

This operation works fine:

ChamberTemp <- subset(ChamberTemp,
               subset=year=="2011",
               select=c(year,month,chamber,cat1.avg,cat2.avg,cat3.avg))

How do I subset by two years? i.e. 2011 and 2012

Thank you!

J Fitz
  • 13
  • 2

1 Answers1

2

We need %in% instead of == for a vector of length greater than 1

subset(ChamberTemp,
           subset=year %in% c("2011", "2012"),
           select=c(year,month,chamber,cat1.avg,cat2.avg,cat3.avg))

with dplyr, this can be done using

library(dplyr)
ChamberTemp %>%
      filter(year %in% c("2011", "2012")) %>%
      select(year, month, chamber, matches("^cat[1-3]\\.avg$"))  
akrun
  • 874,273
  • 37
  • 540
  • 662