Vergleich von R, Python, SAS, SPSS aus Sicht europäischer Datenwissenschaftler

nasa-53884-small.jpeg

Wie ich im Artikel Demokratisierung der dritten Welle von KI, maschinellem Lernen, Datenwissenschaft erwähnt habe, sind Daten jetzt überall auf der Welt verfügbar. In der Welt der Wissenschaft sind Open-Source-Programmiersprachen und -Tools wie R oder Python weit verbreitet.

Tatsächlich interagieren wir häufig mit verschiedenen Arten von Kunden, insbesondere im Silicon Valley, aber heutzutage sind die Kosten für die Verwendung älterer Tools zur Analyse und Statistik von Unternehmensdaten wie SAS oder SPSS in unseren Unternehmen enorm. Es scheint, dass der Überprüfungsdruck von Tag zu Tag zunimmt, und es scheint, dass es für neue Projekte oder neu eingestellte Mitarbeiter grundsätzlich unmöglich oder sogar ziemlich schwierig ist, die Genehmigung für solche Ausgaben zu erhalten. Letztendlich kann alles, was Sie mit SAS oder SPSS versuchen, mit R oder Python erledigt werden, und mit Zugriff auf noch modernere Algorithmen findet dieser Übergang statt. Es scheint zu geben. Aus diesem Grund für Schulungen in diesen Programmiersprachen oder für Tools wie unser Exploratory, mit denen Sie ohne Programmierung auf verschiedene Funktionen von R zugreifen können. Die Nachfrage beginnt zu steigen.

Selbst wenn es sich in der Realität um ein altes oder großes Unternehmen handelt und solche Kosten noch nicht sichtbar und problematisch sind, zahlen viele Menschen dennoch viel Geld für die Verwendung von SAS oder SPSS. Ist auch eine Realität. Der Datenwissenschaftler Jeroem Kromme, der für die Datenanalyse in Europa berät, teilt heute die Erfahrungen seines Teams mit. Auf dieser Grundlage werden wir wichtige datenwissenschaftliche Tools wie R, Python, SAS und SPSS auf leicht verständliche Weise vergleichen und Ratschläge zur Einführung solcher Tools geben diese Person. 18.03.2017 / python-r-vs-spss-sas /) Ich möchte Ihnen vorstellen, was mit Zustimmung der Person selbst ins Japanische übersetzt wurde. Ich werde.

<Übersetzung von hier>

SAS, SPSS, R und Python sind die am häufigsten verwendeten Projekte im Zusammenhang mit der Kundendatenanalyse, aber SAS und SPSS werden wahrscheinlich am häufigsten verwendet. Kunden interessieren sich jedoch immer mehr für die Open-Source-Programmiersprachen R und Python. In letzter Zeit sind einige unserer Kunden auch von SAS, SPSS zu R oder Python gewechselt. Selbst wenn Sie noch nicht migriert haben, konnte neuere kommerzielle Software (einschließlich SAS und SPSS) R und Python von innen verwenden, sodass es sich in Wirklichkeit bereits um R und Python handelt Ich benutze Python.

SAS wurde ursprünglich an der North Carolina State University mit dem Hauptzweck der Analyse numerischer landwirtschaftlicher Daten entwickelt. Das Akronym für SAS stammt aus dem Statistical Analysis System. Aufgrund der damaligen Nachfrage nach solcher Software wurde SAS 1976 als Unternehmen gegründet.

Das Statistical Package for the Social Sciences (SPSS) wurde ursprünglich für die Analyse der Sozialwissenschaften entwickelt, war aber gleichzeitig die weltweit erste statistische Programmiersprache für PCs. Die Entwicklung begann zunächst an der Stanford University, aber acht Jahre später wurde das Unternehmen als SPSS gegründet und 2009 von IBM übernommen.

Die R-Sprache wurde ursprünglich an der University of Auckland, Neuseeland, mit dem Hauptzweck der Analyse mithilfe statistischer Modelle entwickelt. Die erste Version wurde im Jahr 2000 als Open Source veröffentlicht.

