Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Zahlensätze statistisch auswerten

11 views
Skip to first unread message

Robert Wegner

unread,
Feb 6, 2012, 1:31:02 PM2/6/12
to
Hallo,
ich hoffe das ihr mit helfen könnt. Ich habe keinen mathematischen
Background, mein Abi ist 20 Jahre her. Ich bin IT-Admin und muß
programmiertechnisch Sätze von Messwerten statistisch auswerten:

Ausgangswerte: pro Satz etwa 1500 - 1600 Werte, jeder Wert liegt
zwischen 0 und 15
Die Werte sind ungleichmässig verteilt, z.B. so:
16 x 1
3 x 2
3 x 3
24 x 4
90 x 5
265 x 6
407 x 7
375 x 8
218 x 9
109 x 10
34 x 11
12 x 12
4 x 13
1 x 15

Meine Aufgabe ist es nun eine Formel zu finden um automatisch einen
Bereich von "normalen" Werten festzulegen, also irgendwie mathematisch
festzulegen in welchem Bereich die Zahlen des jeweiligen Datensatzes
üblicherweise angesiedelt sind.
Oben also z.b alle Werte die zwischen 5 und 10 liegen. Dieser Bereich
ändert sich allerdings bei jedem Satz, daher kann ich das nicht statisch
festlegen.

Geht das? Ich würde gerne einen eigenen Lösungsansatz anbieten, aber ich
habe nicht den blassesten Schimmer wie man sowas berechnet.
Wäre toll wenn mir das jemand erklären könnte, wenn möglich so simpel
wie möglich. :)

Danke und viele Grüße,
Robert
Message has been deleted

Christian Gollwitzer

unread,
Feb 6, 2012, 1:50:43 PM2/6/12
to
Am 06.02.12 19:31, schrieb Robert Wegner:
> Meine Aufgabe ist es nun eine Formel zu finden um automatisch einen
> Bereich von "normalen" Werten festzulegen, also irgendwie mathematisch
> festzulegen in welchem Bereich die Zahlen des jeweiligen Datensatzes
> üblicherweise angesiedelt sind.
> Oben also z.b alle Werte die zwischen 5 und 10 liegen. Dieser Bereich
> ändert sich allerdings bei jedem Satz, daher kann ich das nicht statisch
> festlegen.
>
> Geht das? Ich würde gerne einen eigenen Lösungsansatz anbieten, aber ich
> habe nicht den blassesten Schimmer wie man sowas berechnet.
> Wäre toll wenn mir das jemand erklären könnte, wenn möglich so simpel
> wie möglich

Hallo Robert,

ich muss Dich leider dahingehend enttäuschen, dass es keine
allgemeingültige fertige Formel dafür geben kann. Wie Du sicher auch
schon festgestellt hast, ist es ja gar nicht einfach zu sagen, was
"normal" bedeuten soll. Folgende 2 Möglichkeiten kannst Du trotzdem
versuchen:

a) Angenommen, die Daten bilden immer so einen "Berg" im Histogramm, wie
in deinem Beispiel, mit einem großen Maximum im Zentrum. Dann hilft Dir
vielleicht schon die Standardabweichung. Berechne den Mittelwert

m = sum(x_i)/N

und die Standardabweichung

s = sum ( (x_i-m)^2 ) / N

N =Anzahl der Werte, x_1...x_N die Werte

Dann liegen die meisten Deiner Werte im Bereich

m +/- 2*s

Den Faktor vor dem s kannst Du wählen und somit das Kriterium für
akzeptable Werte verschärfen oder abschwächen


b) Besonders, wenn es z.B. mehrere Maxima geben kann o.ä., dann helfen
Dir Quantile weiter. Du könntest z.B. sagen, Du akzeptierst Werte die
mit 90% der Verteilung übereinstimmen. Dann machst Du folgendes:

1. Sortiere die Werte in eine lange Liste
2. Wähle den Wert bei 5% und 95% der Liste als untere und obere Schranke

