On Sep 6, 2010, at 12:15 PM, Dimitri Shvorob wrote:


I have a (very big - 1.5 rows) dataframe with a (POSIXt" "POSIXlt") column h
(hour). Surprisingly, I cannot calculate a simple aggregate over the
dataframe.

n.h1 = sqldf("select distinct h, count(*) from x group by h")
Error in sqliteExecStatement(con, statement, bind.data) :
 RS-DBI driver: (error in statement: no such table: x)
In addition: Warning message:
In value[[3L]](cond) : RAW() can only be applied to a 'raw', not a 'double'

n.h2 = aggregate(x$price, by = x$h, FUN = nrow)

A vector argument (x$price) would only have one row (at most).

nrow(c(1,2)
NULL

Error in names(y) <- c(names(by), names(x)) :
 'names' attribute [10] must be the same length as the vector [2]

Try:

tapply(x$price, by = x$h, FUN = length)

--
David.

______________________________________________
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