Im Vergleich zu den anderen Tools, die ich bisher gesehen habe, ist die Python-Sprache das einzige Projekt, das noch nicht im College begonnen hat. Python wurde ursprünglich von einem Lieblingsniederländer von Monty Python (benannt nach diesem) erstellt. Er suchte nach einem Projekt für Weihnachten in einem Jahr und erstellte eine neue Entwicklungssprache namens Python, die auf einer Programmiersprache namens ABC basiert. ABC wurde auch von ihm entwickelt, um Nicht-Programmierern das Programmieren beizubringen. Python ist neben C ++ und Java eine vielseitige Programmiersprache. Es ist jedoch überwiegend einfacher zu lernen als solche Sprachen. Seitdem haben viele Programmierer zahlreiche Module entwickelt, und in letzter Zeit ist es mit Tools für verschiedene statistische Analysen eine Ebene, die geeignet ist, heute zusammen mit den oben genannten statistischen Tools aufgelistet zu werden. Es ist geworden.

In diesem Artikel möchte ich diese vier Sprachen in Bezug auf Methode, Technologie, Lernfreundlichkeit, Visualisierung, Unterstützungssystem und Kosten vergleichen. Diesmal konzentriert sich der Vergleich auf die Programmiersprache, sodass Benutzeroberflächen wie SAS Enterprise Miner oder SPSS Modeler von dieser Vergleichsliste ausgeschlossen werden.

Statistische Methoden und Techniken

Erstens geht es bei der Analyse von Daten zwischen ** Analyse zur Erklärung ** und ** Analyse zur Vorhersage ** hin und her. Welche Analysemethode verwendet werden soll, hängt von Ihren aktuellen Zielen ab. Nehmen Sie zum Beispiel einen Kunden, der das Unternehmen verlässt oder storniert. Zuerst haben Sie möglicherweise eine Frage, warum die Kunden abreisen, oder Sie fragen sich möglicherweise, welche Kunden abreisen. Der Hauptzweck der ersten Frage ist es, zu erklären, warum der Kunde das Unternehmen verlässt. Die zweite Frage ist, vorherzusagen, welche Kunden abreisen werden. Dies sind grundsätzlich verschiedene Arten von Fragen, und diese Unterschiede wirken sich darauf aus, welche Analysemethode Sie in Zukunft verwenden werden. Diese Vorhersage wird häufiger als Data Mining oder maschinelles Lernen bezeichnet.

SAS und SPSS stammten aus der ** Datenanalyse zur Erklärung **, teilweise weil die Perspektive des Hypothesentests ursprünglich in einem wichtigen akademischen Umfeld entwickelt wurde. Daher ist die Anzahl der Algorithmen wie maschinelles Lernen und KI überwiegend geringer als die von R und Python. Natürlich haben beide Tools kürzlich Pakete herausgebracht, die zum Erstellen von Vorhersagemodellen wie SAS Enterprise Miner oder SPSS Modeler geeignet sind, aber sie sind völlig andere Tools als der Hauptteil und erfordern eine andere Lizenz. Ich werde.

Es gibt viele Gründe, warum Open Source-Software gut ist, aber es ist besonders erwähnenswert, dass sie von der Community ständig verbessert wird und dass immer mehr Funktionen hinzugefügt werden. R wurde ursprünglich mit der Hoffnung erstellt, dass so viele Menschen auf der Welt wie möglich die Algorithmen verwenden, die sie für Akademiker und Forscher wie Universitäten erstellt haben. Aus diesem Grund kann gesagt werden, dass R sowohl in der ** erklärenden Analyse ** als auch in der ** prädiktiven Analyse ** in Bezug auf die Typen und die Anzahl der Algorithmen leistungsfähig ist.

Auf der anderen Seite wurde Python ursprünglich mit dem Schwerpunkt auf der Erstellung von Geschäftsanwendungen entwickelt und nicht aus akademischer / forschender oder statistischer Sicht. Daher ist Python besonders stark, wenn Sie es direkt in einer Anwendung verwenden möchten. .. Aus diesem Grund kann gesagt werden, dass es einen starken Aspekt bei der Vorhersage seiner statistischen Funktion gibt. Python wird häufig in Anwendungen für maschinelles Lernen verwendet, bei denen Datenanalysten nicht eingreifen. Daher ist Python auch bei der Verarbeitung und Analyse von Bildern und Videos stark. Zum Beispiel haben wir Python verwendet, um im letzten Sommer unser eigenes autonomes ferngesteuertes Auto zu bauen. Ich habe es gemacht. Außerdem ist Python wahrscheinlich die am einfachsten zu verwendende Sprache, wenn Big-Data-Frameworks wie Spark verwendet werden.

