I recently asked a professor if he was planning on hiring a research assistant for next semester. I thought I'd be a pretty good candidate since I have decent experience using STATA, SAS, SPSS, R Studio and Mathematica, but he started asking me about a couple programs I had never heard of before. That led me to wonder what are the most commonly used programs for Economics. A friend of mine suggested I also look into Matlab and Python.
There's three important dimensions for programs/languages:
- Convention: Having a program that everyone uses helps you to get feedback/help, work with coauthors, use other people's codes
- Ease of use: Since many uses in economics are routines, having the program doing these for you and making your implementation of the use easier is a big bonus
- Adaptability: A program that allows you doing covering most of your needs and learning only one syntax versus having to work with different programs at the same time
In terms of frequency of usage among academic economists, here's my ranking:
- For econometrics, by far, STATA. Mostly because of convention and ease of use.
- For dynamic programming, and to some extent monte carlo, by far, Matlab. Mostly because of convention and ease of use
- For time series econometrics, Eviews (ease of use)
- For all kinds of econometrics, R (adaptability, somewhat convention)
- The swiss knife of really anything, Python (adaptability)
- SAS, for huge data sets
- Fortran, for efficient prebuilt routines and large scale computation
This list is of course my personal opinion, and for academic economists only. I believe that no one will dispute the top tier, but the second tier/specialists can be somewhat debated. And then there's some more who are even more specialist (for example, Octave as a open source Matlab alternative)
In the ReplicationWiki (that I work on) we have a list of software packages that were used in more than 2000 empirical studies, mainly in the American Economic Review, American Economic Journals and Journal of Political Economy in the years 2000-2013. Stata was used by far most often (>900 times), followed by MATLAB (280), SAS (60), GAUSS (60), Excel (50), R (30), FORTRAN (30), Mathematica (19), EViews (18), z-Tree (16), dynare (15), RATS (12), C (8), C++ (6), python (5, more recent studies), SPSS (5). There are also examples with ArcGIS, ArcMap, java, LIMDEP, Maple, Microfit, Ox, ORSEE, PcGive, perl, TSP, and gretl. Often times more than one package is used. Some economists also use julia.
For a general overview, let’s consider a following list:
- Statistical Analysis: R (R Studio as IDE), Stata, SAS/Stat and IBM SPSS.
- Some general purpose languages: Python, including key packages like Pandas, Scipy, Numpy, Sympy etc., and machine learning packages. Recently Julia. May be also C++ or Java as object-oriented languages (just to mention).
- Algebraic packages: Matlab vs Mathematica.
- Databases: SQL and NoSQL solutions like MongoDB.
- BigData: Hadoop + Haskell as a functional programming language (actively used in finances).
Just for more focused issues:
- Bayesian statistics: STAN.
- Impact analysis: IMPLAN, REMI, to name a few.
- DSGE: Dynare backed by GNU Octave.
- Agent-based modelling: NetLogo.
- Optimisation: GAMS.
- Legacy spreadsheet: Excel VBA.
- System modelling: Vensim and a whole lot of dynamic modelling software.
Hope that helps.
From my experience (buy-side economist role),
- Eviews - the GUI is very convenient to deal with the most of the daily tasks e.g. updating econometrics models and forecasts; and its continuously improving interface with external databases make my life much easier
- R / Matlab - easy for monte carlo simulation and dealing with financial data and stochastics models
Excel is popular for equity financial modeling and corporate finance, but C++ / R are dominated in financial engineering / quants field
SPSS is more popular in other social science field as it is not really good at dealing with time series (major part of my work) in my opinion
SAS is good for huge set of data due to its unique memory management... but Eviews can handle most of situation in my case (unlike financial data, what we face with economic data is a lack of observation instead of too much data for the memory..)
Python is a fast program but not convenient to implement for daily analysis purpose.. and for the rest you mentioned, they evolve to provide quite similar functions nowadays
This really depends on your school or profession as to what is most prevalent.
Professors at my school seem to use mostly Matlab and Stata. Some subjects even require GAUSS, which I had never heard of before. There is also some python involved.
In my experience (anecdotal), the finance sector uses excel a lot.
To add to the anecdotal evidence collection, I also have experienced that Stata is the most standard stats software.
EViews is another option.
As for other programs, beside statistical analysis software, LaTeX is a programming language used to format documents for presentation.
Just to add to what is here, a lot of economists who do heavy work (dynamic programming, structural estimation) can't get away with using a language like Matlab that isn't compiled. From older economists (tenured faculty, say) I see a surprising amount of fortran for these applications. C++ may be more popular among younger economists for the same job, but fortran has had surprising staying power.
Just as an addition to all mentioned above and because the original question is about environmental economics: in that context GAMS is used quite a bit.
In fact Nordhaus celebrated DICE model that is the basis of much of his Nobel prize work on climate change is a GAMS model. As a consequence so is most of the follow-up research.
On a personal note I myself use Maxima sometimes which is a free program similar to Mathematica.