Also wenn Du z.B. 200 Werte hast, dann sind nach dem Sortieren der 10.
und der 190. die Schranke. Damit werden statistisch 95% akzeptiert und
5% abgewiesen. Wiederum kannst Du hier an dem Parameter zur Verschärfung
drehen oder auch nichtsymmetrische Quantile wählen



Hoffe, das hilft schonmal weiter

Christian

Robert Wegner

unread,
Feb 6, 2012, 1:56:08 PM2/6/12
to
Am 06.02.2012 19:43, schrieb Stefan Ram:
> Robert Wegner<rob...@gmx.net> writes:
>> Meine Aufgabe ist es nun eine Formel zu finden um automatisch einen
>> Bereich von "normalen" Werten festzulegen, also irgendwie mathematisch
>> festzulegen in welchem Bereich die Zahlen des jeweiligen Datensatzes
>> üblicherweise angesiedelt sind.
>
> Es gibt keinen Bereich der »Normalität«, der ohne
> Subjektivität oder Willkür oder weitere Annahmen
> oder Informationen festgelegt werden kann.
>
> Siehe auch:
>
> http://de.wikipedia.org/wiki/Standardabweichung
> http://de.wikipedia.org/wiki/Ausrei%C3%9Fer
> http://de.wikipedia.org/wiki/Ausrei%C3%9Fertest_nach_Grubbs
> http://de.wikipedia.org/wiki/RANSAC-Algorithmus
>

Ja das hab ich schonmal versucht zu lesen, die Erklärungen dort gehen
aber sehr schnell über mein Mathematikwissen. :(
Die Aussreisertests sehen genau danach aus was ich suche, aber ich
kapiere die Erläuterungen dort nicht.
Was bräuchte man denn noch um die Ausreisser zu bestimmen. Kann man
nicht vom Durschnittswert aller Zahlen eines Satzes ausgehen und dann...
? :)

Danke + Grüße
Message has been deleted

Robert Wegner

unread,
Feb 6, 2012, 2:52:10 PM2/6/12
to
Am 06.02.2012 19:50, schrieb Christian Gollwitzer:
> a) Angenommen, die Daten bilden immer so einen "Berg" im Histogramm, wie
> in deinem Beispiel, mit einem großen Maximum im Zentrum. Dann hilft Dir
> vielleicht schon die Standardabweichung. Berechne den Mittelwert
>
> m = sum(x_i)/N
>
> und die Standardabweichung
>
> s = sum ( (x_i-m)^2 ) / N
>
> N =Anzahl der Werte, x_1...x_N die Werte
>
> Dann liegen die meisten Deiner Werte im Bereich
>
> m +/- 2*s
>
> Den Faktor vor dem s kannst Du wählen und somit das Kriterium für
> akzeptable Werte verschärfen oder abschwächen
>
>
Das ist schonmal hilfreich, danke! Ich erschreckenderweise schon ein
problem mit der Formel an sich: :)

> s = sum ( (x_i-m)^2 ) / N

Anbgenommen die Werte wären 1,2,3 dann ist m = 2, und dann? So:

( (1-3)^2 + (2-3)^2 + (3-3)^2 ) / N

oder so? :

((( 1 + 2 +3)-2)^2) / N


Und was den Faktor im Bereich " m +/- 2*s " betrifft, muß ich den oben
in der Formel auch anpassen?


Grüße, Denniver

Christian Gollwitzer

unread,
Feb 6, 2012, 4:56:00 PM2/6/12
to
Am 06.02.12 20:52, schrieb Robert Wegner:
> Das ist schonmal hilfreich, danke! Ich erschreckenderweise schon ein
> problem mit der Formel an sich: :)
>
> > s = sum ( (x_i-m)^2 ) / N

Ach, kein Problem;)
>
> Anbgenommen die Werte wären 1,2,3 dann ist m = 2, und dann? So:
>
> ( (1-3)^2 + (2-3)^2 + (3-3)^2 ) / N

