Dieser Beitrag beschäftigt sich grundsätzlich und in sehr kurzer Form mit folgenden drei Fragen:
Woran denkt ein datengetriebener Mensch, wenn er Behauptungen hört?
Welches Tool ist für Datenanalysen praktischer: R, Python, Java, MATLAB?
Können Sportdisziplinen das nächste Gebiet zur Anwendung der Datenanalysen und des maschinellen Lernens sein?
Table of Contents
Folgender Text beantwortet diese Fragen nicht explizit, aber liefert Anregungen für alle, die auf diese Themen neugierig sind ...
Vor ein paar Jahren habe ich einen TV-Werbespot gesehen, in dem behauptet wurde, dass der sogenannte "Fosbury Flop" die Sportwelt des Hochspringens revolutioniert hat. Also nahm ich mir vor, mir eines Tages die Daten der Weltrekorde beim Hochspringen zu beschaffen und sie genauer zu analysieren. R bietet sich dazu als Werkzeug an. Dank der kompakten R-Syntax kann ich mir die Weltrekorde vom Hochsprung echt leicht zeigen lassen und einen etwas tieferen Blick ins Thema werfen.
Als Quelle habe ich auf Wikipedia zugegriffen, und nach ein paar manuellen Textformatierungen mit Notepad++ konnte ich Daten über Rekorde, Athleten, Länder und Jahre in .CSV-Dateien speichern. Ich lud die Daten in R hoch, sowohl von Männern (m) als auch von Frauen (w), und schon konnte ich mein Vorhaben in die Tat umsetzen!
Datenanalyse mit R
Bemerkungen aus meiner ersten explorativen Analyse:
1. Durchbruch nach dem "Fosbury Flop"
Man kann tatsächlich sehen, dass die Entwicklung der Weltrekorde beim Hochspringen Mitte der 60er Jahre eine Art Grenze erreicht hatte. Erst ab Mitte der 70er Jahre hatte sich Dick Fosburys (USA) neue Technik, zusammen mit der Nutzung von dicken weicheren Landematten, langsam etabliert und die Rekorde weiter gesteigert. Der Trick ist, den Schwerpunkt des Körpers während des Sprungs so tief wie möglich unter der Latte zu halten. Das erreicht man beim Springen und Landen auf dem oberen Rücken. Aber Moment mal! Hätte die Weiterverwendung von Sandgruben zum Landen die Erfolge dieser neuen Technik nicht gebremst? Wahrscheinlich schon ...
2. Das Muster gab es aber bereits vorher
In den Daten sieht man auch, dass es schon einen vorherigen Durchbruch Ende der 50er, Anfang der 60er Jahre bei der Verwendung der "Straddle"-Technik (Wälzsprung) statt der "Western Roll"-Technik (Rollstil) gegeben hatte. Das Halten des Körperschwerpunkts unter der Latte war schon hier der Knackpunkt. Nur interessanterweise war die Steigung der Rekorde mit der Wälzsprungtechnik in dieser Zeitperiode deutlich steiler als später in der Zeit des "Fosbury Flop". Warum?
3. Die 2,00-m-Marke
Dieser Rekord wurde von Männern bereits ab 1914 gebrochen. Bei den Frauen dauerte es etwas länger, sodass die Höchstmarke erst ab 1977 überboten wurde. Deshalb dachte ich, es wäre gerechter, sich die durch eine durchschnittliche Körpergröße skalierten Höhen anzuschauen (siehe Plot rechts in der Abbildung). Bei Frauen wären es ca. 1,60 m und bei Männern 1,74 m. Diese Durchschnitte sind aber sehr grob geschätzt und es können andere wichtige Faktoren, wie z. B. Anteil der Muskelmasse und Mitochondrien in der Muskelzelle, eine Rolle spielen. Deshalb ist der Vergleich hierbei nicht ganz präzise und vollständig.
4. Geteilte Rekorde
In der Geschichte des Hochsprungs kam es nur viermal dazu, dass sich zwei Männer den Rekord teilten. Bei den Frauen passierte es sogar zehnmal und dabei gab es bis zu drei Athletinnen, die sich eine Bestmarke teilten (siehe oben rechts im linken Plot). Insgesamt also mehr als doppelt so häufig wie bei den Männern, was ich als Zeichen eines ausgeglichenen Wettbewerbs werte. Das macht das Zuschauen spannender und ist übrigens heutzutage ein ganz wichtiger Punkt in Bezug auf die Popularität von Spielen und Wettkämpfen.
5. Keine neuen Rekorde ab den 90er Jahren
Bei den Frauen gibt es ab 1987 keine neuen Weltrekorde, bei den Männern ab 1993. Warum ist das so? Trotz aller Weiterentwicklungen von Trainingsmethoden, Professionalisierung des Sports, Ernährung für Sportler, Sportmaterialien usw. ... Bringen all diese Maßnahmen tatsächlich etwas? Ist es Zeit für die Erfindung einer neuen Sprungtechnik? Sind wir hier auf eine menschliche Grenze gestoßen? Oder sind die Rekorde aus den 80er und 90er Jahren unter die Lupe zu nehmen?
All diese Gedanken habe ich mir gemacht, weil ich ein paar Plots von Weltrekorden beim Hochspringen mit Hilfe von R gesehen habe, nachdem ich mit der Behauptung im TV-Werbespot über die Revolution in dieser Sportart nicht ganz zufrieden war.
Und hier unten füge ich meinen R-Code bei:
<pre>
# Die Datensätze enthalten: Höhe in m, Vorname, Nachname, Land und Jahr.hjr_w <- read.csv(file="Hochsprung_Daten_W.csv",header=T,sep=",")
hjr_m <- read.csv(file="Hochsprung_Daten_M.csv",header=T,sep=",")
print(summary(hjr_w))
print(summary(hjr_m))
# Skalierung durch durchschnittliche Körpergröße (w ca. 1.60m, m ca. 1,74m)norm_hjr_w <- hjr_w$Height/1.60norm_hjr_m <- hjr_m$Height/1.74# Plottenpar(mfrow=c(1,2))
plot(hjr_w$Year,hjr_w$Height,main="Hochsprungsrekorde \nvs. Jahr (m/w)",xlab="Jahr",ylab="Höhe",xlim=c(1910,2000),ylim=c(0.8,2.5),col=3,pch=2)
points(hjr_m$Year,hjr_m$Height,col=4,pch=3)
stripchart(hjr_w$Height,add=TRUE,method="stack",at=1998,vertical=TRUE,col=3,offset=0.7,pch=1)
stripchart(hjr_m$Height,add=TRUE,method="stack",at=1998,vertical=TRUE,col=4,offset=0.7,pch=1)
grid(4,4)
legend(1980,1.1,c("w","m"),col=c(3,4),pch=c(2,3))
plot(hjr_w$Year,norm_hjr_w,main="Skalierte Hochsprungsrekorde \nvs. Jahr (m/w)",xlab="Jahr",ylab="Höhe/durchschn. Größe (m/w)",xlim=c(1910,2000),ylim=c(0.8,2.5),col=3,pch=2)
points(hjr_m$Year,norm_hjr_m,col=4,pch=3)
grid(4,4)
legend(1910,2.4,c("w","m"),col=c(3,4),pch=c(2,3))</pre>
Wer ist b.telligent?
Du willst den IoT Core durch eine Multi-Cloud-Lösung ersetzen und die Vorteile weiterer IoT-Services von Azure oder Amazon Web Services nutzen? Dann melde Dich bei uns und wir unterstützen Dich bei der Umsetzung mit unserer Expertise und dem b.telligent Partnernetzwerk.
Neuronale Netze werden erfolgreich auf so ziemlich jeden Datentyp angewandt: Bilder, Audio, Texte, Videos, Graphen usw. Nur wenn es um Tabellendaten geht, sind baumbasierte Ensembles wie Random Forests und Gradient Boosted Trees immer noch sehr viel verbreiteter. Wenn man diese erfolgreichen Klassiker durch neuronale Netze ersetzen will, dürfte Ensemble Learning immer noch eine Schlüsselidee sein. Dieser Blogbeitrag erklärt, warum das so ist. Dazu gibt’s ein Notebook mit den praktischen Details.
Azure AI Search, Microsofts serverloses Angebot für das R in RAG, hat seine eigene Skalierungslogik. Sie verbirgt viel von der Komplexität serverbasierter Lösungen, erfordert aber spezifische Kenntnisse.
Polars, der in Rust geschriebene Pandas-Herausforderer, sorgt für erhebliche Beschleunigung nicht nur in der Ausführung des Codes, sondern auch in der Entwicklung. Pandas krankt seit jeher an einer API, die an vielen Stellen „historisch gewachsen“ ist. Ganz anders Polars: Eine API, die von Anfang an auf logische Konsistenz ausgelegt ist und deren Stringenz mit jedem Release sorgfältig gepflegt wird (im Zweifelsfall auch unter Verlusten an Rückwärtskompatibilität), sorgt für eine erheblich schnellere Entwicklung. An vielen Stellen, wo man bisher Pandas eingesetzt hat, kann man es problem los durch Polars ersetzen: In Ibis-Analytics-Projekten, und natürlich einfach für die tägliche Datenaufbereitung aller Art. Gut macht sich die überlegene Performance auch in interaktiven Umfeldern wie PowerBI .