kernelDensityFunction property

num Function(num) kernelDensityFunction

An approximate, nonparametric kernel density function.

Implementation

num Function(num) get kernelDensityFunction {
  // Based on smooth Parzen estimate; see ESL p. 208-209.
  final n = 100,
      gap = (maximum - minimum) / n,
      distributions = [...values.map((x) => Normal(x, gap))];

  return (num x) =>
      distributions.map((d) => d.pdf(x) / length).fold(0.0, (a, b) => a + b);
}