Seite 1 von 1

Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 09:47
von Maclane
Hi Leute,

Ich hab ne ganz blöde Frage zum Urschleim, aber ich komm grad einfach nicht drauf. :oops:

Ich habe eine Reihe von Werten (mehrere Tausend) zwischen 0 und 99. Diese Werte sind Rechenergebnisse, wobei der Rechenweg mir unklar ist.
Aber wenn ich all diese Werte in ein Diagramm (x-Achse = Wert, y-Achse = Anzahl bzw. Häufigkeit) eintrage, dann erhalte ich diese berühmte Glockenkurve.
Die Werte gehören jeweils zu einer bestimmten Kategorie, sodass ich mehrere dieser Kurven erhalte - für jede Kategorie eine.
Ich möchte nun jede Kurve so manipulieren, dass alle Kurven deckungsgleich werden. Das heißt sie sollen alle den gleichen Peak haben (den ich festlege) und alle die gleiche Varianz.

Welche Rechenoperation muss ich mit den Einzelwerten vornehmen, um das zu erreichen?

Mir ist klar, dass ich die ganze Kurve (und damit den Peak) nach links oder rechts verschieben kann, wenn ich einfach einen Summanden einfüge (Wert = Wert + Summand).
Mir ist auch klar, dass sich die ganze Kurve nach oben oder unten verschiebt durch die Anzahl der Werte pro Kategorie.

Aber wie ändere ich die Breite der Kurve? Ich muss die Werte bestimmt mit irgendwas multiplizieren, aber mit was? Ich steh grad auf dem Schlauch und komm nicht drauf. :(

Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 10:23
von seeker
Ich würde sagen, du musst für die Breite einfach die Skalierung ändern:
Also die x-Werte mit einer konstanten Zahl multiplizieren.

Ich würde so vorgehen:
1. Du suchst die Maxima der Kurven.
2. Du suchst die Punkte, wo die Kurven nur noch den halben Maximalwert haben, so erhälst du die Halbwertsbreite.
http://de.wikipedia.org/wiki/Halbwertsbreite

Jetzt bildest du ein Verhältnis, sodass jede Kurve eine bestimmte, immer gleiche Halbwertsbreite bekommt.
Danach schiebst du die Kurven nach rechts/links und oben/unten, wie du schon geschrieben hast.

Beispiel:

Kurve1: Maximum bei 50 und Halbwert bei 75 und 25 --> Halbwertsbreite = 50
Kurve2: Maximum bei 60 und Halbwert bei 70 und 50 --> Halbwertsbreite = 20

50/20 = 2,5

--> alle x-Werte von Kurve 2 mal 2,5 nehmen.

Kurve3, 4,...: dasselbe machen, sodass du wieder bei 50 landest.
Statt 50 kannst du dir natürlich auch jeden anderen (sinnvollen) Wert raussuchen.

Unter Umständen kann es sinnvoll sein die Maxima auf Null zu schieben.

Grüße
seeker

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 11:18
von Maclane
Guter Tip. An die Halbwertsbreite hab ich ja gar nicht gedacht.

Wenn ich alle Werte mit ein und derselben Zahl multipliziere, dann (glaub ich zumindest) würde die Kurve zwar breiter werden, aber sich gleichzeitig auch "verschieben" (x=0 bleibt natürlich gleich, und von x=0 aus gesehen würde die Streckung oder Stauchung erfolgen). Das müsste ich dann wohl mit einem Summanden (Peak mal Faktor) - Peak wieder ausgleichen.

Oder ich rechne einfach alle Werte rechts vom Peak mal den Faktor und alle Werte links davon mal den Kehrwert.

Ja, das ist gut. :)

Danke und Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 12:29
von seeker
Maclane hat geschrieben:Wenn ich alle Werte mit ein und derselben Zahl multipliziere, dann (glaub ich zumindest) würde die Kurve zwar breiter werden, aber sich gleichzeitig auch "verschieben"
Du meinst, ob die Kurve dabei verzerrt wird (links anders als rechts vom Maximum)?
Nö, das tut sie nicht - es sein denn, du nimmst keinen konstanten Faktor. Das Maximum verschiebt sich aber.
Deshalb meinte ich, dass es vielleicht gut wäre die Kurven zuerst so zu verschieben, dass sie alle ihr Maximum bei x = 0 haben.
Probiers einfach aus. Das geht ja schnell...

