Причината, поради която първият пример не работи, е, че сте написали грешно "функция" като "функция". Следното трябва да работи:
Analytic.collection.group( "function(x){ return {page_id : x.page_id}; }",
nil,
{ :count => 0 },
"function(x, y){ y.count++; }" )