Funzione media pesata

di il
2 risposte

Funzione media pesata

Salve a tutti, devo fare una funzione media pesata con peso = 1/(w)^2, in cui la somma dei vari elementi da pesare è fatta moltiplicando per il peso. Fino ad ora ho sempre programmato solo in C e da poco ho iniziato ad approcciarmi in Python, quindi ho provato a realizzare la funzione affidandomi ai mie rudimenti di C e ho nel seguente modo, il problema è che mi restituisce una lista anziché un numero

def weighted_average_fit(x, w):

    sumerror = 0

    sum = 0

    if (len(x) == len(w)):

        for i in range(0,len(x)):

            sum += ((x[i])/(w[i]**2))

            sumerror += 1/(w**2)

        x_mean = sum/sumerror

        print ('media = ', x_mean)

        return x_mean

    else:

        printf('Errore x e w devono avere stesse dimensioni')

2 Risposte

  • Re: Funzione media pesata

    sumerror += 1/(w**2)
    deve essere
    sumerror += 1/(w[i]**2)
  • Re: Funzione media pesata

    - sum è una funzione built-in, cambia il nome della variabile
    - range(0,len(x)) equivale a range(len(x))
Devi accedere o registrarti per scrivere nel forum
2 risposte