Ja, genau so, und N=3. Da ist noch ein Fehler: Ich habe die Wurzel
vergessen, die muss man aus dem Ganzen ziehen. Außerdem müsste es (N-1)
statt N heißen, das ist allerdings wurscht, wenn Du viele Werte hast.

Damit ist
s=sqrt((1-2)^2+(2-2)^2+(3-2)^2)/2) = sqrt(1)= 1


> Und was den Faktor im Bereich " m +/- 2*s " betrifft, muß ich den oben
> in der Formel auch anpassen?

Naja, das ist jetzt eine Frage Deiner Daten. Wenn Du eben z.B. 1,2,3
hast, dann ist m=2 und s=1. Falls Du jetzt den Faktor 1 wählst, dann
liegen alle drei Datenpunkte im Bereich 2 +/- 1 = [1..3]. Hättest Du den
Faktor kleiner gewählt, z.B. 0.5, dann wäre Dein akzeptabler Bereich 2
+/- 0.5 = [1.5...2.5] und damit wäre nur die 2 OK und die 1 und 3
fliegen raus.

Für die Daten, die Du im OP geschrieben hast, bekomme ich
N=1561
m=11653/1561 = 7.465
s = 1.695

(ohne Gewähr)

Damit wäre der mittlere Bereich m +/- 2*s = [4.08...10.85] und damit
ziemlich genau das, was Du angegeben hast. Für eine sog.
"Normalverteilung" enthält der +/- 2*s-Bereich 95% der Daten. Du
könntest natürlich strenger sein und m+/- 1*s = [5.77...9.15] verlangen
(68%-Grenze). Das kannst Du aber nur selbst festlegen, und da ist eben
ein willkürlicher Faktor.

Christian

Benno Hartwig

unread,
Feb 7, 2012, 3:24:19 AM2/7/12
to

"Robert Wegner" <rob...@gmx.net> schrieb

> Meine Aufgabe ist es nun eine Formel zu finden um automatisch einen Bereich von "normalen" Werten festzulegen,

Spontane Idee:
Wenn du z.B. sagst "normal ist das, was 90% der
Fälle umfasst!", könntest du ein kleines Tool
schreiben, welches dir ein möglichst kleines
Intervall heraussucht, welches mindestens
90% der Werte umfasst. Wenn es mehrere
gleichgroße Intervalle gibt, würde ich das
nehmen, welches am meisten Werte erfasst.

Doofe Idee? Oder könnte das befriedigen?

Benno


Robert Wegner

unread,
Feb 7, 2012, 6:17:38 AM2/7/12
to
Am 07.02.2012 09:24, schrieb Benno Hartwig:

> Doofe Idee? Oder könnte das befriedigen?
>

Keine doofe Idee. Ich experimentiere gerade mit den einzelnen
Möglichkeiten um zu sehen was mir die besten Ergebnisse bringt.
Ich hatte noch die Idee einen Mindestprozentsatz festzulegen, die ein
Wert an der Gesamtzahl aller Werte haben muß. Also z.b. eine 5%-grenze:
bei 100 Werten gesamt, würde jeder Wert rausfliegen der nicht mindestens
5 mal vorkommt.
Sollte funktionieren oder?

Danke + Grüße, rob

Robert Wegner

unread,
Feb 7, 2012, 6:34:00 AM2/7/12
to
Am 06.02.2012 22:56, schrieb Christian Gollwitzer:
> Am 06.02.12 20:52, schrieb Robert Wegner:
>> Das ist schonmal hilfreich, danke! Ich [habe] erschreckenderweise schon ein
>> Problem mit der Formel an sich: :)
>>
>> > s = sum ( (x_i-m)^2 ) / N
>
> Ach, kein Problem;)

