{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "tags": [ "remove-cell" ] }, "outputs": [], "source": [ "from IPython.display import YouTubeVideo, IFrame" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Concepts\n", "\n", "This block is all about grouping; grouping of _similar_ observations, areas, records... We start by discussing why grouping, or clustering in statistical parlance, is important and what it can do for us. Then we move on different types of clustering. We focus on two: one is traditional non-spatial clustering, or unsupervised learning, for which we cover the most popular technique; the other one is explicitly spatial clustering, or regionalisation, which imposes additional (geographic) constraints when grouping observations." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The need to group data\n", "\n", "This video motivates the block: *what do we mean by \"grouping data\" and why is it useful?*\n", "\n", "```{sidebar} Slides\n", "\n", "The slides used in the clip are available at:\n", "\n", "- `[HTML]` \n", "- `[PDF]` \n", "\n", "```" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "tags": [ "remove-input" ] }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "IFrame(\"https://liverpool.instructuremedia.com/embed/1227f575-c31a-45ec-b988-a3cf08cd18d7\",\n", " width=500,\n", " height=300\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Non-spatial clustering\n", "\n", "Non-spatial clustering is the most common form of data grouping. In this section, we cover the basics and mention a few approaches. We wrap it up with an example of clustering very dear to human geography: geodemographics.\n", "\n", "```{sidebar} Slides\n", "\n", "The slides used in the clip are available at:\n", "\n", "- `[HTML]` \n", "- `[PDF]` \n", "\n", "```" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "tags": [ "remove-input" ] }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "IFrame(\"https://liverpool.instructuremedia.com/embed/0647598b-7b1d-4021-bad5-df26db367ac7\",\n", " width=500,\n", " height=300\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### K-Means\n", "\n", "In the clip above, we talk about K-Means, by far the most common clustering algorithm. Watch the video on the expandable to get the intuition behind the algorithm and better understand how it does its \"magic\"." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "tags": [ "remove-input", "hide-output" ] }, "outputs": [ { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2MBERISGBUYLxoaL2NCOEJjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY//AABEIAWgB4AMBIgACEQEDEQH/xAAbAAEAAQUBAAAAAAAAAAAAAAAAAQIDBAUGB//EAEcQAAIBAwEEBgUJBQYGAwEAAAABAgMEEQUSITGSBhdBUVTSEyIyYXEUFVJygZGhwdEWIzQ1VQczQnOCsSRDYmPC4VOD8UX/xAAZAQEBAQEBAQAAAAAAAAAAAAAAAQIDBAX/xAAhEQEBAAICAgMBAQEAAAAAAAAAAQIRAzESIRMyQSIEBf/aAAwDAQACEQMRAD8A8/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn5QOPB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn5QOPB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn5QOPB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn5QOPB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn5QOPB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn5QOPB2HVxrHibHnn5R1cax4mx55+UDjwdh1cax4mx55+UdXGseJseeflA48HYdXGseJseeflHVxrHibHnn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AgEgCASAIBIAgEgCCQAIBIAgEgCASAIBIAEEgCASAIBIAgkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MB6gDy/rH1jw1jyT8w6x9Y8NY8k/MBx4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//Z\n", "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "YouTubeVideo(\"hDmNF9JG3lo\", width=700)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For a striking visual comparison of how K-Means compares to other clustering algorithms, check out this figure produced by the `scikit-learn` project, a Python package for machine learning (more on this [later](lab_G)):\n", "\n", "````{toggle}\n", "```{figure} https://scikit-learn.org/stable/_images/sphx_glr_plot_cluster_comparison_0011.png\n", "---\n", "height: 500px\n", "name: clustering-algos\n", "---\n", "Clustering algorithms comparison [`[Source]`](https://scikit-learn.org/stable/modules/clustering.html#overview-of-clustering-methods)\n", "```\n", "````\n", "\n", "### Geodemographics\n", "\n", "If you are interested in Geodemographics, a very good reference to get a broader perspective on the idea, origins and history of the field is \"The Predictive Postcode\" {cite}`webber2018predictive`, by Richard Webber and Roger Burrows. In particular, the first four chapters provide an excellent overview.\n", "\n", "Furthermore, the clip mentions the Output Area Classification (OAC), which you can access, for example, through the CDRC Maps platform:\n", "\n", "```{margin}\n", "Explore the resource further [here](https://maps.cdrc.ac.uk/#/geodemographics/oac11/default/BTTTFFT/13/-2.9700/53.4000/), and if you want to peek into the next generation of the patform, have a look in [here](https://mapmaker.cdrc.ac.uk/#/internet-user-classification?lon=-2.97643&lat=53.38031&zoom=11)\n", "```" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "tags": [ "remove-input" ] }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "IFrame(\"https://mapmaker.cdrc.ac.uk/#/internet-user-classification?lon=-2.97643&lat=53.38031&zoom=11\",\n", " width=700,\n", " height=600\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Regionalisation\n", "\n", "Regionalisation is explicitly spatial clustering. We cover the conceptual basics in the following clip:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "```{sidebar} Slides\n", "\n", "The slides used in the clip are available at:\n", "\n", "- `[HTML]` \n", "- `[PDF]` \n", "\n", "```" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "tags": [ "remove-input" ] }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "IFrame(\"https://liverpool.instructuremedia.com/embed/f70ba654-b5fc-4dd6-a918-2f488fe8cf9e\",\n", " width=500,\n", " height=300\n", " )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If you are interested in the idea of regionalisation, a very good place to continue reading is Duque et al. (2007) {cite}`duque2007supervised`, which was an important inspiration in structuring the clip.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Further readings\n", "\n", "```{margin}\n", "The chapter is available for free [here](https://geographicdata.science/book/notebooks/10_clustering_and_regionalization.html)\n", "```\n", "\n", "A similar coverage of clustering and regionalisation as provided here, but with a bit more detail, is available on the corresponding chapter of the GDS book (in progress) {cite}`reyABwolf`." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.8" } }, "nbformat": 4, "nbformat_minor": 4 }