help mtad -------------------------------------------------------------------------------


mtad - Multinomial Test of Agglomeration and Dispersion


mtad varlist, mkt(varname) [options]

options Description ------------------------------------------------------------------------- mkt(integer) market identifier wide specifies one observation per market probs(numlist) user provided baseline probabilties niter(integer) number of monte carlo draws


mtad calculates a multinomial test-statistic for agglomeration or dispersion. See Shane Greenstein and Marc Rysman (2005). "Testing for Agglomeration and Dispersion." Economics Letters 86(3): 405-411.

Given a cross-section of "markets" this statistic indicates whether "plants" from two or more "industries" are more/less concentrated than would be observed under a random allocation.

If wide is not specified (the default), each observation represents a plant, and varlist must be a single categorical variable that indicates the industry of that plant/observation.

In wide mode, each observation represents a market and varlist must contain two or more count variables that indicate the number of plants for each industry in that market/observation.


mkt(varname) is required, and specifies the (numeric) identifier variable for the cross-section of markets/groups.

wide is optional. If wide is specified, each observation represents a single market. If wide is not specified (the default) each observation represents a single plant.

probs(numlist) is optional and can only be used in wide mode. This option allows the user to specify a known baseline probability of observing a plant in each industry. If this option is not used, mtad assumes that the probabilities of each plant-type correspond to the unconditional mean of that plant type in the data set. The order of probabilities in probs(numlist) must correspond to the order of industires in varlist, and the probabilities must sum to 1.

niter(integer) allows the user to specify the number of draws used in a Monte Carlo simulation to calcultae the mean and std deviation of the sample likelihood under random choice. The default is 50.

Saved Results

Scalars r(logl) likelihood of observed data r(elogl) simulated likelihood under random assignment r(sd) standard deviation of simulated likelihood

Macros r(mtad) String equal to "Agglomeration/Dispersion" if r(elogl) is greater/less than r(logl)

Examples . sysuse bplong.dta . mtad sex, mkt(agegrp)

. gen male = (sex==0) . gen female = (sex==1) . collapse (sum) male female, by(agegrp) . mtad male female, mkt(agegrp) wide prob(0.5 0.5) niter(250)

To report bugs or give comments, please contact Timothy Simcoe