I have measured values for 47 chemicals in a stream. After processing
the original data frame through reshape2, the recast data frame has this
structure:

'data.frame':   256 obs. of  47 variables:
 $ site     : Factor w/ 143 levels "BC-0.5","BC-1",..: 1 1 1 2 2 2 2 2 2 2
...
 $ sampdate : Date, format: "1996-04-19" "1996-05-21" ...
 $ Acid     : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Ag       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Al       : num  0.07 NA NA NA NA NA NA NA NA NA ...
 $ Alk-HO   : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Alk-Tot  : num  162 152 212 NA NA NA NA NA NA NA ...
 $ As       : num  0.01 NA NA 0 0 0 0 0.01 0 0.01 ...
 $ Ba       : num  0.18 NA NA NA NA NA NA NA NA NA ...
 $ Be       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Bo       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ CO3      : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Ca       : num  76.6 NA NA NA NA ...
 $ Cd       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Cl       : num  12 NA NA NA NA NA NA NA NA NA ...
 $ Cn       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Co       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Cond     : num  712 403 731 NA NA NA NA NA NA NA ...
 $ Cr       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ DO       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ F        : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Fe       : num  0.06 NA NA NA NA NA NA NA NA NA ...
 $ Flow     : num  NA NA NA NA NA NA NA NA NA NA ...
 $ HCO3     : num  162 152 212 NA NA NA NA NA NA NA ...
 $ Hg       : num  0 NA NA NA NA NA NA NA NA NA ...
 $ K        : num  1.7 NA NA NA NA NA NA NA NA NA ...
 $ Mg       : num  43.2 NA NA NA NA ...
 $ Mn       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ NO2-N    : num  NA NA NA NA NA NA NA NA NA NA ...
 $ NO3-N    : num  NA 0.47 0.09 NA NA NA NA NA NA NA ...
 $ NO3-NO2-N: num  1.97 NA NA NA NA NA NA NA NA NA ...
 $ Na       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Ni       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ OH       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ P        : num  0.03 NA NA NA NA NA NA NA NA NA ...
 $ Pb       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ SO4      : num  175 57 194 NA NA NA NA NA NA NA ...
 $ Sb       : num  0 NA NA NA NA NA NA NA NA NA ...
 $ Se       : num  0.01 NA NA NA NA NA NA NA NA NA ...
 $ Si       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ TDS      : num  460 212 530 NA NA NA NA NA NA NA ...
 $ TSS      : num  NA 26 NA NA NA NA NA NA NA NA ...
 $ Temp     : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Tl       : num  NA NA NA NA NA NA NA NA NA NA ...
 $ Turb     : num  2.2 NA NA NA NA NA NA NA NA NA ...
 $ Zn       : num  0.02 NA NA NA NA NA NA NA NA NA ...
 $ pH       : num  8.12 8.19 8.46 NA NA NA NA NA NA NA ...

  I want a subset of this with only 7 chemicals: Ca, Cl, Cond, Mg, Na, SO4,
and TDS. The subset help page tells me that I can use a logical subset to
extract these 7 rows while keeping all columns, but I do not know how to
write that logical subset. I tried emulating the example on the help page of
avoiding the subset but R didn't like the '%in%' as I wrote it; putting the
desired row names in a subset vector fails:

burns.tds <- subset(burns.cast, subset(c('Ca', 'Cl', 'Cond', 'Mg', 'Na',
'SO4', 'TDS')))
Error in subset.default(c("Ca", "Cl", "Cond", "Mg", "Na", "SO4", "TDS")) :
  argument "subset" is missing, with no default

  What is the proper syntax to extract only these rows into a new data
frame? And, is the recast data frame the appropriate format as the source?

Rich

______________________________________________
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