# Overview

## Overview

This is a python module for calculating global (Moran's I [1]) and local spatial autocorrelation [1.5] using the AMOEBA algorithm [2]. This code works on shapefiles, although a base class is provided to allow the examination of other objects, e.g. from a spatial database.

## Usage

The easiest way is to call autocorrelate.py with the name and path of the shapefile, e.g.:

python autocorrelate.py path/to/file/filename.shp


To use in other python programs:

from lcia_autocorrelation.ac_shapefile import AutocorrelationShapefile
ac = AutocorrelationShapefile("filepath")
ac.global_autocorrelation()


Autocorrelation calculations are made using the PySAL library; multiple measures of autocorrelation are possible.

## Local Indicators of Spatial Autocorrelation (LISA)

Moran's I is a single statistic for global autocorrelation. However, the calculation of Moran's I involves summing the individual cross products of each spatial unit. Local indicators of spatial association (LISA) (Anselin, L. (1995). "Local indicators of spatial association – LISA". Geographical Analysis, 27, 93-115) uses these local indicators directly, to calculate a local measure of clustering or autocorrelation. The LISA statistic is:

\begin{equation*} I_{i} = \frac{Z_{i}}{}\sum_{j}W_{ij}Z_{j} \end{equation*}
\begin{equation*} I = \sum_{i}\frac{I_{i}}{N} \end{equation*}

Where I is the autocorrelation statistic, Z is the deviation of the variable of interest from the average, and W is the spatial weight linking i to j.

We use the PySAL library to calculate LISA statistics.

## Installation

Using pip:

pip install lcia-autocorrelation


Using easy_install:

easy_install lcia-autocorrelation


### Requirements

The following packages are required

• numpy
• scipy
• pysal
• rtree
• osgeo
• django
• progressbar