Welche Programmiersprache für statistische Inferenz?


8

nur aus Neugier ... Welche Sprache wird hier am häufigsten verwendet? R? MATLAB? Python? Java?

Was für Prototypen oder für die Produktion? Zum Beispiel denke ich, dass MATLAB hauptsächlich für das Prototyping verwendet wird, Python für beide Prot. und Produktion ...



2
Wiki gemacht, da dies völlig subjektiv ist.
Shane

Antworten:


7

Ich könnte einer Abstimmung für R. R nicht mehr zustimmen. R ist die "Lingua Franca" der Statistikwelt. Es ist die Definition von Schneide, während die meisten Pakete für MATLAB und SAS mehrere Monate dauern. Die Sprache ist im Gegensatz zu SAS sehr einfach zu verstehen. Es gibt Ihnen auch die Möglichkeit, eine Verbindung mit C / C ++ / Python und Datenbanken herzustellen.

Betrachten Sie die Revolution Analytics-Version von R für etwas mehr Leistung.

http://www.revolutionanalytics.com/products/revolution-r.php


2
Ich muss sagen, ich muss nicht zustimmen, dass R einfacher zu lernen ist als SAS. Es mag sein, dass ich zuerst SAS und SPSS gelernt habe, aber ich denke, SAS, SPSS (jetzt PASW) und Stata sind alle leichter zu erlernen als R. Es ist jedoch ein subjektives Argument.
Andy W

Ich habe das Gefühl, dass R dem Benutzer so viel mehr Funktionalität bietet. Es geht über das hinaus, was SAS / SPSS kann.
Pslice

3
Ich bin damit nicht einverstanden, aber das macht es nicht einfacher zu verstehen. Ich denke, es ist ziemlich transparent, mit welchen Objekten ich in SAS, SPSS oder Stata arbeite, und das Format / die Art dieser Objekte, aber es ist in R nicht so transparent. Obwohl R vielleicht innovativer ist, habe ich selten ein Bedarf an modernsten statistischen Techniken in meiner täglichen Arbeit.
Andy W

Es ist schwer vorstellbar, dass Closed-Source-Systeme transparent sind. Selbst wenn Sie nur alte statistische Methoden verwendet haben, ist R ein effizienteres System für deren Verwendung und bildet eine vollständige reproduzierbare Forschungs-Toolbox.
Frank Harrell

8

Nun, Sie können für MATLAB ZAHLEN und dann entweder (1) das Material programmieren, das Sie wirklich benötigen, oder (2) MEHR für MATLAB-Toolboxen ZAHLEN. Und entdecken Sie, dass das Erstellen nützlicher Statistiken in MATLAB ein nachträglicher Gedanke war, der in der zunehmend weniger nützlichen Statistik-Toolbox behandelt wurde. Oder ... Sie können R KOSTENLOS herunterladen und nach den benötigten Paketen suchen (und diese finden!), Die Sie auch KOSTENLOS herunterladen können.

In R können viele kleine Produktionsaufgaben erledigt werden. Wenn Sie etwas wirklich Großes tun (denken Sie an die US-Volkszählung), müssen Sie wahrscheinlich SAS lernen - und Ihren Arbeitgeber dazu bringen, dafür zu bezahlen.


7

"Popularität" hängt von der Community und der Definition von "Statistik" ab. Weltweit, einen umfassenden Überblick über „statistische Inferenz“ taking als einschließlich aller Methoden der Schlüsse zu ziehen oder Ergreifen von Maßnahmen auf der Grundlage quantitativer Daten, gibt es wenig Zweifel , dass Excel schlägt alle anderen Anwendungen, einschließlich R, SAS, Stata, SPSS und S -Plus . (Die Links verweisen auf verschiedene Arten von Statistiken, sind aber, gelinde gesagt, sehr suggestiv.) Python und MATLAB sind nicht einmal Fehler in der Statistik. Ich sage nicht, dass dies eine gute Sache ist oder dass wir es mögen sollten: So ist es eben und so wird es sehr lange bleiben.

Wir sollten keine Rückschlüsse auf das ziehen, was "hier" in diesem Forum als beliebt erscheint. Kommerzielle Softwareanbieter unterstützen ihre eigenen Foren, daher wird ein Ort wie SE natürlich Menschen bevorzugen, die weniger aktiv unterstützte Software verwenden, insbesondere kostenlose, Open-Source- und akademische Lösungen.


