aggregate_avg

The functionaggregate_avg(str agg_name, str fieldname) returns the average of the field "fieldname" over all documents that passed the relevant filtering.

The aggregation result will be stored under the query results objects, under a key named "agg_name".

Input

  • agg_name(str) - Specifies the key that will be used to store the aggregation result under the query result.

  • fieldname(str) - The name of the field to aggregate. params[fieldname]must be of type float or int.

Example:

def score_function_recommendation( params, doc):
      score = 0.0 
      if match('genres'): 
         aggregate_avg ("avg_budget_genres", "budget")      
         if match('languages'):
             aggregate_avg ("avg_budget", "budget")
         score += rarity_avg('genres')
     return score

In the above example, the query results will include a key name 'aggregations', containing the following sub keys:

  • "avg_budget_genres" - the average of the field “budget” over all candidates that passed the filter over genres.

  • "avg_budget" - the average of the field “budget” over all candidates that passed the filters over genres and languages.

Last updated