Utilizo los tres programas.
Python puede hacer todo lo que R puede hacer y R puede hacer todo lo que hace Python, pero debo decir que R es superior a Python cuando se trata de los paquetes. Por esa razón, para la mayoría de los análisis econométricos, suelo recurrir a R. También encuentro más fácil producir gráficos estándar de estadísticas agradables con R (pero para mapas prefiero Python).
Sin embargo, Python es mucho mejor para el web scraping, el análisis numérico y el análisis de texto de sentimientos (aunque R también tiene algunos buenos paquetes para eso). Además, prefiero usar Python cuando necesito configurar mi propio programa, ya que programar en Python es más natural (si eso tiene algún sentido) que en R, a menos que el programa se pueda construir fácilmente a partir de funciones listas de varios paquetes.
Siempre recomiendo a las personas a mi alrededor que aprendan tanto Python como R: la diferencia entre ellos no es tan grande y con R realmente no necesitas invertir mucho en habilidades de programación, solo lo básico y luego usar paquetes.
Además, los cuadernos Jupyter que pueden acomodar tanto R como Python hacen que usar ambos sea más fácil.
En cuanto a Stata, solo lo uso con fines educativos (enseño tutoriales econométricos en la universidad). Para ser honesto, no me gusta Stata por varias razones:
-
Stata no es un software gratuito y no creo que el precio esté justificado dado que es un producto inferior en comparación con programas gratuitos como R y Python. Aunque es posible obtenerlo de forma gratuita en la universidad, probablemente no te importe, pero sigue siendo algo a tener en cuenta.
-
Stata es un programa, no un lenguaje, por lo que si deseas crear una nueva función compleja, debes obtener y aprender Mata por separado (el lenguaje de programación de Stata).
-
Stata tiene serias limitaciones en los tamaños de matrices, incluso en la edición más cara el tamaño máximo de matriz es de 11000, lo cual es un límite serio cuando trabajas con datos de panel y debes ejecutar algún modelo iterativo con un gran número de variables. Te verás obligado a menudo a ejecutar, por ejemplo, pruebas de heterocedasticidad en paneles con submuestras aleatorias, incluso con la edición más cara.
-
Crear gráficos bonitos en Stata es casi imposible: no me malinterpretes, puedes hacer algunos gráficos decentes en Stata, pero palidece en comparación con lo que puedes hacer con Python o R.
-
Stata es torpe con el análisis de series temporales. Si buscas un programa fácil de usar para el análisis de series temporales, sería EViews. Por ejemplo, Stata no puede manejar si tienes trimestres expresados en formato de fecha, pensará que tienes lagunas en tu serie temporal y no te permitirá ejecutar comandos básicos de series temporales hasta que crees una nueva variable de series temporales. Además, la oferta de modelos de series temporales es bastante limitada y programar los tuyos propios es doloroso.
-
Aunque técnicamente es posible hacer web scraping o análisis numérico en Stata, es un infierno; si necesitas eso para tu trabajo, no lo uses.
Sin embargo, Stata también tiene algunas ventajas:
-
Es más fácil de usar que R o Python, e incluso se puede utilizar sin programar a través de su interfaz (por eso lo usamos para tutoriales para estudiantes como el primer programa que ven para que no se sientan abrumados).
-
Hacer algunos ajustes a los conjuntos de datos, crear variables ficticias, etc., es más fácil en comparación con Python o R, pero eso es principalmente porque en Python y R puedes tener varios tipos de datos, listas, data frames, etc.
-
Con la compra de Stata, obtienes acceso a los foros de Stata, algo así como stack exchange pero donde realmente pagan a profesionales para darte respuestas y a menudo, además de soporte, puedes recibir muy buenos consejos incluso sobre econometría, y generalmente recibirás consejos rápidamente.
Personalmente, no usaría Stata para mi trabajo científico. Python y R son superiores en cada aspecto a Stata, pero es un buen programa inicial para estudiantes.