Learn R Programming

MCI (version 1.0.1)

mci.fit: Fitting the MCI model

Description

This function fits the MCI model based on an interaction matrix.

Usage

mci.fit(mcidataset, submarkets, suppliers, shares, ..., origin = TRUE)

Arguments

mcidataset
an interaction matrix which is a data.frame containing the submarkets, suppliers, the observed market shares ($p_{ij}$) and the explanatory variables
submarkets
the column in the interaction matrix mcidataset containing the submarkets
suppliers
the column in the interaction matrix mcidataset containing the suppliers
shares
the column in the interaction matrix mcidataset containing the observed market shares ($p_{ij}$), numeric
...
the column(s) of the explanatory variable(s) (at least one), numeric and positive (or dummy [1,0])
origin
boolean argument that indicates if an intercept is included in the model or it is a regression through the origin (default origin = TRUE)

Value

  • The linear regression is executed by the lm() function, so mci.fit() returns an object of class lm. The full information (estimates, significance, R-squared etc.) can be adressed by the function summary(). The explanatory variables are marked with a "_t" to indicate that they were transformed by log-centering transformation.

Details

The input dataset is transformed to regression-ready-data with the log-centering transformation by Nakanishi/Cooper (1974) and the data is fitted by a linear regression model. The return of the function mci.fit() can be treated exactly like the output of the lm() function. In the MCI model the dependent variable is the market share of the $j$ suppliers in the $i$ submarkets ($p_{ij}$), in which the shares are logically consistent (that means: 0 < $p_{ij}$ < 1, $\sum_{j=1}^n{p_{ij} = 1}$). The column in the interaction matrix mcidataset containing the shares is the 4th parameter of the function (shares). The further arguments (...) are the columns with the explanatory variables (attractivity/utility values of the $j$ alternatives, characteristics of the submarkets $i$). The function identifies dummy variables which are not transformend (because they do not have to be). Normally, in MCI analyzes no intercept is included into the transformed linear model due to the requirement of logically consistent market shares as model results (see above), so the default is a regression through the origin (origin = TRUE). Note: If an intercept is included (origin = FALSE) (and also if dummy variables are used as explanatories), the inverse log-centering transformation by Nakanishi/Cooper (1982) has to be used for simulations.

References

Colome Perales, R. (2002): Consumer Choice in Competitive Location Models. Barcelona. Hartmann, M. (2005): Gravitationsmodelle als Verfahren der Standortanalyse im Einzelhandel. Statistik Regional Electronic Papers, 02/2005. Halle. Huff, D. L./McCallum, D. (2008): Calibrating the Huff Model Using ArcGIS Business Analyst. ESRI White Paper, September 2008. Nakanishi, M./Cooper, L. G. (1974): Parameter Estimation for a Multiplicative Competitive Interaction Model - Least Squares Approach. In: Journal of Marketing Research, 11, 3, p. 303-311. Nakanishi, M./Cooper, L. G. (1982): Simplified Estimation Procedures for MCI Models. In: Marketing Science, 1, 3, p. 314-322. Suarez-Vega, R./Gutierrez-Acuna, J. L./Rodriguez-Diaz, M. (2015): Locating a supermarket using a locally calibrated Huff model. In: International Journal of Geographical Information Science, 29, 2, p. 217-233. Tihi, B./Oruc, N. (2012): Competitive Location Assessment - the MCI Approach. In: South East European Journal of Economics and Business, 7, 2, p. 35-49. Wieland, T. (2015): Raeumliches Einkaufsverhalten und Standortpolitik im Einzelhandel unter Beruecksichtigung von Agglomerationseffekten. Theoretische Erklaerungsansaetze, modellanalytische Zugaenge und eine empirisch-oekonometrische Marktgebietsanalyse anhand eines Fallbeispiels aus dem laendlichen Raum Ostwestfalens/Suedniedersachsens. Geographische Handelsforschung, 23. 289 pages. Mannheim : MetaGIS.

See Also

mci.transmat, mci.transvar

Examples

Run this code
data(ce)
# Loads the data

mci.fit (ce, "origin_code", "store_code", "ms_obs", "traveltime", 
"salesarea", "conc_all", "conc_comp")
# Output of the coefficients

# Use like lm():
mymcimodel <- mci.fit (ce, "origin_code", "store_code", "ms_obs", "traveltime", 
"salesarea", "conc_all", "conc_comp")
# Save the results in new lm object
summary(mymcimodel)
# Summary of the model
mymcimodel$coefficients
# Output of the regression coefficients
mymcimodel$coefficients[1]
# Output of regression coefficient 1

Run the code above in your browser using DataLab