Klasse, Danke! :)
Grundsätzlich übrigens -vielleicht hätte ich früher mal Erwähnen
können:)- ist es so, das es bei den Messwerten *ideal* wäre, wenn alle
auf einem Wert liegen würden, also 1600 x 3 z.B.
Da aber die den Werten zugrunde liegenden Faktoren sozusagen in Bewegung
sind, gibt es das Ideal nicht. "Normal" wäre daher diese "Buckelform",
also eine Schwankung um einen Durchschnittswert. Je weiter ein Wert von
diesem Buckel abweicht, desto warscheinlicher ist er ein Problem und muß
gemeldet werden.
Da ist die Standardabweichung eigentlich schon das richtige Modell, oder?

Grüße, Robert
Message has been deleted
Message has been deleted

Robert Wegner

unread,
Feb 7, 2012, 8:07:00 AM2/7/12
to
Am 07.02.2012 12:42, schrieb Ralf . K u s m i e r z:

> Oder.
>
> 2: 33 %
> 3: 6 %
> 14: 13 %
> der Rest jeweils 4 %
>
> Und jetzt?
>
Sorry, ich kapier das Beispiel nicht. Könntest du das nochmal
detaillierter erläutern?


> Dein Denkfehler ist das fehlende Modell der Verteilung bzw. eine
> Begründung dafür. Ich vermute, daß Du eine ähnliche Vorstellung wie
> die intuitive bei Meßfehlern hast: Es gibt einen (unbekannten)
> "richtigen" Wert, und die empirischen Meßwerte liegen alle mehr oder
> weniger nahe dran, so daß sich eine glockenförmige
> Häufigkeitsverteilung ergibt.
>
> Du hast aber keinen Grund angegeben (und kennst vermutlich auch
> keinen), warum Deine Daten auch eine solche Vwerteilungsfunktion
> aufweisen sollten.

Naja, schon. Ich kann aus verschiedenen Gründen auf die echten Daten
nicht genauer eingehen. Aber stell dirs einfach wie 1500 Schneemänner
vor, die automatisiert durch ein *Programm* gebaut und aufrecht erhalten
werden, aus bis zu 15 Schneekugeln.
Da Menge des zur verfügung stehenden Schnees von Stunde zu Stunde
schwankt, sind die Schneemänner manchmal nur aus 2 Kugeln, manchmal aus
9 Kugeln gebaut. Ausserdem schmelzen immer mal wieder Teile der
Schneemänner, an diese wird dann nachverteilt.
Idealerweise würde der zur verfügung stehende Schnee immer auf alle
Schnemänner gleich verteilt.
Im Prinzip ne Art Load-Balancing.

Ich habe nun jeweils die Stundendaten und möchte sehen, ob manche manche
deutlich zuviel oder deutlich zu wenig Schnee abbekommen haben.

Und a diese Verteilung durch ein (mir nur im Ergebnis bekannte)
Progammfunktion vorgenommen wird, wäre das der Grund warum diese auch in
aller Regel eine solche Verteilungsfunktion aufweisen.


Grüße, robert

Rudolf Sponsel

unread,
Feb 7, 2012, 8:31:20 AM2/7/12
to
Am 07.02.2012 12:34, schrieb Robert Wegner:
> Am 06.02.2012 22:56, schrieb Christian Gollwitzer:
>> Am 06.02.12 20:52, schrieb Robert Wegner:
>>> Das ist schonmal hilfreich, danke! Ich [habe] erschreckenderweise schon ein
>>> Problem mit der Formel an sich: :)
>>>
>>> > s = sum ( (x_i-m)^2 ) / N
>>
>> Ach, kein Problem;)
>
> Klasse, Danke! :)
> Grundsätzlich übrigens -vielleicht hätte ich früher mal Erwähnen können:)- ist
> es so, das es bei den Messwerten *ideal* wäre, wenn alle auf einem Wert liegen
> würden, also 1600 x 3 z.B.

