Abstract

I have been looking forward to and equally dreading the arrival of this spatial analysis book ever since its publication was announced on the publisher’s website.
The R language of computing and statistics (http://www.r-project.org) has gained a significant uptake of users in academia in recent years and has found followers in a vast variety of subject areas. Blogs and Internet forums are telling us that in R it is possible to plot satellite data and maps and to conduct basic spatial analysis. However, there are often no arguments presented for why we ought to go to the trouble of learning a new software package apart from the fact that it is free to use. More importantly, to date, no consistent reference books exist that might allow researchers without a programming background to start their journey of spatial analysis in R. Although there has been an extraordinary rise in R-related publications, the number of ‘good’ books that also suit non-programming beginners is still very limited. I would even go so far as to say that many are unreadable, might drive you into despair and probably put you off using R for the rest of your life!
Fortunately, the book by Brunsdon and Comber is different. In fact, it is everything an instructor could have wished for: it is extremely well written and slowly paced for beginners. Every piece of code is explained in detail and there is no shortage of exercises to test knowledge gained. I found working through this book very informative and interesting.
Both authors have a strong background in quantitative geographical and environmental analysis as well as Geographical Information Systems (GIS). They have witnessed the increase in use of spatial data in many scientific and academic fields, as well as the increase in the use of R for spatial analysis and geo-computing. In the book, R is introduced to the readers as a ‘Swiss Army Knife of spatial data handling and analysis’. No prior knowledge of R, spatial analysis or GIS is assumed, and all coding examples can be found on the accompanying website. All exercises make use of freely available data from a variety of disciplines, such as social science, climatology and ecology. Although raster data are included in some examples, the scope of the book is ultimately in the use and analysis of vector GIS data.
This book is essentially a ‘learning by doing’ course and therefore requires a certain amount of dedication, time and elbow-grease. For readers who are new to R, the first stage would be to work through the first couple of chapters step-by-step. Once the structure and commands of R start to sink in, the following chapters will probably need less time and effort. That said, learning R is like learning a new language and needs continued practice. Lack of commitment will probably not lead to spatial analysis glory.
The book is divided into nine chapters plus an epilogue. Each chapter consists of an explanatory part which includes examples, plus a section with questions to test newly gained knowledge. Chapter 1 gives a background on the R language and explains why it is worth learning; Chapter 2 is by far the best introduction to R I have ever come across and introduces and explains basic R objects and commands; Chapter 3 introduces the use of spatial data such as polygon, point and raster data. By the end of Chapter 3, the average reader will be able to plot their own site maps, shaded thematic (choropleth) maps and overlay spatial objects onto Google Maps or OpenStreetMap. Chapter 4 is dedicated to programming aspects of R, such as automation of scripts using functions, conditional statements, as well as ‘for’ and ‘while’ loops. Chapter 5 provides all the information that is needed to use R just like a GIS, while Chapters 6–8 are exclusively dedicated to spatial analysis of point patterns, spatial attributes and localised spatial analysis. The chapter on point pattern analysis includes detailed description of all major algorithms, such as Kernel density estimates, hexagonal binning, nearest neighbour interpolation, inverse distance weighting and kriging. Spatial attributes include spatial autocorrelation, identifying polygon neighbours, spatial autoregression and spatial regression models. The chapter on localised spatial analysis discusses how to use spatial hypothesis testing and makes a comparison with geographically weighted methods. Seeing that Professor Brunsdon is an expert on the latter topic, I found this section a particularly interesting read. Finally, Chapter 9 deals with the topic of obtaining spatial data, such as web scraping CSV files and API (application program interfaces) form. The epilogue finishes with additional information about R and its integration with other languages such as C++ and LaTeX as well as about writing interactive webpages using ‘shiny’.
I really enjoyed reading this book and find little to criticise. There are, however, a couple of minor points that could perhaps be addressed on the accompanying website or in a future edition of the book: (1) only one other R book about spatial analysis and statistics is mentioned, and although it is clearly the most important one (and yes, it is a difficult read), other books do exist (even if their usability is debatable); (2) although Chapter 2 is a very good introduction to R, I found some examples, particularly those including logical operators, rather peculiar; (3) readers with no prior knowledge of spatial data might struggle to understand the range of spatial formats that are introduced from Chapter 3 onwards; (4) some expressions and prior knowledge seem to be taken for granted, for example, ‘jitter’ and the understanding of map projections; (5) although I do understand why the authors use the basic R interface in this book, I have found that new users prefer and get more out of R Studio (which is briefly mentioned in Chapter 9).
In my opinion, this book has a lot to offer to researchers of environmental and climatic changes during the Holocene. At the very least, it will provide the reader with methods to effectively plot site maps with the option to overlay own data onto web-based maps, such as a Google satellite map. Yet, of much more importance are all the different methods for spatial correlations and regression, which could easily be applied to climatic and environmental point data.
