Ich arbeite in einem Büro, in dem SQL Server das Rückgrat von allem ist, was wir tun, von der Datenverarbeitung über die Reinigung bis hin zum Mungieren. Mein Kollege hat sich darauf spezialisiert, komplexe Funktionen und gespeicherte Prozeduren zu schreiben, um eingehende Daten methodisch so zu verarbeiten, dass sie standardisiert und in Berichten, Visualisierungen und Analyseprojekten verwendet werden können. Bevor ich hier angefangen habe, hatte ich nur sehr wenig Erfahrung mit SQL, abgesehen vom Schreiben der grundlegendsten Abfragen. Die überwiegende Mehrheit meiner Vorbereitungsarbeiten für die Analyse wurde in R durchgeführt. Mein Chef besteht darauf, dass ich meine SQL-Kenntnisse verbessere, obwohl es sehr wenige Aufgaben zu geben scheint, die mit R nicht effizienter und mit weit weniger Codezeilen zu erledigen sind Pakete wie dplyr, data.table und tidyr (um nur einige zu nennen). Meine Frage ist - macht das Sinn?
Vor ein paar Wochen stand ich vor der Aufgabe, eine Liste mit Spaltennamen für jede Zeile in einer Tabelle zu erstellen, die bestimmten Kriterien entspricht, und diese zu einem Vektor aus Zeichenfolgen zu verknüpfen. Es gab eine enge Frist und zu der Zeit war ich blockiert und konnte das Problem nicht richtig angehen. Ich fragte meinen Chef, der wiederum meinen Kollegen bat, ein TSQL-Skript zu schreiben, um das Problem zu lösen. Während er daran arbeitete, fand ich eine Möglichkeit, es in R zu tun, indem ich eine ziemlich einfache Funktion schrieb und sie über den Datenrahmen anwandte. Mein Kollege kam ungefähr zwei Stunden später mit seinem Drehbuch zurück. Es waren mindestens 75 Zeilen, bestehend aus zwei verschachtelten for-Schleifen. Ich bat ihn zu benachrichtigen, wenn es fertig war und er sagte, dass es mehrere Stunden dauern würde. In der Zwischenzeit konnte mein R-Skript die ~ 45.000 Datensätze in etwa 30 Sekunden durchlaufen.
Bin ich zu Recht der Ansicht, dass R eine viel bessere Wahl für das Bereinigen und Löschen von Daten ist? Vielleicht ist der SQL-Entwickler in meinem Büro einfach unfähig? Ich bin gespannt, ob jemand, der sowohl mit R als auch mit SQL (oder Python und SQL) gearbeitet hat, irgendwelche Gedanken dazu hat.