2010-06-17 14 views
7

Enseñaré un curso de econometría para dominar a los estudiantes en el otoño. Creo que es importante que aprendan programación con datos como una habilidad esencial de investigación aplicada. ¿Qué sugerencias tienes para el lenguaje de programación? Me inclino principalmente hacia R. ¿Qué otros debería considerar?¿El mejor lenguaje de programación para la enseñanza de econometría?

+1

R es el lenguaje estándar de facto para el modelado estadístico, vaya con él. Considere MATLAB si sus estudiantes también participarán en programas no relacionados con la economía. – davidosomething

+2

Focus on R. Un paquete que tienen que comprar (SAS, SPSS, etc.) significa que tendrán que pagar mucho dinero para ser productivos con sus habilidades. Esa es una responsabilidad que no me gustaría poner en los estudiantes. –

+8

Lo etiquetó R, por lo que naturalmente obtendrá una comunidad de usuarios R respondiéndolo. ¿Sorprende que R sea la respuesta? Tal vez intente etiquetarlo como "programación" para obtener opiniones más diversas. – Shane

Respuesta

14

R es una muy buena opción. Ve a por ello.

La cantidad de recursos en la web sigue aumentando. Un buen conjunto de diapositivas se proporciona el UCLA Stat Consulting Center.

Y como usted está en Econometrics, asegúrese de mirar Econometrics with R de Grant Farnworth en CRAN; el libro Applied Econometrics with R de Zeileis y Kleiber también es muy bueno.

+0

De hecho, sé Grant. Ese es un buen lugar para que comiencen los estudiantes. Incluso he considerado una tarea para que los estudiantes elijan un área para expandirla (si hay disponibilidad de donaciones). Veré a Zeileis y Kleiber. Gracias. – TJB

+2

+1 Para Farnsworth, y especialmente para el libro de Zeileis y Kleiber. Lo recomiendo encarecidamente como introducción. – Shane

+0

Un gran "compañero R" para el gran libro de texto introductorio de Econometría de Wooldridge es "Uso de R para econometría introductoria" por Heiss, también disponible en línea: http://urfie.net/ – Helix123

1

Dado que está interesado en R, también puede consultar Incanter. Dado que está construido con Clojure, un dialecto Lisp para JVM, podrá aprovechar la gran variedad de bibliotecas Java existentes.

+4

Ah, ¿para poder ejecutar una regresión múltiple, también crees que necesitan aprender Java y Lisp? Usted nunca ha enseñado, ¿verdad? ;-) –

+1

@Dirk: correcto, aunque diría que Java y Lisp no tendrían que ser el foco principal ya que Incanter puede funcionar como un entorno independiente. Aprender R significa aprender una sintaxis y un entorno también. La "red de seguridad" de recursos útiles alrededor de Java y Lisp es más extensa que cualquier cosa que R tenga. La sintaxis de Lisp también es bastante pequeña, por lo que podría reducir un poco la barrera de entrada. – rcampbell

+0

@Dirk: No estoy en desacuerdo con su punto, pero dicho eso: realmente no necesita saber Java para programar con Incanter; solo Lisp. Todavía creo que es más difícil trabajar con Clojure que con R (sin mencionar que R es mejor para la econometría en esta etapa), pero probablemente no sea una brecha tan grande en lo que se refiere a la curva de aprendizaje. – Shane

2

prefiero R pero otras opciones gratuitas a considerar serían:
una combinación de octava con gnuplot (Octave es una implementación libre de Matlab)
pitón con numpy, scipy y matplotlib

+0

@user: Me encanta Python.Ojalá Python tuviera el ímpetu detrás de estadísticas/econometría que tiene R. Pero parece que hay un equilibrio alrededor de R por el momento. ¿Cuáles son sus pensamientos sobre Python vs. R? – TJB

+0

Bueno, no soy realmente un tipo pitón. Conozco bien a Perl y por lo tanto no he sentido la necesidad de sumergirme en Python por eso. Una característica subestimada de R que lo hace agradable para las aplicaciones de tipo estadísticas/matemáticas es que todos los tipos son realmente vectores de esos tipos y todas las operaciones actúan sobre vectores de manera predeterminada. – frankc

