it-swarm.com.de

R und SPSS Unterschied

Ich werde in Kürze eine große Menge an Daten zum Netzwerkverkehr analysieren und die Daten für die Analyse vorverarbeiten. Ich habe festgestellt, dass R und SPSS zu den beliebtesten Werkzeugen für statistische Analysen gehören. Ich werde auch eine Menge Grafiken und Diagramme erstellen. Daher habe ich mich gefragt, was ist der grundlegende Unterschied zwischen diesen beiden Programmen. 

Ich frage nicht, welche besser ist, sondern wollte nur wissen, was den Unterschied zwischen den beiden Workflows ausmacht (abgesehen davon, dass SPSS über eine GUI verfügt). Ich werde sowieso meistens mit Skripten arbeiten, deshalb wollte ich die anderen Unterschiede kennenlernen.

35
sfactor

Ich arbeite in einem Unternehmen, das SPSS für den Großteil unserer Datenanalyse und aus verschiedenen Gründen verwendet. Ich habe versucht, R für immer mehr eigene Analysen zu verwenden. Einige der größten Unterschiede, auf die ich gestoßen bin, sind:

  1. Ausgabe von Tabellen - SPSS verfügt über Basistabellen, allgemeine Tabellen, benutzerdefinierte Tabellen usw., die alle an diesen intelligenten Daten-Viewer oder wie auch immer er auch ausgegeben wird, ausgegeben werden. Diese können relativ einfach zu Word-Dokumenten oder Excel-Tabellen zur weiteren Analyse/Präsentation transportiert werden. Die äquivalente Funktion in R besteht darin, LaTex zu lernen oder eine odfWeave oder Lyx oder etwas Ähnliches zu verwenden.
  2. Datenbeschriftung -> SPSS leistet mit den Variablen- und Wertelabels einen guten Job. Ich habe keine robuste Lösung für R gefunden, um diese Aufgabe zu erledigen.
  3. Sie erwähnen, dass Sie den Großteil Ihrer Arbeit als Skript schreiben werden, und persönlich finde ich die Skriptsyntax von SPSS absolut abscheulich. Die R-Syntax erscheint viel logischer und folgt den Programmierstandards genauer UND es gibt eine sehr aktive Community, auf die Sie sich verlassen können, wenn Sie in Schwierigkeiten geraten (zum Beispiel SO). Ich habe keine gute SPSS-Community gefunden, um Fragen zu stellen, wenn ich Probleme habe.

Andere haben auf einige der großen Unterschiede in Bezug auf Kosten und Funktionalität der Programme hingewiesen. Wenn Sie mit anderen zusammenarbeiten müssen, sollte deren Komfortstufe mit SPSS oder R eine Rolle spielen, da Sie nicht der einzige in Ihrer Gruppe sein möchten, der ein Skript bearbeiten oder bearbeiten kann, das Sie in der Zukunft geschrieben haben.

Wenn Sie R lernen möchten, bietet dieser Beitrag auf der Statistikbörse Exchange eine Fülle großartiger Ressourcen zum Lernen von R: https://stats.stackexchange.com/questions/138/resources-for-learning-r

33
Chase

Hier ist etwas, was ich vor einiger Zeit auf der R-help-Mailingliste gepostet habe, aber ich denke, dass es einen guten Überblick über den allgemeinen Unterschied zwischen R und SPSS gibt:

Wenn es um Benutzerfreundlichkeit geht. von Computersoftware gefällt mir die Analogie von Autos vs. Bussen: 

Busse sind sehr einfach zu bedienen, Sie brauchen nur Sie müssen wissen, in welchen Bus Sie einsteigen müssen, wo man einsteigt und wo man aussteigt (und Sie müssen Ihren Fahrpreis bezahlen). Autos auf der anderen Seite erfordern viel mehr Um arbeiten zu können, müssen Sie eine Art von .__ haben. Karte oder Wegbeschreibung (auch wenn die Karte in Ihrem Kopf .__ ist), müssen Sie Gas in .__ eingeben. ab und zu müssen Sie wissen die Regeln der Straße (haben einen Typ des Führerscheins). Der große Vorteil von dem auto ist, dass es eine Reihe von Orten, die der Bus nicht Gehen Sie und es ist schneller für einige Reisen das würde die Übertragung zwischen Busse 

