Marco Riani1, Anthony C. Atkinson2, Francesca Torti3, Aldo Corbellini1, Gianluca Morelli1
1 Dipartimento di Scienze Economiche e Aziendale and Interdepartmental Centre for Robust Statistics, Universita di Parma, 43100 Parma, Italy
2 Department of Statistics, The London School of Economics, London WC2A 2AE, UK
3 European Commission, Joint Research Centre (JRC), 21027 Ispra, Italy
Correspondence analysis is a method for the visual display of information from two-way contingency tables. Often, the rows are subjects (in our major examples countries) and the columns are response categories. Our main result is a robustly calculated plot showing the structure of the data, including tests for outlying rows. We use simulation to calibrate the statistical properties of the procedure. The aim is both to detect outlying rows, if any, and to explore the homogeneity of the non-outlying rows.
Forward search; inertia; informative plotting; outlier detection; simulation envelopes; trade restrictions.
This repository contains the MATLAB code associated with the paper. In the table below you can find the original MATLAB scripts (.m), the corresponding MATLAB live scripts (.mlx), and exported Jupyter notebook (.ipynb) files.
MATLAB live script files
The .mlx files contain both the code and the output produced by the code. To run a live script in MATLAB Online, click the "Open in MATLAB Online" button. The repository will be cloned automatically.
Jupyter notebook files
The .ipynb files contain both the code and the output produced by the code, including the generated figures and textual output from the live-script execution.
Requirements
To run the files below, install the FSDA toolbox. The scripts use FSDA correspondence-analysis routines and the FSDA data sets ExportShifts.mat, clothes.mat, and ChristmasSales.mat. MATLAB with Optimization Toolbox is required, and Parallel Computing Toolbox is used by the figure-generation scripts.
| FileName | View 👀 | Run | Jupyter notebook | m format |
|---|---|---|---|---|
createFigures1_4.mlx: Code to reproduce Figures 1 to 4 by setting FigNumber. |
createFigures1_4.ipynb | createFigures1_4.m | ||
createFig5.mlx: Code to reproduce Figure 5. |
createFig5.ipynb | createFig5.m | ||
Export_Shifts.mlx: Code to reproduce Figures 6 to 10 using the Export Shifts data. |
Export_Shifts.ipynb | Export_Shifts.m | ||
Clothes.mlx: Code to reproduce Figures 11 to 14 using the clothes data. |
Clothes.ipynb | Clothes.m | ||
ChristmasSales.mlx: Code to reproduce Figure 15 using the Christmas Sales data. |
ChristmasSales.ipynb | ChristmasSales.m |