Dann böte sich der Modalwert (häufigste Wert) als Bezugsnorm an. Abweichungen
könnten über verteilungsfreie Prozentränge bestimmt werden. Letztlich wäre
aber wichtig zu wissen, was eine "Abweichung" denn eigentlich bedeutet? Der
durchschnittliche Puls eines Mannes ist ungefähr 70. Napoleon hatte einen von
40.* Diese Abweichung hatte für sein Leben überhaupt keine Relevanz, der
Bandit konnte reiten, tanzen, lieben, Kriege führen ... Es gibt viele Normen
und Abweichungswerte, daher kommt man um inhaltliche Vorüberlegungen nicht
herum. Also erst: was will ich, was soll der Abweichungswert leisten und dann
eine Methode wählen oder entwickeln. Eine "formale" Abweichung bedeutet eine
formale Abweichung und sonst nichts, bis eben geklärt ist, was die formale
Abweichung denn nun inhaltlich bedeuten soll, wonach man sie dann konstruiert
oder wählt.

Rudolf Sponsel, Erlangen
*http://www.sgipt.org/wisms/norm0.htm#Funktionsnorm

Ronald Benedik

unread,
Feb 7, 2012, 11:28:06 AM2/7/12
to
"Robert Wegner" schrieb im Newsbeitrag
news:BYidnVUjx_r8ga3S...@giganews.com...

>Hallo,

>ich hoffe das ihr mit helfen könnt. Ich habe keinen mathematischen
>Background, mein Abi ist 20 Jahre her. Ich bin IT-Admin und muß
>programmiertechnisch Sätze von Messwerten statistisch auswerten:

>Ausgangswerte: pro Satz etwa 1500 - 1600 Werte, jeder Wert liegt zwischen 0
>und 15
>Die Werte sind ungleichmässig verteilt, z.B. so:

16 x 1
3 x 2
3 x 3
24 x 4
90 x 5
265 x 6
407 x 7
375 x 8
218 x 9
109 x 10
34 x 11
12 x 12
4 x 13
1 x 15

Auf den ersten Blick würde ich da eine Gaußsche Normal-Verteilung annehmen.

>Meine Aufgabe ist es nun eine Formel zu finden um automatisch einen Bereich
>von "normalen" Werten festzulegen, also irgendwie mathematisch festzulegen
>in welchem Bereich die Zahlen des jeweiligen Datensatzes üblicherweise
>angesiedelt sind.

So etwas nennt man in diesem Fall Konfidenzintervall und ist mit
einer Wahrscheinlichkeit versehen z.B. 95% oder 99.95 Prozent.

>Oben also z.b alle Werte die zwischen 5 und 10 liegen. Dieser Bereich
>ändert sich allerdings bei jedem Satz, daher kann ich das nicht statisch
>festlegen.

Man hat dann eine parametrisierte Wahscheinlichkeitsdichtefunktion
f(Theta). Etwa ein Statistisches Modell der Verteilung.

In so einem Fall berechnet man Theta^* durch die Maximum-Likelyhood Methode.
Der Parameter Theta^* wird dann so bestimmt, dass die Wahrscheinlichkeit
alle Datensätze zu erhalten maximal wird.

>Geht das? Ich würde gerne einen eigenen Lösungsansatz anbieten, aber ich
>habe nicht den blassesten Schimmer wie man sowas berechnet.

Ich kann nur etwas über parametrisierte Statistik sagen aber es gibt auch
andere Ansätze.

>Wäre toll wenn mir das jemand erklären könnte, wenn möglich so simpel wie
>möglich. :)

Statistik ist ein Kind der Masstheorie und schon deshalb nicht leicht
verständlich.
Der Hintergrund der Aufgabe ist etwas unklar formuliert, vielleicht reicht
es aus
Hypothesen zu testen. Dafür gibt es sicher verständliche Formeln.

Message has been deleted
Message has been deleted

Vogel

unread,
Feb 8, 2012, 3:41:45 PM2/8/12
to
Robert Wegner <rob...@gmx.net> wrote in
news:BYidnVUjx_r8ga3S...@giganews.com:

