Environment 

Interactive—type matrix expressions and see results

Development—full development environment for developing programs and commands

Automatically compiled code

 

General features and matrix operators

Matrices with more than 2 billion rows and columns in Stata/MP

Matrices with up to 2 billion rows and columns in Stata/SE and Stata/IC

Support for real and complex values

Joining by rows or columns

Addition, subtraction, multiplication, and scalar division

Elementwise arithmetic

Transposition and reshaping

Kronecker  and Hadamard products

Inner  and outer  products

 

Optimization features 

Code the function, function and gradient, or function, gradient, and Hessian

Newton–Raphson, BFGS, DFP, BHHH, Nelder–Mead, and Gauss–Newton techniques

Versions for general problems and statistical problems like maximum likelihood

Covariance matrix based on Hessian, outer product of gradients, or robust/sandwich

Linear programming

 

Mathematical and matrix functions

LAPACK numerical analysis routines

Hundreds of mathematical, string, and matrix utility functions Updated

Unicode-aware string functions Updated

Locale-based sorting and string comparison

Symmetric, nonsymmetric, and generalized inverses

Cholesky LU, QR, and SVD  solvers

Trigonometric  and other transcendental functions Updated

Gamma and factorial functions

Density and distribution functions

Polynomial evaluation , arithmetic, and calculus

Hilbert , Toeplitz , and Vandermonde  matrices

Duplication , commutation , and elimination matrices

Random-number generation

Fast Fourier analysis

Cubic splines

Means, sums, minimums and maximums of matrices

Numerical first and second derivatives

Numerical integration

Explore all of Mata’s functions.

 

Stata interface 

Convert Stata datasets to matrices and vice versa

Virtual matrix views onto dataset

Access and set estimation-class and other macros

Manipulate dataset value labels

Access and manipulate Stata data frames

 

 

Compiled language 

C/C++-like syntax

Classes

Structures

Pointers

Numeric and string types

Matrices as an intrinsic type, including row and column vectors and full matrices

 

Object-oriented programming 

Inheritance

Virtual functions

Encapsulation of data structures and programs

 

Decompositions

Eigenvalues and eigenvectors

Cholesky

LU and LUD

QR

Schur

Hessenberg

Singular value

Permutation matrices

 

Data accumulation

Cross products

Cross products of deviations from means

Weighted and GLS-type cross products

Support for quad-precision cross products

 

Nonlinear system solver 

Fixed-point and root-finding problems

Gauss–Seidel, Broyden–Powell, and Newton–Raphson methods

 

Creation of Word, Excel, and PDF files

Programmatic access to create Word documents

Low-level cell-by-cell access to write results to and read data from Excel, including graphs, formulas, date formats, currency formats, bold, italics, and more.

Programmatic access to create PDF files

 

Other features

String scalars and matrices, including Unicode support

File I/O, including buffered I/O

URL percent encoding and decoding

C-like syntax

Fast execution

 

Additional resources