Mi sugerencia entonces tiene que ver con el tiempo computacional.
Realmente no miré con detenimiento de que se trataba hasta recién.
Ahora al hacerlo veo que la rutina no es un promedio como yo esperaba sino una separación de máximos y minimos y luego una media entre dichos valores.
Para el caso de los primeros 5 elementos si calcula una media común o standard.
Mi sugerencia del promedio móvil es muy útil en casos de variables físicas que tienen un cambio lento como temperatura, presión, humedad o en este caso pH.
Los cálculos estan restringidos y se logra una promediación de muchos valores a un costo de CPU muy bajo en terminos de tiempo, ya que solo debe restar y sumar dos datos ponderados para obtener el nuevo valor.
Voy a mirar mejor la rutina avergearray y luego te daré un comentario mas preciso.
De todas formas, eres libre de usar el método que gustes. Yo uso promedio movil y me da muy buenos resultados.