Grüße
seeker

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 12:40
von tomS
Bist du dir bzgl. der Glockenkurve sicher?

Ich nehme an, du meinst die von Gauß; dabei ist insbs. die exponentielle Asymptrotik wichtig, die aber durch konkrete und insbs. zu wenige Daten nur schlecht approximiert wird.

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 12:44
von Maclane
Na deshalb sagte ich ja auch, dass ich die Kurve nach der Multiplikation wieder zurückschieben muss, bis der Peak wieder an der selben Stelle steht.
Oder ich multiplizier halt gleich links vom Peak anders als rechts davon (bei 0 ist die Kurve ja eh abgeschnitten)

Aber hast mir sehr geholfen. Manchmal steht man ja irgendwie auf dem Schlauch.

Frage: Excel kann mir ja, glaub ich, aus einer Reihe von Werten den Peak ausrechnen. Gibt's da auch ne Funktion, um die Halbwertsbreite auszurechnen? Weil sonst geht's ja nur mit Lineal und dann so Pi mal Daumen schätzen...

Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 12:52
von Skeltek
Kommt drauf an was er damit machen möchte. Entweder er verfälscht die Daten oder was das Diagram darüber aussagt, oder er meint was anderes.
Nachher hat er halt Daten von 2-198 statt Daten von 1-99...

Wenn bei einer Kategorie die Kurve nur von 0-60 geht statt von 0-99, würde ich die Werte einfach mit 99/60 multiplizieren?
Ist die Häufigkeit auf der Y Achse in % oder absolut abgetragen? Oder möchtest du unterhalb der durchgelegten Kurve eine Gesammtfläche von 1 haben?

Gruß, Skel

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 12:58
von Maclane
tomS hat geschrieben:Bist du dir bzgl. der Glockenkurve sicher?

Ich nehme an, du meinst die von Gauß
ähm.... ja genau... entschuldige meine Ungenauigkeiten. :oops:
tomS hat geschrieben:dabei ist insbs. die exponentielle Asymptrotik wichtig, die aber durch konkrete und insbs. zu wenige Daten nur schlecht approximiert wird.
Ach Tom....weißte....
Das tangiert doch den ordinären Germanus flavus nur peripher, im Speziellen wenn mathematische Kompetenz nicht disponibel ist. :mrgreen:

Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 13:13
von Maclane
Skeltek hat geschrieben:Kommt drauf an was er damit machen möchte. Entweder er verfälscht die Daten oder was das Diagram darüber aussagt, oder er meint was anderes.
Nachher hat er halt Daten von 2-198 statt Daten von 1-99...

Beispiel:
Wenn bei einer Kategorie die Kurve nur von 0-60 geht statt von 0-99, würde ich die Werte einfach mit 99/60 multiplizieren?
Ist die Häufigkeit auf der Y Achse in % oder absolut abgetragen? Oder möchtest du unterhalb der durchgelegten Kurve eine Gesammtfläche von 1 haben?
Hmmm.... lass mal überlegen...

Also die eine Kategorie könnte bei 2000 Werten einen Bereich von 20 bis 99 haben, mit einem Maximum bei 50.
Eine andere Kurve hätte vielleicht nur 500 Werte von 40 bis 90 mit einem Maximum bei 70.

Jetzt will ich bei beiden Kurven das Maximum gleich haben, sagen wir mal 65. Und die Form der Kurve soll dann auch identisch sein. Sodass man anschließend für beide Kurven sagen kann: Der Wert 80 z.B. hat eine Häufigkeit von xx%, egal wie viele Werte ursprünglich zugrunde lagen.

Die Reihenfolge der Werte ändert sich ja nicht: Wenn vorher Wert1 > Wert2 war, dann muss hinterher auch Wert1 > Wert2 bleiben. Nur ich muss die Werte eben in eine einheitliche Form gießen, damit eben ein Wert von Kategorie1 mit einem von Kategorie2 vergleichbar wird.

