Great point, @drmaciver, and nice work digging up the answer from Akratics Anonymous, @chelsea
Here's the latest code again for the aggday settings:
'last' : lambda x: x[-1], # only most recent datapoint entered that day counts
'first' : lambda x: x[0], # only the first datapoint entered that day counts
'min' : lambda x: min(x), # count the min of the day (default for weightloss)
'max' : lambda x: max(x), # just count the max datapoint
'truemean' : lambda x: np.mean(x), # use the mean of all datapoints
'uniqmean' : lambda x: np.mean(deldups(x)), # mean of the unique values (shrug)
'mean' : lambda x: np.mean(deldups(x)), # alias for uniqmean
'median' : lambda x: np.median(x), # has this ever been used for any goal ever?
'mode' : lambda x: scipy.mode(x), # technically: median of the commonest values
'trimmean' : lambda x: scipy.trim_mean(x, .1), # another way to discount outliers
'sum' : lambda x: np.sum(x), # what Do More and Do Less goals use
'jolly' : lambda x: 1 if x else 0, # deprecated; now an alias for 'binary'
'binary' : lambda x: 1 if x else 0, # 1 iff there exist any datapoints
'nonzero' : lambda x: 1 if any([i!=0 for i in x]) else 0 # 1 iff any non-0 datapts
'triangle' : lambda x: np.sum(x)*(np.sum(x)+1)/2, # blog.beeminder.com/triangle
'square' : lambda x: np.sum(x)**2, # requested by DRMacIver
'clocky' : lambda x: clocky(x) # sum of differences of pairs, HT @chipmanaged
'count' : lambda x: len(x) # ignore values, just count number of datapoints
[Search keyword: "aggday docs"]