最初の例が機能しなかった理由は、「関数」のつづりを「関数」と間違えたためです。以下が機能するはずです:
Analytic.collection.group( "function(x){ return {page_id : x.page_id}; }",
nil,
{ :count => 0 },
"function(x, y){ y.count++; }" )