> Hallo,
> ich hoffe das ihr mit helfen könnt. Ich habe keinen mathematischen
> Background, mein Abi ist 20 Jahre her. Ich bin IT-Admin und muß
> programmiertechnisch Sätze von Messwerten statistisch auswerten:
>
> Ausgangswerte: pro Satz etwa 1500 - 1600 Werte, jeder Wert liegt
> zwischen 0 und 15
> Die Werte sind ungleichmässig verteilt, z.B. so:
> 16 x 1
> 3 x 2
> 3 x 3
> 24 x 4
> 90 x 5
> 265 x 6
> 407 x 7
> 375 x 8
> 218 x 9
> 109 x 10
> 34 x 11
> 12 x 12
> 4 x 13
> 1 x 15
>
1.) erst must da mal festellen was für eine Verteilung du hast
>
(auf den ersten Blick sieht es nach Normalverteilung aus)
>
2. 'normal' ist der Erwartungswert einer statistischen Variablen
>
(in Gegensatz zu dem was man dir hier von anderen erklärt hat, 'normal'
gäbe es nicht, sei subjektiv, usw., Quatsch)
>
Bei der Normalverteilung ist der Erwartungswert das Mittel. Das ist der
'normale' Wert.
>
3.) die Varianz ist ein Maß für die Abweichunge vom 'normalen'
>
Allerdings kann man die dazu erforderlichen mathematischen Kenntnisse hier
nicht erklären wegen des Umfangs.
>
Hier mal eine kurze Übersicht was du wissen müsstest.
>
http://de.wikipedia.org/wiki/Statistischer_Test
>
> Meine Aufgabe ist es nun eine Formel zu finden um automatisch einen
> Bereich von "normalen" Werten festzulegen, also irgendwie mathematisch
> festzulegen in welchem Bereich die Zahlen des jeweiligen Datensatzes
> üblicherweise angesiedelt sind.
> Oben also z.b alle Werte die zwischen 5 und 10 liegen. Dieser Bereich
> ändert sich allerdings bei jedem Satz, daher kann ich das nicht statisch
> festlegen.
>
> Geht das?
>
Das geht, aber ohne gediegene Kenntnisse der Statistik leider nicht.
>
> Ich würde gerne einen eigenen Lösungsansatz anbieten, aber ich
> habe nicht den blassesten Schimmer wie man sowas berechnet.
>
Ich kann auch keine Schuhe sohlen, deswegen lass' ich das beim Schuster
machen ;-)
>
Als IT-Admin solltest du wissen, dass es für den von dir verfolgten Zweck
fertige Programme gibt, die man meist im Umfeld von
Qualitätskontrolle/Qualitätssicherung findet.
>
Anspruchvollere Programme sind im wissenschaftlichen Bereich zu finden,
aber ohne entsprechende Kenntnisse nicht zu verwenden.
>

Alfred Flaßhaar

unread,
Feb 9, 2012, 3:49:07 AM2/9/12
to
Vogel wrote:
> Robert Wegner <rob...@gmx.net> wrote in
> news:BYidnVUjx_r8ga3S...@giganews.com:
>
(...)

> Das geht, aber ohne gediegene Kenntnisse der Statistik leider nicht.
>>
(...)

Das stimmt so pauschal nicht. Es gibt einfache Algorithmen zur Lösung der
Aufgabe. Theoretische Hintergründe muß man bei der praktischen
ingenieurmäßigen Anwendung nicht unbedingt kennen. Es gab mal eine Zeit und
einen Ort ohne Computer, wo auf sog. Feinpapier entsprechende Sachen
vorgedruckt waren.

Z. B.: Trage die Summenhäufigkeit der Stichprobe auf. Mache eine
Verteilungshypothese, die evtl. an die Kausalität der Meßwerte angelehnt
ist. Dann folgt ein verteilungsunabhängiger Test (Kolmogorow, Renyi, ...).
Lege Quantilwerte fest, die zur Entscheidung führen (Normaler Wert -
Ausreißer).

Das ist in der einschlägigen Literatur leicht verständlich nachzulesen (z.
B. im "Fisz").

Freundliche Grüße, Alfred Flaßhaar

0 new messages