Bei Verwendung dieser Analogieprogramme wie SPSS sind Busse, einfach zu bedienen für die Standardsachen, aber sehr frustrierend wenn Sie etwas tun wollen, ist das noch nicht vorprogrammiert 

R ist ein Allrad-SUV (obwohl umweltfreundlich) mit einem Fahrrad auf der Rückseite ein Kajak, gut Lauf- und Laufschuhe in der Pasenger Sitz und Bergsteigen und Spelunking-Ausrüstung im Rücken. 

R kann Sie überallhin mitnehmen Wenn Sie sich Zeit nehmen, um zu lernen, wie die Ausrüstung, aber das wird dauert länger als zu lernen, wo die Bushaltestellen sind in SPSS.

Es gibt GUIs für R, die die Verwendung etwas erleichtern, aber auch die Funktionalität einschränken, die so einfach verwendet werden kann. SPSS verfügt zwar über Skripte, die über das bloße Busen hinausgehen, aber die allgemeine Philosophie von SPSS lenkt die Menschen eher zur GUI als zu den Skripts.

34
Greg Snow

Der anfängliche Arbeitsablauf für SPSS beinhaltet das Recht, einen großen, fetten Check zu schreiben. R ist frei verfügbar.

R hat eine einzige Sprache für "Scripting", aber denken Sie nicht so: R ist wirklich eine Programmiersprache mit umfangreichen Datenmanipulations-, Statistik- und Grafikfunktionen. SPSS verfügt über 'Syntax', 'Scripts' und ist auch skriptfähig in Python. 

Eine weitere große Sache ist, dass SPSS seine Daten in eine Spreadsheety-Tabellenstruktur quetscht. Der Umgang mit anderen Datenstrukturen ist wahrscheinlich sehr schwierig, kommt aber für R. natürlich. Ich weiß nicht, wo ich anfangen soll, Netzwerkgraphtyp-Daten in SPSS zu verarbeiten, aber es gibt ein Paket für R.

Auch mit R können Sie Ihren Workflow mit Sweave in Ihre Berichterstellung integrieren. Sie schreiben ein Dokument mit eingebettetem R-Code-Code, der Diagramme oder Tabellen generiert, die Datei durch das System laufen lassen und den Bericht als PDF-Datei ausgeben. Ideal, wenn Sie einen wöchentlichen Bericht erstellen möchten oder wenn Sie eine ganze Arbeit erledigen und der Chef Ihnen einen aktualisierten Datensatz zur Verfügung stellt. Wiederholen, lesen Sie es durch, es ist fertig. 

Aber du weißt schon, dein Anruf ...

22
Spacedman

Nun, bist du ein anständiger Programmierer? Wenn Sie es sind, lohnt es sich, R. zu lernen. Sie können mehr mit Ihren Daten machen, sowohl was die Manipulation als auch die statistische Modellierung betrifft, als mit SPSS, und Ihre Grafiken werden wahrscheinlich auch besser sein. Auf der anderen Seite, wenn Sie noch nie zuvor wirklich programmiert haben oder die Idee haben, mehrere Monate damit zu verbringen, ein Programmierer zu werden, einschüchternd, werden Sie wahrscheinlich mehr Nutzen aus SPSS ziehen. Das Niveau der Dinge, die Sie mit R erledigen können, ohne in seine Fähigkeiten als vollwertige Programmiersprache eintauchen zu müssen, rechtfertigt wahrscheinlich nicht den Aufwand.

