¿Por qué no se aplica. Hora en R con xts / zoo?

Quiero agregar los datos por media hora. Diario es muy fácil:

apply.daily(X2,mean)

¿Por qué no hay función por hora? Lo intenté

hr.means <- aggregate(X2, format(X2["timestamp"],"%Y-%m-%d %H"))

y siempre tiene error con el argumento de recorte. ¿Hay una función más fácil similar a la de apply.daily? ¿Qué pasa si quiero agregar la media de 5 minutos. Los datos son valores por minuto:

"timestamp", value 
"2012-04-09 05:03:00",2
"2012-04-09 05:04:00",4
"2012-04-09 05:05:00",5
"2012-04-09 05:06:00",0
"2012-04-09 05:07:00",0
"2012-04-09 05:08:00",3
"2012-04-09 05:09:00",0
"2012-04-09 05:10:00",1

Estoy usando xts y zoo.

Respuestas a la pregunta(3)

Su respuesta a la pregunta