Leicht zu lernen

Sowohl SAS als auch SPSS verfügen über eine umfassende Benutzeroberfläche, sodass Benutzer nicht ständig programmieren müssen. Darüber hinaus verfügt SPSS über eine Einfügefunktion, mit der Sie Code basierend auf den ausgeführten Schritten generieren können. SAS hat so etwas wie Proc SQL, was für Leute, die SQL kennen, relativ einfach sein kann. Beide Tools verwenden jedoch eine völlig andere Syntax und unterscheiden sich grundlegend von jeder anderen Programmiersprache. Wenn Sie also auf eine Situation stoßen, in der Sie eine davon lernen müssen. Das tut mir leid.

Es gibt einige alte UI-basierte Lösungen wie Rattle in R, aber sie sind überhaupt nicht mit SAS und SPSS vergleichbar. R ist eine leicht zu erlernende Sprache für Programmierer, aber die Realität ist, dass die meisten Datenanalysten keine Programmiererfahrung haben. Für diese Leute wird es schwierig sein, R zu lernen. Sobald Sie jedoch die Grundlagen haben, wird es danach relativ einfach. In diesem Sinne werden wir von nun an Bildungskurs, in dem Sie das Programmieren in R-Sprache erleben können einführen. Gemacht für diejenigen, die sein wollen.

Wie bereits erwähnt, basiert Python auf der Sprache ABC, die ursprünglich entwickelt wurde, um Nicht-Programmierern das Programmieren beizubringen, sodass das geschriebene Skript leicht zu lesen ist. Man kann sagen, dass es die am einfachsten zu erlernende Sprache ist. Python ist eine gängige Programmiersprache, daher gibt es keine Benutzeroberfläche.

Zusammenfassend kann gesagt werden, dass es die einfachste Sprache ist, um damit zu beginnen, dass SAS / SPSS ohne Programmierung analysiert werden kann, um mit dem Lernen zu beginnen.

Unterstützung

Sowohl SAS als auch SPSS sind kommerzielle Software, daher gibt es formelle Unterstützung. Dies kann auch ein Grund für einige Unternehmen sein, diese Tools zu wählen. Weil es ein Gefühl der Sicherheit gibt, können Sie Hilfe bekommen, wenn Sie auf Probleme stoßen.

Andererseits ist der Öffentlichkeit meines Erachtens bewusst, dass die Unterstützung von Open Source-Tools nicht sehr zu erwarten ist. Aber die Realität ist nicht. Sicher, diese Open-Source-Tools werden möglicherweise nicht direkt von ihren Entwicklern unterstützt, aber in Wirklichkeit wird sowohl in R als auch in Python spontan eine viel größere Community gebildet. Meistens sind viele Menschen dort bereit zu helfen. Zum Beispiel hat jemand bereits ein Problem oder eine Frage gemeldet, mit der Sie mit einer Wahrscheinlichkeit von 99% oder mehr konfrontiert werden, und jemand hat es bereits beantwortet, beispielsweise bei Stack Overflow (technische Q & A-Site). Es ist etwas, was ist. Darüber hinaus bieten einige Unternehmen bereits R- und Python-Supportdienste an. Ironischerweise gibt es keine formale Unterstützung für R oder Python, aber wenn Sie tatsächlich eine Frage haben, können Sie die Antwort viel schneller finden als SAS oder SPSS.

Datenvisualisierung

In Bezug auf die Datenvisualisierung ist SAS und SPSS zwar äußerst funktional wichtig. Sie können kleine Änderungen vornehmen, aber es ist immer noch ziemlich ärgerlich oder unmöglich, sie wirklich anzupassen. In dieser Hinsicht können Sie mit R und Python viel mehr anpassen. Es gibt ggplot2 als Visualisierungswerkzeug, das in der R-Welt weit verbreitet ist, aber grundsätzlich kann alles angepasst werden, und es ist auch möglich, interaktive Anwendungen mit einem Werkzeug namens glänzend zu erstellen.

