2010-06-17 8 views
7

Ich werde einen Master-Studenten einen Ökonometriekurs im Herbst unterrichten. Ich denke, es ist wichtig für sie, das Programmieren mit Daten als eine wesentliche Fähigkeit der angewandten Forschung zu erlernen. Welche Vorschläge haben Sie für die Programmiersprache? Ich lehne mich hauptsächlich zu R. Was andere sollten ich berücksichtigen?Beste Programmiersprache für den Unterricht Ökonometrie?

+1

R ist die De-facto-Standardsprache für statistische Modellierung, gehen Sie damit. Ziehen Sie MATLAB in Betracht, wenn Ihre Studenten sich auch mit nicht-wirtschaftsbezogenen Programmen beschäftigen. – davidosomething

+2

Fokus auf R. Ein Paket, das sie kaufen müssen (SAS, SPSS, etc) bedeutet, dass sie viel Geld bezahlen müssen, um mit ihren Fähigkeiten produktiv zu sein. Das ist eine Schuld, die ich nicht auf Studenten anwenden möchte. –

+8

Sie haben es mit R markiert, so dass Sie eine Community von R-Benutzern erhalten, die es beantworten. Ist es eine Überraschung, dass R dann die Antwort ist? Vielleicht versuch es auch mit "Programmierung" zu versehen, um mehr unterschiedliche Meinungen zu bekommen. – Shane

Antwort

14

R ist eine sehr gute Wahl. Tue es.

Die Anzahl der Ressourcen im Internet steigt ständig. Eine schöne Reihe von Dias ist die UCLA Stat Consulting Center zur Verfügung gestellt.

Und wie Sie in Ökonometrie sind, stellen Sie sicher, Sie Grant Farnworth Econometrics with R auf CRAN betrachten; das Applied Econometrics with R Buch von Zeileis und Kleiber ist auch sehr gut.

+0

Ich weiß eigentlich Grant. Das ist ein guter Ort für die Studenten zu beginnen. Ich habe sogar eine Aufgabe für die Schüler erwogen, einen Bereich zu wählen, in dem sie erweitert werden kann (Grant willig). Ich werde Zeileis und Kleiber überprüfen. Vielen Dank. – TJB

+2

+1 Für Farnsworth, und vor allem für die Zeileis und Kleiber Buch. Ich empfehle es als Einführung. – Shane

+0

Ein großartiger "R-Begleiter" zu Wooldridges Introductory Econometrics großes Lehrbuch ist "Using R for Introductory Econometrics" von Heiss, auch online verfügbar: http://urfie.net/ – Helix123

1

Da Sie an R interessiert sind, können Sie auch einen Blick auf Incanter werfen. Da es mit Clojure - einem Lisp-Dialekt für die JVM - erstellt wurde, können Sie die große Auswahl an vorhandenen Java-Bibliotheken nutzen.

+4

Ah, also, um eine multiple Regression zu betreiben, denken Sie, dass sie auch Java und Lisp lernen müssen? Du hast es nie gelehrt, oder? ;-) –

+1

@Dirk: korrekt, obwohl ich sagen würde, dass Java und Lisp nicht der Hauptfokus sein müssten, da Incanter als eigenständige Umgebung ausgeführt werden kann. Das Lernen von R bedeutet das Erlernen einer Syntax und einer Umgebung. Das "Sicherheitsnetz" von hilfreichen Ressourcen rund um Java und Lisp ist umfangreicher als alles, was R hat. Lisp Syntax ist auch ziemlich klein, so könnte es die Barriere für den Einstieg ein wenig senken. – rcampbell

+0

@Dirk: Ich stimme nicht mit Ihrem Punkt überein, aber das sagte: Sie brauchen nicht wirklich Java zu wissen, um mit Incanter zu programmieren; nur Lisp. Ich denke immer noch, dass Clojure schwieriger zu bearbeiten ist als R (ganz zu schweigen davon, dass R für die Ökonometrie in diesem Stadium besser ist), aber es ist wahrscheinlich keine so große Lücke, was die Lernkurve angeht. – Shane

2

Ich ziehe R aber andere freie Optionen wäre zu berücksichtigen:
eine Kombination aus Oktave mit gnuplot (Octave ist eine kostenlose Matlab Implementierung)
Python mit numpy, scipy und matplotlib

+0

@user: Ich liebe Python.Ich wünschte, Python hätte den Impuls für Statistik/Ökonometrie, den R hat. Aber es scheint momentan ein Gleichgewicht um R zu geben. Was denkst du über Python vs. R? – TJB

+0

Nun, ich bin nicht wirklich ein Python-Typ. Ich kenne Perl gut und habe deswegen nicht das Bedürfnis verspürt, in Python einzutauchen. Ein unterschätztes Merkmal von R, das es für Statistiken/mathematische Anwendungen interessant macht, ist, dass alle Typen tatsächlich Vektoren dieser Typen sind und alle Operationen standardmäßig auf Vektoren wirken. – frankc