Hmm... Ich hoffe, das war jetzt nicht zu verwirrend. *am Kopf kratz*

Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 14:27
von Skeltek
gar net mal, willst du die verschiedenen Kategorien in verschiedenen Tabellen untereinander oder in eine rein kriegen?
Wenn bei einer Kurve der Wert 50 und bei der anderen 75 am häufigsten vorkommt, und du schiebst die zusammen, dann musst du halt für die unterschiedlich farbenen Kurven unten ne unterschiedliche Beschriftung an der Y Achse vornehmen.

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 14:58
von Maclane
Neenee ;-)
Das Diagramm dient ja nur zur optischen Hilfestellung. Wenn ich das alles auch ohne Diagramm machen könnte, würd ich's weglassen.
Es geht wirklich nur darum, die vielen Werte, die ich habe, durch Rechenoperationen so zu manipulieren, dass für jede Kategorie die Häufigkeitsverteilung annähernd gleich ist, ohne dass sich dabei die Sortierung ändert.

Praktisch geht es hierbei um (fiktive) Football-Spieler, welche eine berechnete Gesamtstärke haben. Da Positionen im Football naturgemäß sehr unterschiedlich sind, sind auch die Rechenwege, welche die Gesamtstärke berechnen, unterschiedlich. Dies führt dazu, dass Spieler nur innerhalb einer Position vergleichbar sind (welcher QB ist der bessere von zweien). Ein Computer braucht aber eine positionsübergreifende Vergleichbarkeit, da er sonst bei der Auswahl von Spielern immer bestimmte Positionen bevorzugen würde. Daher muss das alles irgendwie normalisiert werden.

Und wenn die Operanden erst einmal bekannt sind, dann kann man auch für zukünftig neu dazukommende Spieler die entsprechende Operation ausführen und sie sortieren sich da rein, wo sie hingehören.

Jaja, alles nur für den Computer - weil der Mensch hat ja ein Gehirn, nur der Computer hat keins.

Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 14. Sep 2010, 18:10
von tomS
Kannst du nicht einfach die Glockenkurve in eine lineare Funktion umwandeln und dann mit Excel drauflosengehen (Gerade fitten, Daten manipulieren, ...).

Also im Falle von



wäre das dann


Re: Glockenkurven manipulieren

Verfasst: 15. Sep 2010, 11:55
von Maclane
Naja, das Problem ist ja, dass ich die Funktion nicht kenne. Ich kann ja nur die Werte in ein Diagramm eintragen und dann sehe ich die Kurve. Klar, je mehr Werte, umso mehr sieht es wie eine Kurve aus. ;)

Aber die einzelnen Operanden der Funktion sind mir unbekannt. Wie kann ich die denn ausrechnen, wenn ich nur die Werte in einer Tabelle habe? Bin ja kein gelernter Statistiker. ;)

Gruß
Mac

Re: Glockenkurven manipulieren

Verfasst: 15. Sep 2010, 13:29
von tomS
Um aus deinen Datenpunkten eine echte Gaußverteilung zu bekommen, müsstest du diese fitten, d.h. eine Gaußkurve so durch die Punkte legen, dass sie diese möglichst gut approximiert. Das läuft im wesentlichen auf die Anpassung zweier Parameter, nämlich von x[down]0[/down] und a. N ergibt sich aus diesen beiden durch Normierung.

Das kann Excel aber so einfach nicht.

Was Excel jedoch kann ist diesen Fit für eine lineare Funktion durchzuführen. Das ergibt zwar nicht exakt die selben Werte für die beiden Parameter, wie wenn man direkt mit der Gaußkurve arbeitet, aber für den Hausgebrauch sollte das jedoch reichen.

In der Praxis gehst du einfach so vor:
- in die erste Spalte der Tabellenkalkulation die x-Werte eintragen
- in die zweite Spalte die y-Werte eintragen, also die Werte der gedachten Funktion f(x), wie ich so oben genannt habe
- in die dritte Spalte die g(x)-Werte berechnen lassen
- aus der ersten und dritten Spalte einen Funktionsgraphen erstellen, die Ausgleichsgerade daran fitten lassen (kann Excel) und die Werte ablesen

Re: Glockenkurven manipulieren

Verfasst: 15. Sep 2010, 13:45
von Maclane
Okay, ich probier das mal.

Danke. :)