util tipos sintaxis paquetes paquete organizacion funciones ejemplos declaracion java math statistics packages

tipos - sintaxis de un paquete en java



Estadísticas simples: paquetes Java para calcular la media, la desviación estándar, etc. (5)

¿Podría sugerir algún paquete simple de estadísticas de Java?

No necesito necesariamente ninguna de las cosas avanzadas. Me sorprendió bastante que no parece haber una función para calcular la media en el paquete java.lang.Math ...

¿Qué están usando ustedes para esto?

EDITAR

Respecto a:

¿Qué tan difícil es escribir una clase simple que calcule los promedios y las desviaciones estándar?

Bueno, no es difícil. Solo hice esta pregunta después de haberlas codificado manualmente. Pero solo aumentó mi frustración en Java al no tener estas funciones más simples a mano cuando las necesitaba. No recuerdo la fórmula para calcular stdev de memoria :)




Solo respondiendo a esta parte de la pregunta:

Me sorprendió bastante que no parece haber una función para calcular la media en el paquete java.lang.Math ...

No creo que me haya sorprendido encontrar esto. Hay muchos "algoritmos útiles" que las bibliotecas de clases de Java no implementan. No implementan todo. Y en esto, no son diferentes de otros lenguajes de programación.

En realidad, sería algo malo si Sun intentara implementar demasiado en J2SE:

  1. Tomaría más tiempo de diseñador / desarrollador / técnico documentador ... sin un claro "retorno de la inversión".

  2. Aumentaría la huella de Java; por ejemplo, el tamaño de "rt.jar". (O si trataban de mitigar eso, daría como resultado una mayor complejidad de la plataforma ...)

  3. Para las cosas en el espacio matemático, a menudo necesita implementar los algoritmos de diferentes maneras (con diferentes API) para satisfacer diferentes requisitos.

  4. Para cosas complejas, puede ser mejor para Sun no intentar "estandarizar" las API, sino dejar que otros grupos interesados ​​/ capacitados lo hagan; por ejemplo, la gente de Apache.



import java.util.*; public class stdevClass { public static void main(String[] args){ int [] list = {1,-2,4,-4,9,-6,16,-8,25,-10}; double stdev_Result = stdev(list); System.out.println(stdev(list)); } public static double stdev(int[] list){ double sum = 0.0; double mean = 0.0; double num=0.0; double numi = 0.0; double deno = 0.0; for (int i : list) { sum+=i; } mean = sum/list.length; for (int i : list) { numi = Math.pow((double) i - mean), 2); num+=numi; } return Math.sqrt(num/list.length); } }