Hej Leute,
hier kommt für euch das nächste R-Häppchen:
Kennt ihr schon das Package sqldf? Das ist für alle SQL-Jünger unter uns. Damit können wir R um SQL-Fähigkeiten erweitern. Genauer gesagt können wir SQL-Statements auf dataframes anwenden.
Wie macht sqldf das? Es erstellt eine temporäre Datenbank, importiert den dataframe in die Datenbank, führt das sqlite-Statement aus und gibt den Output zurück. Und das geht erstaunlich schnell, zum Teil schneller als direkt in R zu rechnen.
Und das beste ist, dass wir uns darum überhaupt nicht kümmern müssen, sondern einfach das SQL-Statement aufrufen können.
Also wie jedes CRAN-Package installieren
install.packages("sqldf")
Ich liebe die schnellen Aggregierungsmöglichkeiten mit der group by-Funktionalität:
library(sqldf) # Zählt die Anzahl Einträge und berechnet die Sepal-Mittelwerte sqldf("select Species, count(1) as n, avg([Sepal.Length]) as MW_SepalLength, avg([Sepal.Width]) as MW_SepalWidth from iris group by Species order by Species")
Wer mehr wissen will, schaut einfach mal auf die Github-Seite zu sqldf, dort gibt es noch einen Haufen weiterer Beispiele.
Lasst den SQL-Geek in euch raus und habt Spaß dabei,
Euer Holger