Es gibt noch eine andere Möglichkeit - zusammenarbeiten. Kennen Sie jemanden, mit dem Sie an Ihrem Projekt arbeiten können (Sie sagen nicht, ob es sich um einen akademischen Bereich oder um eine Industrie handelt, aber auf jeden Fall ...), der R gut kennt?

7
Harlan

Es gibt hier einen interessanten (und ziemlich fairen) Vergleich zwischen einer Reihe von Statistikwerkzeugen

http://anyall.org/blog/2009/02/comparison-of-data-analysis-packages-r-matlab-scipy-Excel-sas-spss-stata/

5
Richie Cotton

Ich arbeite mit beiden in einem Unternehmen und kann folgendes sagen: 

  • Wenn Sie ein großes Team von verschiedenen Personen haben (nicht alle Datenwissenschaftler), ist SPSS hilfreich, da es einfach (relativ) zu verstehen ist. Wenn Benutzer beispielsweise ein Modell ausführen, um eine Ausgabe zu erhalten (Umsatzschätzungen usw.), ist SPSS klar und einfach zu verwenden. 

Das heißt, ich finde R in fast allen anderen Bereichen besser:

  • R ist schneller (obwohl manchmal fraglich)
  • Wie bereits erwähnt, ist die Syntax in SPSS schrecklich (ich kann das nicht genug betonen). Auf der anderen Seite kann R schmerzhaft sein, um zu lernen, aber es gibt Tonnen von Ressourcen online und am Ende zahlt es sich aufgrund der verschiedenen Möglichkeiten, die Sie tun können, viel mehr aus. 
  • Wie alle anderen sagen, ist der Himmel mit R eine Menge von Paketen, Ressourcen und noch wichtiger: Unabhängigkeit, die Sie nach Belieben machen können. In meiner Organisation haben wir einige Funktionen auf sehr hohem Niveau, die viel erreichen. Der schwierige Teil besteht darin, sie einmal zu erstellen, aber dann führen sie komplizierte Aufgaben aus, die SPSS in einem nicht enden wollenden Netz aus Leinwand bearbeiten würde. Dies gilt insbesondere für Dinge wie Schleifen. 

Es wird oft übersehen, aber R bietet auch zahlreiche Funktionen für die Zusammenarbeit zwischen Teams (Integration von Github mit RStudio und einfaches Erstellen von Paketen mit devtools). 

Wenn alle Personen in Ihrer Organisation R kennen, müssen Sie lediglich ein Basispaket auf github verwalten, um alles gemeinsam zu nutzen. Dies ist natürlich nicht die Norm, weshalb SPSS, obwohl es das schlechteste Produkt ist, immer noch einen Markt hat. 

3
eflores89

Ich habe keine Daten dafür, aber aus meiner Erfahrung kann ich Ihnen eines sagen:

SPSS ist viel langsamer als R. (Und mit vielem meine ich wirklich viel)

Die Größe der Differenz ist wahrscheinlich so groß wie die zwischen C++ und R

Zum Beispiel muss ich in R. nie länger als ein paar Sekunden warten. Mit SPSS und ähnlichen Daten hatte ich Berechnungen, die länger als 10 Minuten dauerten.

Als nicht zusammenhängende Randnotiz: In meinen Augen wurde dieser Punkt in der jüngsten Diskussion über die Geschwindigkeit von R irgendwie übersehen (d. H. Der Vergleich mit SPSS). Außerdem bin ich erstaunt, wie diese Diskussion für eine Weile aufkam und lautlos wieder verschwand.

3
Henrik

SPSS bietet eine grafische Benutzeroberfläche, um vorhandene R-Programme einfach zu integrieren oder neue zu entwickeln. Weitere Informationen finden Sie in der SPSS-Community in IBM Developer Works.

2
BI_Nerd

