R

Nein, die Überschrift ist nicht unvollständig. In den letzten Tagen habe ich mich ein wenig mit R beschäftigt und bin begeistert. R ist so was wie GNU S, aber wer von S noch nix gehört hat ist damit auch nicht schlauer als zuvor. Daher hier mal von der CRAN-Seite zitiert:

R is `GNU S‘, a freely available language and environment for statistical computing and graphics which provides a wide variety of statistical and graphical techniques: linear and nonlinear modelling, statistical tests, time series analysis, classification, clustering, etc. Please consult the R project homepage for further information.

Es geht also ganz grob gesagt um das Thema Statistik. Und das ist ein Thema das mich schon auch interessiert, aus folgendem Hintergrund. Seit etwa 30 Jahren bin ich Sportschütze und in diesen 30 Jahren habe ich viele Versuche auf den unterschiedlichsten Rechnern und in den unterschiedlichsten Programmiersprachen gestartet um ein paar ganz triviale Dinge statistisch auszuwerten wenn es um meine Schießergebnisse geht. Als Rahmen dienen folgende Regeln:

  • Ein Sportjahr dauert 12 Monate
  • Man darf soviele Serien schießen wie man will
  • Wer mindestens 20 Serien geschossen hat, wird für die Jahresmeisterschaft gewertet
  • Für die Platzierung in der Jahresmeisterschaft zählt die Summer der 20 besten Ergebnisse

Rausgekommen sind diverse Programmmonster in BASIC (Commodore 64), FORTH, C, Perl usw. Jedesmal viel Aufwand und viel Mühe für das User-Interface und die Pflege der Daten. Der letzte Anlauf war in Perl und mit viel Mühe für einen Ergebnis-Parser.

Neulich habe ich dann mal ein paar Seiten Einführung zu R gelesen, relativ wenig im Vergleich mit den mehreren tausend Seiten die das herunterladbare Referenzmanual hat. Aber mir war schnell klar, dass ich hier ein Werkzeug in der Hand halte, das richtig angewendet mein individuelles Statistikproblem sehr elegant lösen könnte. Also ein wenig mit R gehackt und rausgekommen ist jetzt ein Auswertsystem das auf R basiert.

Die Ergebnisse die Ausgewertet werden sollen stehen in einer simplen Textdatei, die sieht momentan (nach 3 Ergebnissen so aus):

Datum Ringe
27.10.2009 341
30.10.2009 337
03.11.2009 348

Also jeweils ein Kalenderdatum und das an diesem Tag erzielte Ergebnis. So was liest man in R mit sehr wenig Aufwand ein:


f.einlesen <- function(name) {
# Einlesen der Daten aus Textdatei mit abschließendem
# Sortieren nach Datum
t.peng <- read.table(name, header=TRUE, sep=" ")
t.peng$Datum <- as.Date(t.peng$Datum, format="%d.%m.%Y")
t.peng[order(t.peng$Datum),]
}

Damit hat man einen Dataframe der die Daten enthält die in der Datei stehen. Und die kann man jetzt beliebig verwursten. Nach knapp 2 Tagen rumprobieren habe ich  135 Zeilen (inklusive Kommentare und Leezeilen) und die erfüllen schon mal sehr viel meiner Anforderungen. Um das mal zu verdeutlichen habe ich per Zufallsgenerator ein Jahr an Schießergebnissen des Kameraden „Zufallstreffer“ erzeugt, der erzielt mit großer Steuung zwischen 320 und 370 Ringen. Ausgewertet sieht das dann so aus:

Rplot001Der Kamerad hat also 85 Serien, die Summe aus den besten 20 ist 7287. Und die Graphik zeigt, wie das jeweils beste und für die Wertung schlechteste Ergebnis sich im Laufe der Monate verschieben. Ebenso sieht man, dass der Gesamtschnitt (über alle 85 Serien) sich im Laufe der Zeit irgendwo einpendelt während der Schnitt der 20 gewerteten besten Serien sich natürlich ab Serie 21 abkoppelt und stetig nach oben bewegt.

Erstellt ist diese Graphik mit 2 Funktionsaufrufen, einmal da Einlesen der Daten, einmal das Erzeugen der Graphik. Und als Graphik-Gerät kann man sowohl eine Bilddatei als auch eine Postscript-Datei in A4-Größe erstellen die man dann auch in hoher Qualität ausdrucken kann.

Das alles wie gesagt in sehr kurzer Zeit entwickelt und dabei kratze ich gerade mal ein wenig an der Oberfläche von R und bin noch gar nicht in die Tiefe gegangen. Aber der schnelle Erfolg motiviert natürlich, sich weiter mit diesem Werkzeug zu beschäftigen und noch viel mehr damit anzustellen.

Zur Abwechslung mal ein Ratespiel

Nachdem ich in den letzten Tagen öfters Besucher in meiner Statistik gesehen habe die mit einem bestimmten Suchbegriff hier im Blog gelandet sind habe ich mal bei Google-Trends recherchiert, wie sich dieser Suchbegriff deutschlandweit in den letzten 30 Tagen entwickelt hat. Hier die Graphik dazu:

trend1

So, jetzt also mal die Frage, welcher Begriff das sein könnte, der sich seit der Bundestagswahl plötzlich wieder steigenden Interesses erfreut. Die Auflösung gibt es beim Weiterlesen.

Weiterlesen

So lügt man mit Statistik

Die Neue Rheinische Zeitung hat heute einen Atikel „Die verschaukelte Bevölkerung“ online der sehr lesenswert ist. Beispiel:

In vielen Zeitungen erschienen Grafiken, die so aussahen, als hätten sich unsere Gesundheitsausgaben verdoppelt. Tatsächlich stiegen sie von 1976 bis 2004 aber nur um ca. 40 Prozent. Und in diesem Zeitraum seien auch alle anderen Preise gestiegen. Die Frage sei aber, wie viel wir für die Gesundheit gemessen am Bruttosozialprodukt ausgeben, und dann sieht das weitaus weniger dramatisch aus. Wichtig wären aber die Gesundheitsausgaben je Kassenmitglied. Und die hätten sich keineswegs dramatisch entwickelt, sondern im Rahmen des Bruttosozialproduktes. Ungern diskutiere die Bundesregierung überdies auch die Einnahmeseite. Und die sei wegen der Erosion am Arbeitsmarkt dramatisch gesunken. Doch damit könne die Bundesregierung keine „Gesundheitsreform“ begründen. Bosbach: Gesundheitsministerin Ulla Schmidt kenne die richtigen Zahlen. Leider veröffentliche sie diese nicht.

Ein anderer, der sehr schön mit Statistik die diversen Mythen enkräften kann ist Hans Rosling von gapminder.org.. Dazu gibt es einen wunderschönen TED-Talk:

Interessantes zum Niedriglohnsektor

Heute in meinem RSS-Feed wieder ein sehr lesenswerter Artikel von Weissgarnix. Es geht um die Aussage, dass wer keine Berufsausbildung hat dann im Niedriglohnsektor landet. Tatsächlich gibt es aber eine Statistik, die sagt, dass mittlerweile über 70% der Niedriglohn-Arbeiter tatsächlich eine abgschlossene Berufsausbildung haben. Also muss man weg von dem Bild, dass eine Berufsausbildung der Garant dafür ist, nicht im Niedriglohnsektor zu landen. Es ist eher so, dass der Druck auf Ungelernte damit massiv erhöht wird.

Dank der vielen Kommentare bei Weissgarnix gibt es eine Menge Links auf interessante Studien im Netz:

Alles in allem ein sehr deprimierendes Material. Und da verspricht dann Steinmeier Vollbeschäftigung bis 2020, die Frage ist doch: In welcher Art von Arbeit diese Vollbeschäftigung stattfinden wird? Rechnet er hier auch mit dem explodierenden Anteil im Niedriglohn-Sektor?

Die Bahn und die Schwarzfahrer

Die Meldung die heute durch die News geistert ist, daß die Bahn jetzt verschärfter gegen Schwarzfahrer vorgehen will und auch schneller zum Mittel „Strafanzeige“ greift.

In gewisser Weise kann ich das schon verstehen, denn Schwarzfahren ist nicht nett. Und so ist durchaus nachvollziehbar, dass im Zeitalter der klammen Kassen die Bahn eben auch nach dem Motto „Kleinvieh macht auch Mist“ ihre Einnahmen aufbessern will.

Nicht nachvollziehbar ist für mich aber der letzte Absatz des dazugehörigen Artikels im Focus:

Durch Schwarzfahrer entsteht der Bahn nach internen Schätzungen ein Schaden im dreistelligen Millionenbereich. Wie hoch die Zahl der ohne Fahrschein erwischten Bahn-Nutzer ist, die mit Nachlöse und Strafgebühr davon kommen, wollte die Bahn nicht mitteilen.

Hier wird wieder mit einer „großen Zahl“ argumentiert und keinerlei echtes Zahlenmaterial zum Beleg dieser Schätzungen abgeliefert. Wenn dsa Zugpersonal seinen Job gut macht, dann müßten nach meiner blauäugig naiven Einschätzung ja eigentlich 90% der Schwarzfahrer erwischt werden. Was ich bei meinen Ausflügen mit der Bahn aber oft genug beobachtet habe ist daß auf „Kurzstrecken“ wie Augsburg-München eher selten jeman die Fahrkarten kontrolliert.

In gewisser Weise erinnert diese Aussage aber auch an den Lokführer-Streik damals vor der Wirtschaftskrise als man wegen der um 80 Millionen gestiegenen Lohnkosten dann ein Riesen-Gezeter machte und Preiserhöhungen ankündigte um das wieder auszugleichen. Allerdings kann man mit dem Taschenrechner recht einfach ausrechnen, dass sich bei 5 Milliarden Fahrgästen im Jahr (laut Bahn-Geschäftsbericht) die 80 Millionen mehr die individuelle Fahrt eines Fahrgastes bestenfalls um ein paar Cent verteuern dürften.

So gsehen stehe ich auch den Hunderten von Millionen skeptisch gegenüber. Im ersten Halbjahr hat die Bahn knap 40.000 Strafanzeigen gemacht, legen wir das aufs Jahr um, dann sind das 80.000 Strafanzeigen. Hätte jeder dieser angezeigten Schwarzfahrer die Bahn um 1000 Euro geschädigt, dann sind wir gerade mal bei 80 Millionen Schadenssumme, also zweistelliger Millionenbereich. Aber eigentlich kostet ein Bahnticket weniger als 1000 Euro.

Blogstatistik ist was tolles

Heute hatte mein Blog bislang 337 Besucher. Und wenn ich mir die Top-Suchanfragen anschaue, dann sehe ich folgendes:

Search Views
seefest haunstetten 2009 5
qdvdauthor tutorial 3
ich wähle ihn nicht 2
piratenpartei 2
mazda europa service 2
01042 abzocke 12 cent 2

Offensichtlich bin ich also nicht der einzige, der mit QDVDAuthor und dessen „intuitivre Benutzeroberfläche“ zu kämpfen hat. Da ich am Wochenende die neuste Version 1.10 runtergeladen und gebaut habe werde ich vielleicht in den nächsten Tagen ein wenig mehr darüber schreiben, Donnerstag ist Kindergartenfest und dann ist wieder Filmen und DVDs machen angesagt.

Interessant sind aber auch andere Themen wie Linux und Midi, oder Videoschnitt im allgemeinen. Klar, jede Anfrage taucht da nur einmal auf, aber wenn man manche Suchbegriffe in Google eingibt und dann sieht, dass das eigene Blog erst auf den „hinteren Seiten“ der Trefferliste auftaucht, dann hat man schon die Vermutung, daß mancher der hierher geschickt wird recht verzweifelt ist.

Aber immerhin bin ich beim Suchbegriff „König der Terroristen“ auf Rang 4 der Google-Trefferliste. Siehe untenstehendes Bild.

Google Screenshot

Google Screenshot

Jetzt bekomme ich bestimmt auch einen Spitzenplatz auf Schäubles Anti-Terror-Liste.