On Thu, 27 Oct 2011, Dennis Murphy wrote:

# Define param so that all of its levels are represented:
tds.a <- within(tds.a, {
          param = factor(param, levels = c('TDS', 'Cond', 'Mg', 'Ca',
'Cl', 'Na', 'SO4'))
          sampdate = as.Date(sampdate)  } )

Dennis,

  This produces an error:
tds.a <- within(tds.anal, {param = factor(param, levels = c('TDS', 'Cond',
'Mg', 'Ca', 'Cl', 'Na', 'SO4')) sampdate = as.Date(sampdate)})
Error: unexpected symbol in "tds.a <- within(tds.anal, {param =
factor(param, levels = c('TDS', 'Cond', 'Mg', 'Ca', 'Cl', 'Na', 'SO4'))
sampdate"

  So I did the conversion and melting the long way:
tds.a <- tds.anal
tds.a$sampdate <- factor(tds.a$sampdate)

  Now sampdate is a factor, and quant has the proper values:
str(tds.a)
'data.frame':   11434 obs. of  4 variables:
 $ site    : Factor w/ 143 levels "BC-0.5","BC-1",..: 134 127 134 134 73 73
 $ sampdate: Factor w/ 890 levels "1981-11-30","1982-04-28",..: 686 268 727
 $ param   : Factor w/ 7 levels "Ca","Cl","Cond",..: 7 3 4 6 1 2 4 5 1 4 ...
 $ quant   : num  10800 280 1620 7580 79 114 301 27.5 381 274 ...

 However, ...

dcast(tds.a, site + sampdate ~ param, value_var = 'quant')

c.tds.anal <- dcast(tds.a, site + sampdate ~ param, value_var = 'quant') Aggregation function missing: defaulting to length.

  That's because c.tds.anal has lost the quant values:

str(c.tds.anal)
'data.frame':   2309 obs. of  9 variables:
 $ site    : Factor w/ 143 levels "BC-0.5","BC-1",..: 1 1 1 2 2 2 2 2 2 2
...
 $ sampdate: Factor w/ 890 levels "1981-11-30","1982-04-28",..: 239 252 260
99 101 102 155 163 170 179 ...
 $ Ca      : int  1 0 0 1 1 1 1 1 0 1 ...
 $ Cl      : int  1 0 0 1 1 1 1 1 0 1 ...
 $ Cond    : int  1 1 1 1 1 1 1 1 1 1 ...
 $ Mg      : int  1 0 0 1 1 1 1 1 0 1 ...
 $ Na      : int  0 0 0 1 1 1 1 1 0 1 ...
 $ SO4     : int  1 1 1 1 1 1 1 1 0 1 ...
 $ TDS     : int  1 1 1 1 1 1 1 1 0 1 ...

  I don't see what I did differently from your sample code.

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