meanBy<T> function

double? meanBy<T>(
  1. Iterable<T> iterable,
  2. num accessor(
    1. T
    )
)

Returns the mean using an accessor function.

Implementation

double? meanBy<T>(Iterable<T> iterable, num Function(T) accessor) {
  final iterator = iterable.iterator;
  if (!iterator.moveNext()) return null;

  num total = accessor(iterator.current);
  int count = 1;

  while (iterator.moveNext()) {
    total += accessor(iterator.current);
    count++;
  }

  return total / count;
}