Useful software for Economists
Here is a list of useful software for economists. The purpose is to a) inform
you about programs that you might want to use and b) give links to
documentation. This is necessarily a limited selection, meant to reflect
programs that I have actually seen being used. "Free", "semi-Free", and
"free" software alternatives are highlighted (What I
mean by Free, semi-Free, and free)!
If you would like to add something, please let me know (send me an email).
I want to write a paper: (back to top)
Often people use LaTeX or LaTeX-derived programs for writing
papers. This is because LaTeX produces nice maths, and because it
allows you (to some extent) to specify the structure and form of
your document separately. Typically, you would specify the
structure (this is a section, this is the title), and then use
the format specified by someone else (e.g. the format used by a
journal).
- LaTeX (Free): A text file with markup needs to be produced in a
text editor (on Windows, people like e.g. WinEdt), and then compiled to DVI
or PDF format. Cross-platform. A Free Windows version of LaTeX is MikTex
(editor not included). A Free cross-platform version of LaTeX is TeX
Live.
MikTex (Free)
TeX Live (Free)
A not so short introduction to LaTeX (if you are brave enough to try it)
Here are some editors:
WinEdt (note: although LaTeX is Free, this editor is shareware)
Texmaker (Free)
TeXnicCenter (Free)
TeXShell (Free)
- Scientific Workplace: Since editing the markup code for LaTeX by hand
can be very tedious, many people use Scientific Workplace, which gives a
nice interface to LaTeX that makes e.g. typing equations much easier. Once
you have written your document, it still needs to be compiled with the
LaTeX included with Scientific Workplace. Writing straight LaTeX code does
allow for more flexibility. Scientific Workplace is expensive, and only
available for Windows.
MacKichan Software website.
A Scientific Workplace guide by Pedro Albarrán (in Spanish)
- LyX (Free): A high-quality Free alternative to Scientific
Workplace, cross-platform, also based on LaTeX.
LyX website
LyX tutorials
LyX Wiki and Documentation
A guide on presentations with LyX and Beamer by Carlos González-Aguado (in Spanish)
- TeXmacs (Free): This is an almost
"what-you-see-is-what-you-get" editor for scientific documents, making
compiling largely unnecessary. Cross-platform. Compatible with LaTeX.
TeXmacs website
Links to TeXmacs documentation
A TeXmacs tutorial (see also the "Help" menu in TeXmacs)
- Microsoft Office: In recent versions of Microsoft Office, formula
support has allegedly been much improved. It might be feasible to write
papers using this program. Not available for Linux.
Microsoft Office website
- LibreOffice (Free): LibreOffice is almost completely compatible
with Microsoft Office (Word, Excel, Powerpoint). Cross-platform.
LibreOffice website
I want to do some econometrics: (back to top)
There are several options: You can try to use a program that already
has a lot of functionality built in (either with a point-and-click interface,
or a text interface). This will work, unless you have some non-standard
procedures or tests that you want to carry out. You would then need to
program, probably in a matrix programming language, to make things simpler.
Many matrix programming languages will have modules or packages that can be
loaded that allow you to carry out standard procedures (such as e.g. a panel
regression).
- Microsoft Excel: Don't even think about it. Maybe, maybe, you can use it for a very quick calculation.
First, though, read why it is a bad idea to use spreadsheets in situations for which they were not designed. You have been warned. Not available for Linux.
Microsoft Office website
- LibreOffice (Free): If you want an Excel-like spreadsheet, but
don't want to pay any money for it. Cross-platform.
Why it is a bad idea to use spreadsheets in situations for which they were not designed. You have been warned.
LibreOffice website
- Eviews: Eviews is great for simple point-and-click econometrics.
It costs money.
Eviews website
- Gretl (Free): The obvious alternative to Eviews for simple
point-and-click econometrics is Gretl which is used by many institutions
both in the U.S. and in Europe. For example, in Universidad Carlos III
de Madrid it is used in their econometrics courses. This is Free
software. Cross-platform.
Gretl website
- Stata: The gold standard for many empirical researchers. Stata comes
with commands for all standard econometric procedures, and for those that
are not included, there are user-provided packages. Has a text interface.
You can program in Stata, but in my own biased and personal opinion,
solutions to problems often turn out to look strange to someone aquainted
with modern programming languages. It is quite expensive.
Stata website
- Matlab: This is a matrix computation language (published by
Mathworks) which is very widely used in engineering. High quality, quite
fast. Large community of users. The drawback: Matlab is
very, very expensive. Watch out: Mathworks charges extra for so-called
"toolboxes." Often, the functionality that you need will be spread across
several of these, and you need to buy these on top of the basic software
package. Cross-platform.
Mathworks website
- Octave (Free): Octave is a clone of Matlab. As such it has
very similar commands and functions. The main caveat is that code written
by Matlab users for Matlab sometimes works with Octave, but not always.
Octave also tends to be slower than Matlab. It has one important advantage
over Matlab, and that is that it is Free. Cross-platform.
Octave website
- Scilab (semi-Free): Scilab is another clone of Matlab. The
Scilab license is more restrictive than the Octave license.
Cross-platform.
Scilab website
- R (Free): A Free implementation of the S language (first
developed at Bell Labs) that is very good for statistical computing. (There
are non-free implementations, but I have never seen them used anywhere.)
The basic software has a very "bare bones" interface, but a separate very
nice (Matlab-like) interface is available in RStudio (see link below). Can
produce high quality graphs. Large community of users, there is a huge
selection of user written packages for R, which are also Free (including
packages for Finance). Probably slower than Matlab for many applications.
Cross-platform.
R website
RStudio
List of R packages by task
R manuals
More documentation on R
- Gauss: Another matrix programming language, produced by Aptech
Systems. This used to have quite a large following among econometricians.
Cross-plaftform.
Aptech website
- Ox (free for academic use): Another matrix programming
language. For academics, it is free. Syntax is very similar to C/C++.
Small user community. Gauss code can be run through Ox.
Cross-plaftform.
Ox website
Online documentation for Ox
An Introduction to Ox
I want to do algebra with the computer: (back to top)
Need to solve a large polynomial? To do a complicated derivative/ integral?
You want a Computer Algebra System.
- Mathematica: Mathematica is probably the leading commercial program to
do symbolic calculus. It is powerful but a bit difficult to master. It is
also very, very expensive. Produced by Wolfram Research. Cross-platform.
Wolfram Research website
If you just want to do a quick integral, you can use their
Mathematica Online Integrator.
- Maple: Maple is program that allows to do symbolic calculus. Compared
to Mathematica it has the added feature that a reduced version of it comes
integrated with Scientific Workplace which allows expressions to be
manipulated directly from the text. Of course, a full version of Maple can
also be purchased separately. Cross-platform.
Maple website
- Maxima (Free): The first versions of Maxima were developed at
MIT in the 1960s - Maxima is actually the ancestor of both Maple and
Mathematica. The program has of course changed a lot since the 1960s.
Maxima tends to allow for more flexibility in how to simplify expressions
than Maple. Can be used from within Lyx, which allows expressions to be
manipulated directly from the text. Cross-platform.
wxMaxima - a version with a nicer interface
Maxima - the original with a more basic interface
Sample Lyx+Maxima document
My program needs to be faster: (back to top)
Your code isn't running fast enough, and you have already optimized the
algorithms? Try these (all cross-platform):
- C/C++: C is a systems programming language, C++ is an object-oriented extension.
- GCC (Free): A high quality, Free collection of compilers.
GCC website
CodeLite, a Free integrated development environment.
Code::Blocks, another Free integrated development environment.
- ICC (free for non-commercial use on Linux): The Intel
compiler for C/C++. The free version is only available for Linux.
Produces very fast code on Intel processors, maybe up to 30% faster than
GCC.
Intel Non-Commercial Software Downloads
- GNU Scientific Library (Free): If you are programming in C, you
probably don't want to write routines for matrix decomposition, numerical
optimization, random number generation etc. The GSL is a library that
provides routines for most of the things that you might need.
GNU Scientific Library
- Fortran: The oldest compiled language for numerical applications.
Fortran took us to the moon!
- GCC (Free): A high quality, Free collection of compilers.
GCC website
- IFC (free for non-commercial use on Linux): The Intel compiler
for Fortran 90. The free version is only available for Linux. Produces very
fast code on Intel processors, maybe up to 30% faster than GCC.
Intel Non-Commercial Software Downloads
The distinction between "Free", "semi-Free", and
"free": (back to top)
"free" (gratis): you don't have to pay to use this product (in some
circumstances).
"Free" (libre): you don't have to pay to use this product. You can look at
the source code. You can modify it. You can even distribute it to others
(under some conditions). There are no restrictions on how people can use your
modified code.
"semi-Free" (libre): you don't have to pay to use this product. You can look at
the source code. You can modify it. You can even distribute it to others
(under some conditions). There are restrictions on how people can use your
modified code.
There are some very good arguments as to why "Free" is better than
"semi-Free", which in turn is better than "free".
Here is a more careful discussion of Categories of Free and Non-Free Software.
<< back to homepage