Es gibt einige großartige Antworten, aber ich werde versuchen, meine 2 Cents anzugeben. Meine Abteilung ist für unsere Arbeit vollständig auf SPSS angewiesen, aber in den letzten Monaten habe ich mich bewusst bemüht, R zu lernen; teilweise aus einigen der oben genannten Gründe (Geschwindigkeit, umfangreiche Datenstrukturen, verfügbare Pakete usw.)

Das sind einige Dinge, die ich auf dem Weg gefunden habe:

  1. Wenn Sie nicht über etwas Erfahrung mit der Programmierung verfügen, wird das Erstellen von Übersichtstabellen in CTABLES wahrscheinlich alle verfügbaren Optionen in R zerstören. Bislang sind mir keine Pakete bekannt, die replizieren können, was mit benutzerdefinierten Tabellen erstellt werden kann.

  2. SPSS scheint beim Scripting langsamer zu sein, und die SPSS-Syntax ist schrecklich. Ich habe jedoch festgestellt, dass Skripte in SPSS immer verbessert werden können, aber den Befehl EXECUTE nur sparsam verwenden.

  3. SPSS und R können miteinander kommunizieren, obwohl es so scheint, als sei es eine (nur wenn R innerhalb von SPSS verwendet wird, nicht umgekehrt). Ich habe jedoch festgestellt, dass dies von wenig Nutzen ist, außer wenn ich ggplot2 oder andere fortgeschrittene Datenverwaltungstechniken verwenden möchte. (Ich verachte SPSS-Makros).

  4. Ich habe seit langem das Gefühl, dass die in SPSS geschaffene "Berichterstellungsarbeit" anderen Lösungen weit unterlegen ist. Wie bereits erwähnt, sind Sie mit LaTex und Sweave sehr zufrieden mit Ihren effizienten Workflows. 

  5. Ich konnte einige fortgeschrittene Analysen durchführen, indem ich OMS in SPSS einsetzte. Fast alles kann an ein neues Dataset weitergeleitet werden, aber ich habe festgestellt, dass die meisten SPSS-Benutzer diese Funktionalität nicht verwenden. Wenn Sie sich Beispiele in R ansehen, fühlt es sich einfach "einfacher" an als die Verwendung von OMS.

Kurz gesagt, ich benutze SPSS, wenn ich es in R nicht schnell herausfinden kann, aber ich habe auf jeden Fall die Absicht, von SPSS wegzukommen und R in der nahen Zukunft ganz zu nutzen.

2
Btibert3

@Henrik, ich habe dieselbe Aufgabe ( C++ und R ) für SPSS ausgeführt. Und es stellte sich heraus, dass SPSS in diesem Fall schneller ist als R. In meinem Fall ist SPSS ungefähr. 7 mal schneller. Ich bin darüber überrascht.

Hier ist ein Code, den ich in SPSS verwendet habe.

data list free
 /x (f8.3).
begin data
1
end data.

comp n = 1e6.

comp t1 = $time.

loop #rep = 1 to 10.
comp x = 1.
loop #i=1 to n.
comp x = 1/(1+x).
end loop.
end loop.

comp t2 = $time.

comp elipsed = t2 - t1.

form elipsed (f8.2).

exe.
1
djhurio

Schauen Sie sich dieses Video an, warum es gut ist, SPSS und R ...

Verknüpfung

http://bluemixanalytics.wordpress.com/2014/08/29/7-good-reasons-to-combine-ibm-spss-analytics-und-r/

Wenn Sie eine kompatible Kopie von R installiert haben, können Sie von IBM SPSS Modeler aus eine Verbindung herstellen und mithilfe von benutzerdefinierten R-Algorithmen, die in IBM SPSS Modeler implementiert werden können, Modellbildung und Modellbewertung durchführen. Sie müssen außerdem eine Kopie von IBM SPSS Modeler - Essentials for R installiert haben. IBM SPSS Modeler - Essentials for R bietet Ihnen Tools, mit denen Sie benutzerdefinierte R-Anwendungen für die Verwendung mit IBM SPSS Modeler entwickeln können.

0
aruizga