Ich sehe das nicht als neue Sprache. Vielleicht als "Dialekt"...Hallo EDi,
es steht ja nirgends geschrieben, dass eine Statistiksprache im 21. Jahrhundert nicht besser werden kann als im 20. Jahrhundert. Was mich an der ganzen Tidyverse-Entwicklung stört ist die Sprachverwirrung die entsteht, wenn man für jede Basisfunktion von R ein neues Verb erfindet und die dann solchermaßen einmal komplett ausgetauschte Sprache dann weiterhin R nennt. Es entstehen am Ende zwei Gruppen: die eine schaut ihre data.frames mit str an und rechnet einen t.test, die andere schaut Ihr tibble mit glimpse an und rechnet einen t_test. Wenn man die neue Sprache R++ nennen würde, dann wäre vieles einfacher.
Pakete gehören seit Anfang an zu R und erlauben neue Funktionen. Für mich ist alles R.
Man sollte base-R kennen, aber wenn man einen nutzen draus hat auch Pakete nutzen.
WIe es einem passt.
Ich nutze z.B. immer str und nie glimpse. t_test brauche ich nicht, hab ja lm()
Was ich hier sehe, ist dass teilweise wohl unterschiedlich gelehrt wird. Teilweise erkennt man auch, dass Grundlagen nicht gelehrt werden.
Base-R ist essentiell, ohne das wird man das tidyverse auch nicht verstehen...
Auch beim tidyverse sieht an viele Leute hier, welche die funktionsweise einer pipe nicht verstanden haben.
Für mich ist das egal. Macht keinen Unterschied, eventuell muss ich bisschen nachlesen, aber aus dem Kontext versteht man das.Kürzlich hatte hier jemand ein Buch auf dem Schreibtisch liegen, das ich nicht kannte: R für Dummies. Ich musste es aufschlagen und herumblättern um zu erfahren, ob es Klassisch-R oder Neu-R lehrt. Vom Cover war nicht zu erkennen, welche Sprache Gegenstand des Buches ist!
Das ist wie unterschiedliche Code-Stile. Jeder hat einen unterschiedlichen und man wird nie das standardisiert bekommen (selbst mit den besten lintern nicht). Ich habe schon viel code von vielen unterschiedlichen Menschen gelesen. Jeder Code war anders, trotzdem konnte ich verstehen was da geschieht.
Ich denke alle Lösungen valide und man sollte auch die vielfalt zeigen. Dadruch kann man nur lernen, seinen Horizont erweitern um dann für neune Probleme mehr Lösungsansätze zu haben. Man kann ja dann selbst entscheiden, was für einen funktioniert.
Beim Gruppenmaximum habe ich 2014 schon 10 verschiedene Arten gezeigt: https://stackoverflow.com/questions/253 ... 5#25314565
Ist halt open source....
Ich mag viele Sachen von tidyverse nicht. Die absichtlichen name-clashes mit base-R finde ich sch***. Das hat mich auch schon nerven gekostet bei debuggen. Ebenso, breaking changes in dplyr.Sprachverwirrung
Aber genauso ist base-R sehr verwirrend [strigsAsFactor ist ja jetzt endlich Geschichte...], vorallem beim funktionellen programmieren:
sapply() ist nicht typ-stabil. Das hat mich auch schon nerven beim debuggen gekostet. Das habe ich aus meinem repertoire gestrichen!
vapply() ist die alternative - aber wer nutzt die hier? Außerdem muss ich da mehr tippen...
Wenn ich lapply() nutze brauche ich auch mehr code-Zeilen.
Die syntax von lapply und mapply ist nicht gleich (Reihenfolge der Argument, MoreArgs und ...) - warum? Das verwirrt...
purrr standardisiert das und das ist für mich ein Vorteil.
Wie gesagt: Jeder wie er will und was er mag. Interessanter find ich hier wenn Leute sagen, sie möchten aber eine Lösung mit Paket xxx.