ReQL command: avg
Command syntax
sequence.avg([field | function]) → number
r.avg(sequence, [field | function]) → number
Description
Averages all the elements of a sequence. If called with a field name,
averages all the values of that field in the sequence, skipping
elements of the sequence that lack that field. If called with a
function, calls that function on every element of the sequence and
averages the results, skipping elements of the sequence where that
function returns None or a non-existence error.
Produces a non-existence error when called on an empty sequence. You
can handle this case with default.
Example: What’s the average of 3, 5, and 7?
r.expr([3, 5, 7]).avg().run(conn)
Example: What’s the average number of points scored in a game?
r.table('games').avg('points').run(conn)
Example: What’s the average number of points scored in a game, counting bonus points?
r.table('games').avg(lambda game:
game['points'] + game['bonus_points']
).run(conn)
Example: What’s the average number of points scored in a game?
(But return None instead of raising an error if there are no games where
points have been scored.)
r.table('games').avg('points').default(None).run(conn)
Get more help
Couldn't find what you were looking for?
- Ask a question on Stack Overflow
- Chat with us and our community on Slack
- Talk to the team on IRC on #rethinkdb@freenode.net — via Webchat
- Ping @rethinkdb on Twitter
- Post an issue on the documentation issue tracker on GitHub
Contribute: edit this page or open an issue