2

Me sorprende que nadie -Uno más ha mencionado Excel. Como Brian Ripley once said (ver deslizarse 7):

No nos engañemos: el más pieza ampliamente utilizado de software para estadísticas es Excel.

De hecho, Excel es una herramienta excelente para sumar columnas de números. Habiendo dicho eso, si el análisis que estás haciendo es más complicado que eso, definitivamente deberías usar un lenguaje de programación apropiado.

De los tres lenguajes obvios de manipulación de datos (R, MATLAB y Python), R tiene las mejores herramientas de manipulación de datos. Ver this other SO question para una comparación más detallada.


EDIT: Al volver a leer esto, me suena más bien un pro-Excel. Me gustaría expandir mi respuesta para salvar mi reputación.

Excel me causa muchos más problemas que beneficios. Su uso generalizado en mi organización es principalmente perjudicial. Hace que sea muy difícil rastrear de dónde provienen los datos y cómo funcionan sus cálculos. La depuración de modelos de Excel es casi imposible. Alienta tiendas de datos locales en lugar de bases de datos centrales. No funciona con herramientas diff y hace que la reproducibilidad de tu ciencia sea difícil. Desde un punto de vista semántico, no separa los datos y lo que se hace con los datos. La idea de que todas sus variables necesitan una ubicación distrae la comprensión. Las capacidades de trazado son ridículamente horribles.

Dicho todo esto, Excel es útil para algunas cosas específicas:

  1. Como espectador CSV. Claro, R tiene la función View, pero no es tan bonita.

  2. Exploración de datos realmente simple. Clasificándolo, filtrándolo, sumando columnas.Encuentro que esto se puede hacer un poco más rápido con una interfaz de apuntar y hacer clic que con un código. Por supuesto, tendrás que escribir el código más tarde para la reproducibilidad, pero en las etapas iniciales, Excel es bastante bueno para esto.

  3. Los gráficos son distintivos y fáciles de detectar. Si ve a alguien hacer una presentación con un gráfico dibujado en Excel, sabe que no debe confiar en los resultados.

Eso es todo. Para cualquier otra cosa, es un desastre.

+1

Debe estar bromeando. ¿Has leído [Adicción a hoja de cálculo] (http://www.burns-stat.com/pages/Tutor/spreadsheet_addiction.html) por Pat Burns? –

+0

No considero que Excel sea un lenguaje de programación, incluso con VBA. En mi opinión, oscurece en vez de iluminar el análisis de datos. Gracias por el enlace a la otra discusión. – TJB

+0

Guau, realmente sorprendido de que no baje, voté en el olvido con esto. Y sí, estaba bromeando. Excel es horrible en la mayoría de los aspectos. Sin embargo, vale la pena saber cómo usarlo para las ocasiones en que otras personas le brinden datos en un archivo XLS. –

0

R El idioma es la mejor opción para aprender y enseñar el curso econométrico. Gretl es otro software GUI útil.

4

Python - específicamente la numpy, pandas y matplotlib módulos utilizando el cuaderno ipython como un IDE.

asentiré a todos los demás comentarios que sugieran R. Es innegable que R tiene una gran variedad de paquetes para elegir. Pero creo que no tiene sentido intentar enseñar la sintaxis R como el primer lenguaje de programación. Los principiantes simplemente no lo obtendrán y se apagarán. La sintaxis R es notablemente contraintuitiva.

Desde mi propia experiencia, con solo una pizca de Python, pude obtener las funciones, clases y objetos, y solo después de eso R tuvo sentido para mí. Además, considero que el cuaderno ipython no tiene igual a la hora de facilitar la codificación y evaluación de resultados. Se abolió la necesidad de seguir moviendo los ojos de la ventana del editor de la fuente a la ventana del shell y viceversa, como se haría en cualquier otro IDE.

Cuestiones relacionadas