docs: def numpy_weighted_mean(data, weights=None):
      """Calculate the weighted mean of an array/list using numpy."""
      import numpy as np
      weights = np.array(weights).flatten() / float(sum(weights))
      return np.dot(np.array(data), weights)