6

Anhand der beliebtesten Tags sollte klar sein, dass R die beliebteste Sprache auf dieser Website ist. Ob dies die beliebteste Sprache für statistische Analysen ist, lässt sich nicht direkt ableiten, aber man könnte dies auch annehmen.


4

R und SAS haben jeweils ihre Vor- und Nachteile. Ich denke, mehr Statistiker müssen sich der Tatsache bewusst sein, dass viele großartige statistische Software verfügbar sind, anstatt sich endlos darüber zu streiten, welche überlegen ist.

R ist frei. SAS ist sehr teuer. R gibt Ihnen die Möglichkeit, fast alles zu tun. SAS kann oder kann nicht. R hat erstaunliche grafische Fähigkeiten. Wenn Sie SAS-Grafiken sehen, fühlt es sich wieder wie 1985 an. SAS bietet eine hervorragende Kundenbetreuung. R support = Stunden des Durchsuchens von Mailinglistenarchiven. Auch mit einem Namen wie "R" sind Suchmaschinenergebnisse oft schlecht. R ist extrem langsam und kann mit großen Datenmengen nicht gut umgehen. SAS funktioniert gut mit großen Datenmengen. SAS ist tendenziell robuster. Nach meiner Erfahrung ist SAS überlegen, wenn es um die Modellierung gemischter Effekte oder um die Gestaltung von Experimenten (z. B. die Analyse von Crossover-Designs) geht.

Für groß angelegte Brute-Force-Simulationen verwende ich Fortran. Früher habe ich C verwendet, aber Fortran ist viel einfacher zu verwenden. Ich habe MATLAB noch nie benutzt. Wenn ich die statistische Leistung von R, aber die Geschwindigkeit von Fortran benötige, schreibe ich die zeitintensiven Operationen (dh Schleifen) in Fortran und rufe das Unterprogramm von R auf.


3
Nun, R-Unterstützung sind Orte wie hier, die oft effektiver sind als eine bezahlte Unterstützung. Für Googeln gibt es rseek.org, funktioniert sehr gut. 99% der R-is-slow-Fälle können mit einigem Nachdenken gelöst werden. Es gibt auch Pakete für den Umgang mit riesigen Datenmengen (auch in SAS ist dies nicht einfach). R ist eine Programmiersprache, SAS ist ein erweitertes SQL.

2
1 , weil diese Antwort ist nützlich, aber ich denke , Ihre Punkte um R Unterstützung, Geschwindigkeit und die Fähigkeit , große Daten veralten zu handhaben oder so ziemlich schnell zu.
Matt Parker

2
Ich werde den Kommentar von @Matt und @ mbq zur R-Leistung unterstützen, aber ich möchte hinzufügen, dass R eigentlich für (N) LMEs ziemlich gut ist. Ich kann mich an einen Vortrag von Doug Bates auf der DSC 2009-Konferenz erinnern , in dem er zeigte, wie das lme4Paket leicht mit vielen zufälligen Effekten umgehen kann (wie z. B. bei der Beurteilung von Bildungseinrichtungen). Meine eigene (aber begrenzte) Erfahrung (SAS NLMIXED vs. R lme4) bestätigt diesen Punkt: R ist bei der Anwendung komplexer IRT- Modelle keineswegs langsamer als SAS und verarbeitet auch große Datenmengen (dank der cleveren C-Implementierung). .
Chl

1

Ich bevorzuge Python und vielleicht Java. Erstens sind sie echte Programmiersprachen. Zweitens sind sie die beliebtesten Sprachen (TIOBE Index). Sie können zwischen diesen Sprachen auch mit mehreren Skriptsprachen konvertieren. In der Vergangenheit habe ich die DMelt-Plattform http://jwork.org/dmelt/ verwendet , um statistische Berechnungen durchzuführen, und ich war sehr beeindruckt von den Grafiken in 2D und 3D, die für professionelle Papiere leicht zu erreichen sind. Das R-Paket hat mich mit der Grafik nicht beeindruckt.


2
Dies geht nicht auf die Frage der beliebtesten Sprache für statistische Inferenz ein. Es geht hauptsächlich um Ihre persönlichen Vorlieben mit einer Erwähnung der gängigen Programmiersprachen.
Nick Cox
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.