R und Python lernen ständig voneinander, und eines der besten Beispiele ist, dass sogar Python heute das Äquivalent dieses ggplot bietet. Ein weiteres häufig verwendetes Modul zur Visualisierung von Daten in Python ist Matplotlib.

Kosten

Sowohl R als auch Python sind Open Source, sodass jeder sie kostenlos verwenden kann. Natürlich kann es, wie oben erwähnt, schwieriger sein, etwas zu lernen als etwas mit einer Benutzeroberfläche wie SAS oder SPSS. Infolgedessen werden Datenanalysten, die R und Python beherrschen, viel höher bezahlt als diejenigen, die dies nicht tun. Und die Kosten für die Ausbildung derjenigen, die diese Fähigkeiten derzeit nicht besitzen, sind nicht zu vernachlässigen. In Wirklichkeit bedeutet Open Source nicht, dass es völlig kostenlos ist, aber selbst wenn Sie es abziehen, wird es immer noch mit Tools wie SAS und SPSS verglichen, die immer noch extrem hohe Lizenzgebühren verlangen. R und Python sind immer noch die mit Abstand billigsten.

Meine Wahl

“Software is like sex, it’s better when it’s free” 
— Linus Torvalds (creator Linux)

Software ist wie Sex und es ist besser, wenn sie kostenlos ist.
-Linas Tobals (Schöpfer von Linux)

Übrigens sind die Tools, die ich häufig bei der Analyse von Daten verwende, R oder Python, und ich hoffe, dass sie jederzeit und überall verwendet werden können, ohne eine Lizenz zu kaufen oder sich um solche Dinge zu kümmern. Der Hauptgrund für die Verwendung von R oder Python außerhalb der Lizenzierung ist die breite Palette statistischer Methoden. Schließlich können Sie jeden Algorithmus auswählen und verwenden, der am besten zu der Datenanalyse passt, die Sie gerade durchführen.

Die Frage, ob R oder Python verwendet werden soll, hängt vom jeweiligen Zweck ab. Wie ich bereits sagte, ist Python eine Sprache, die mit dem Schwerpunkt auf der Erstellung von Anwendungen in einer vielseitigen Programmiersprache erstellt wurde. Sie ist daher stark im maschinellen Lernen und in der KI. Daher wird Python beim Erstellen von Anwendungen verwendet, die Gesichter und Objekte erkennen und tiefes Lernen durchführen. Auf der anderen Seite, wenn eine Analyse zur Erklärung erforderlich ist, z. B. das Verstehen von Kundenverhaltensmustern, um zu verstehen, warum nicht nur vorhergesagt wird, welcher Kunde stornieren wird usw. Wird genutzt.

Die beiden Programmiersprachen ergänzen sich jedoch. Beispielsweise gibt es ein Tool (reticulate, rPython) zum Ausführen von Python-Code aus R heraus und umgekehrt ein Tool (rpy2) zum Ausführen von R-Code aus Python heraus. Wenn Sie also die beiden Sprachen mischen und anpassen können, ist dies eine noch leistungsstärkere Lösung.


Übersetzung bis hierher

Also habe ich versucht, alles auf einmal zu übersetzen, aber wie war es?

Ich denke, die folgenden Punkte sind besonders bemerkenswert.

Es ist fair (fair), weil es kein Vergleich ist, der nach dem Verkäufer riecht, der das Produkt verkauft, was häufig in Artikeln zu finden ist, die solche Vergleiche anstellen, sondern ein Vergleich aus der Perspektive einer Person, die tatsächlich seit vielen Jahren Datenanalysen vor Ort durchgeführt hat. ), Es ist ein besonders nützlicher Artikel für diejenigen, die sich über die Auswahl dieser Tools nicht sicher sind oder an anderen Tools als den derzeit verwendeten interessiert sind, da sie durch weitere Eingrenzung der Punkte auf leicht verständliche Weise zusammengefasst werden. Ich kann das sagen.

Data Science Boot Camp Training

