2017-04-26 6 views
1

Mein Problem:Durchschnitt von einem Array in Python Unsicherheiten

Ich habe eine Reihe von Ufloats (z. B. ein Unarray) in Pythons Unsicherheiten Paket. Alle Werte des Arrays haben ihre eigenen Fehler, und ich brauche eine Funktion, die mir den Durchschnitt des Arrays in Bezug auf beide gibt, den Fehler bekomme ich bei der Berechnung der Mittelwert der Nennwerte und den Einfluss der Werte Fehler haben .

Ich habe eine uarray:

2 +/- 1 3 +/- 2 4 +/- 3

und brauchen eine Funktion, die mich einen Mittelwert des Arrays gibt.

Dank

+2

Können Sie ein Beispiel für das Ergebnis geben, das Sie von diesem Datensatz erwarten würden? – njzk2

Antwort

0

Es sei denn, ich etwas fehle, können Sie die sum durch die Länge des Arrays aufgeteilt berechnen konnte:

from uncertainties import unumpy, ufloat 
import numpy as np 
arr = np.array([ufloat(2, 1), ufloat(3, 2), ufloat(4,3)]) 
print(sum(arr)/len(arr)) 
# 3.0+/-1.2 

Sie können auch definieren, wie folgt aus:

arr1 = unumpy.uarray([2, 3, 4], [1, 2, 3]) 
print(sum(arr1)/len(arr1)) 
# 3.0+/-1.2 

uncertainties kümmert sich um den Rest.

+0

Ich bezweifle das ist es, wenn ich dies auf meine realen Daten verwende, erhalte ich einen Fehlerwert von +/- 0,4, während der Standardfehler des Mittelwerts der Nennwerte um 8 ist. – DomR

+0

Sie könnten eine andere Fehlerverteilung haben. Dieser [Artikel] (https://newton.cx/~peter/2013/04/propagating-uncertaintys-the-lazy-and-absurd-way/) könnte Sie interessieren. –

Verwandte Themen