ola lista. Sucede que para una materia donde se toca el tema de cálculo diferencial y análisis de datos, hice una sencilla aplicación que toma datos y saca la media, desviación estándar y algunas otras cosillas más, pero me topo con un problema de exactitud de los resultados, que se ve sobretodo al momento de sacar la desviación estándar.

Pongo aquí el extracto del código de la función que uso para obtenerlas, ignoro si hay una forma más cómoda:

import math
def desviacion_standar(lists, media):
    total = 0
    for i in range(0,len(lists)):
        value = lists[i]
        value = value - media
        value = value**2
        total = total + value
    total = total/float(len(lists))
    return math.sqrt(total)

Los argumentos de la función son una lista de datos, que se obtienen de una cadena en gtk que se parte con split, y el valor de la media, para la cual tengo una función en otra parte del programa que sí la hace.

Pongo un ejemplo: con los datos 31, 32, 32, 33, 35, 37, 40, 43, 44 y 45; el valor de la media es de 37.2 y Python lo saca bien, pero el valor de la desviación estándar debe ser de 5.4, y Python me devuelve un 5.132...


Hay alguna forma de hacer que el resultado se aproxime más al exacto? cabe decir que ese resultado, el del 5.4, lo hice con una calculadora científica de Texas Instruments, que son de las que piden para realizar otras operaciones matemáticas y graficar funciones, pero no sé si eso tenga que ver en la forma en la que Python maneje los datos. Gracias y saludos.
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a