2

ich überrascht bin kein -eine andere hat Excel erwähnt. Wie Brian Ripley once said (siehe 7 schieben):

Lasst uns uns nichts vor: die weit verbreitete Stück Software für Statistiken ist Excel.

In der Tat ist Excel ein ausgezeichnetes Werkzeug zum Addieren von Zahlenspalten. Wenn Sie jedoch sagen, dass die Analyse, die Sie durchführen, komplizierter ist, sollten Sie unbedingt eine geeignete Programmiersprache verwenden.

Von den drei offensichtlichen Datenbearbeitungssprachen (R, MATLAB und Python) verfügt R über die besten Werkzeuge zur Datenmanipulation. Einen detaillierteren Vergleich finden Sie unter this other SO question.


EDIT: Darauf rereading, klinge ich eine eher pro-Excel. Ich möchte meine Antwort erweitern, um meinen Ruf zu retten.

Excel verursacht mir viel mehr Probleme als Vorteile. Seine weit verbreitete Verwendung in meiner Organisation ist meist schädlich. Es ist sehr schwer nachvollziehbar, woher die Daten kommen und wie Ihre Berechnungen funktionieren. Das Debuggen von Excel-Modellen ist nahezu unmöglich. Es fördert lokale Datenspeicher statt zentraler Datenbanken. Es funktioniert nicht mit Diff-Tools und es macht die Reproduzierbarkeit Ihrer Wissenschaft schwierig. Von einem semantischen Standpunkt trennt es nicht Daten und was-ist-getan-zu-den-Daten. Die Vorstellung, dass alle Ihre Variablen einen Standort benötigen, lenkt vom Verständnis ab. Die Plotfunktionen sind lächerlich schrecklich.

Alles, was gesagt, ist Excel für ein paar speziellen Dinge nützlich:

  1. Als CSV-Viewer. Sicher, R hat die View Funktion, aber es ist nicht so schön.

  2. Wirklich einfache Erkundung von Daten. Sortieren, filtern, Spalten aufaddieren.Ich finde, dass diese mit einer Point-and-Click-Oberfläche etwas schneller erledigt werden können als mit Code. Natürlich müssen Sie später Code für die Reproduzierbarkeit schreiben, aber in der Anfangsphase ist Excel ziemlich nett dafür.

  3. Die Diagramme sind unverwechselbar und leicht zu erkennen. Wenn Sie sehen, dass jemand eine Präsentation mit einem in Excel gezeichneten Diagramm vorstellt, wissen Sie, dass Sie den Ergebnissen nicht vertrauen können.

Das ist es. Für alles andere ist es ein Durcheinander.

+1

Sie müssen Witze machen. Haben Sie [Spreadsheet Addiction] (http://www.burns-stat.com/pages/Tutor/spreadsheet_addiction.html) von Pat Burns gelesen? –

+0

Ich halte Excel nicht für eine Programmiersprache, auch nicht mit VBA. Meiner Meinung nach verschleiert es die Datenanalyse eher als erleuchtet. Danke für den Link zu der anderen Diskussion. – TJB

+0

Wow, wirklich überrascht, ich bin damit nicht in Vergessenheit geraten. Und ja, ich machte eine Art Scherze. Excel ist in vieler Hinsicht schrecklich. Es lohnt sich jedoch zu wissen, wie man es benutzt, wenn andere Leute Ihnen Daten in einer XLS-Datei geben. –

0

R Sprache ist die beste Option für das Lernen und Lehren des ökonometrischen Kurses. Gretl ist auch eine andere nützliche GUI-Software.

4

Python - speziell die numpy, Pandas und matplotlib Module die ipython Notebook als IDE.

Ich werde auf alle anderen Kommentare nicken, die R vorschlagen. Es ist unbestreitbar, dass R eine viel größere Auswahl an Paketen zur Auswahl hat. Aber ich denke, es ist Unsinn zu versuchen, R-Syntax als erste Programmiersprache zu lehren. Anfänger werden es einfach nicht bekommen und sie werden ausgeschaltet. Die R-Syntax ist besonders kontraintuitiv.

Aus meiner eigenen Erfahrung, mit nur einem kleinen Python konnte ich bekommen, was Funktionen, Klassen und Objekte waren, und erst danach machte R Sinn für mich. Außerdem finde ich, dass das ipython-Notebook unübertroffen ist, wenn es darum geht, die Codierung zu vereinfachen und Ergebnisse zu bewerten. Es hat die Notwendigkeit beseitigt, die Augen vom Quell-Editor-Fenster zum Shell-Fenster und zurück zu bewegen, wie es in jeder anderen IDE der Fall wäre.

Verwandte Themen