Last but not least möchte ich mein Geschäft mit diesen hochmodernen Open-Source-Data-Science-Tools oder -Algorithmen wie R und Python noch weiter verbessern, aber ich kann mit der Programmierwand beginnen. Für diejenigen, die es noch nicht getan haben, werden wir nächsten Monat und Juni ** Bootcamp Training ** in Tokio abhalten, damit Sie Data Science ohne Programmierung durchführen können.

Wenn Sie interessiert sind, lesen Sie bitte diese Seite für Details.

By Kan (Twitter)

Recommended Posts

Vergleich von R, Python, SAS, SPSS aus Sicht europäischer Datenwissenschaftler
Python zeigt aus der Perspektive eines C-Sprachprogrammierers
Verstehen Sie den Status des Datenverlusts - Python vs. R.
Existenz aus Sicht von Python
Portiert von der R-Sprache von "Sazae-sans Janken Data Analysis" nach Python
Notizen vom Anfang von Python 1 lernen
Notizen vom Anfang von Python 2 lernen
[Einführung in Data Scientist] Grundlagen von Python ♬
Schreiben Sie den Felderstellungsknoten von SPSS Modeler mit Python neu. Merkmalsextraktion aus Zeitreihensensordaten
Holen Sie sich den Inhalt von Git Diff aus Python
Die Geschichte des Lesens von HSPICE-Daten in Python
Übergang von Baseball aus Daten gesehen
Die Wand beim Ändern des Django-Dienstes von Python 2.7 auf Python 3-Serie
Lerne Nim mit Python (ab Anfang des Jahres).
[Python] Ruft den Gesetzestext aus der e-GOV-Gesetz-API ab
Kaggle-Wettbewerbsprozess unter dem Gesichtspunkt des Punkteübergangs
Studie vom Anfang von Python Hour1: Hallo Welt
Holen Sie sich den Rückkehrcode eines Python-Skripts von bat
Den Inhalt der Daten in Python nicht kennen
Verwenden wir die offenen Daten von "Mamebus" in Python
Studie aus Python Hour8: Verwenden von Paketen
[Grundlagen der Datenwissenschaft] Sammeln von Daten aus RSS mit Python
der Zen von Python
Versuchen Sie, COVID-19 Tokyo-Daten mit Python zu kratzen
Anders als der Importtyp von Python. Bedeutung von aus A Import B.
[Python] Extrahieren Sie Textdaten aus XML-Daten von 10 GB oder mehr.
Die Geschichte eines Rubinisten, der mit Python :: Dict-Daten mit Pycall kämpft
[Homologie] Zählen Sie mit Python die Anzahl der Löcher in den Daten
Die Geschichte des Kopierens von Daten von S3 auf Googles TeamDrive
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und Klassen
Schreiben Sie den Datensatzadditionsknoten von SPSS Modeler mit Python neu.
Vergleich der Datenrahmenbehandlung in Python (Pandas), R, Pig
[Python] Ich habe versucht, Daten mit der API von Wikipedia zu sammeln
Übergeben Sie die OpenCV-Daten der ursprünglichen C ++ - Bibliothek an Python
Auf dem Weg zum Ruhestand von Python2
Über die Funktionen von Python
Die Kraft der Pandas: Python
Empfohlene Bücher und Quellen für die Datenanalyseprogrammierung (Python oder R)
Automatische Erfassung von Genexpressionsdaten durch Python und R.
Studieren von Web Scraping zum Extrahieren von Daten aus Filmarks # 2
So vermeiden Sie doppelte Daten bei der Eingabe von Python in SQLite.
[Python] Ruft das Aktualisierungsdatum eines Nachrichtenartikels aus HTML ab
Schreiben Sie den Sampling-Knoten von SPSS Modeler mit Python (2) neu: Layered Sampling, Cluster Sampling
Bedingte Elementextraktion aus dem Datenrahmen: R ist% in%, Python ist .isin ()
Von der Einführung von JUMAN ++ bis zur morphologischen Analyse von Japanisch mit Python
Wichtige Einheit aus den Python-Vorlesungsmaterialien der Universität Kyoto
[Einführung in Data Scientists] Grundlagen von Python ♬ Bedingte Verzweigung und Schleifen
Liste der Katastrophenfälle der Feuerwehr von Sapporo City [Python]
[Einführung in Data Scientists] Grundlagen von Python ♬ Funktionen und anonyme Funktionen usw.