# Chapter 8 Localised Spatial Analysis

## 8.2 Setting Up The Data Used in This Chapter

# Load tmap, tmaptools packages
require(tmap)
require(tmaptools)

# read in the shapefile for North Carolina SIDS (its in epsg:4326)
package="spData")[1],
current.projection=4326)

# Transform to EPSG 2264 - and units in miles. We need the full proj4 string here to specify units
nc.sids.p <- set_projection(nc.sids,"+init=epsg:2264 +units=mi")

# Plot North Carolina
tm_shape(nc.sids.p,unit='miles') + tm_borders() + tm_scale_bar(position = c("left","bottom"))

### 8.2.1 Local Indicators of Spatial Association

require(spdep)
# Compute the listw object for the North Carolina polygons
# Make sure nc.sids.p is in SpatialPolygonsDataFrame format
if ("sf" %in% class(nc.sids.p)) nc.sids.p <- as(nc.sids.p,"Spatial")
nc.lw <- nb2listw(poly2nb(nc.sids.p))
# Compute the SIDS rates (per 1000 births) for 1979
nc.sids.p$sidspm79 <- 1000*nc.sids.p$SID79/nc.sids.p$BIR79 # Compute the local Moran's I nc.sids.p$lI <- localmoran(nc.sids.p$sidspm79,nc.lw)[,1] tm_shape(nc.sids.p,unit='miles') + tm_polygons(col='lI',title="Local Morans I",legend.format=list(flag="+")) + tm_style_col_blind() + tm_scale_bar(width=0.15) + tm_layout(legend.position = c("left","bottom"), legend.text.size=0.4) # Create the local p-values nc.sids.p$pval <- localmoran(nc.sids.p$sidspm79,nc.lw)[,5] # Draw the map tm_shape(nc.sids.p,unit='miles') + tm_polygons(col='pval',title="p-value",breaks=c(0,0.01,0.05,0.10,1), border.col = "black", palette = "-Greens") + tm_scale_bar(width=0.15) + tm_layout(legend.position = c("left","bottom")) Self Test Question 1 Verify the significance figures above by selecting and listing the counties for which $$p<0.05$$. ## 8.3 Further Issues With The Above Analysis ### 8.3.1 Multiple Hypothesis Testing # Create the adjusted p-value nc.sids.p$pval_bonf <- p.adjust(nc.sids.p\$pval,method='bonferroni')
# Draw the map
tm_shape(nc.sids.p,unit='miles') +
tm_polygons(col='pval_bonf',title="p-value",breaks=c(0,0.01,0.05,0.10,1),
border.col = "black",
palette = "-BuGn") +
tm_scale_bar(width=0.15) +
tm_layout(legend.position = c("left","bottom"))