{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Clusters (example 01) ##\n", "\n", "\n", "Purpose: Identify clusters in a random generated blobs sample\n", "\n", "**1** import libraries needed:numpy, sklearn, matplotlib and pandas\n", "\n", "**2** generate a sample of blobs and convert it into a dataframe called df1\n", "\n", "**3** Verify datatype\n", "\n", "**4** Plot the blobs\n", "\n", "**5** calculete WCSS\n", "\n", "**6** plot the new chart with centroids\n", "\n", "**7** identify to what group does each item belongs\n", "\n", "**8** add new column\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "from matplotlib import pyplot as plt\n", "from sklearn.cluster import KMeans" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "from sklearn.datasets.samples_generator import make_blobs\n", "XY,y= make_blobs(n_samples=400, centers=5, cluster_std=0.60, random_state=0)\n", "df1=pd.DataFrame(XY)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 float64\n", "1 float64\n", "dtype: object" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df1.dtypes" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(400, 2)" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df1.shape" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
01
0-1.3799807.185038
1-1.7640412.222230
21.9755390.718989
3-1.5543263.050187
41.9889431.509767
\n", "
" ], "text/plain": [ " 0 1\n", "0 -1.379980 7.185038\n", "1 -1.764041 2.222230\n", "2 1.975539 0.718989\n", "3 -1.554326 3.050187\n", "4 1.988943 1.509767" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df1.head()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Y')" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(df1[0], df1[1])\n", "plt.title('Blobs')\n", "plt.xlabel('X')\n", "plt.ylabel('Y')\n" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "wcss = []\n", "for i in range(1, 11):\n", " kmeans = KMeans(n_clusters=i, init='k-means++', max_iter=300, n_init=10, random_state=0)\n", " kmeans.fit(df1)\n", " wcss.append(kmeans.inertia_)\n", "plt.plot(range(1, 11), wcss)\n", "plt.title('Elbow Method')\n", "plt.xlabel('Number of clusters')\n", "plt.ylabel('WCSS')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "kmeans = KMeans(n_clusters=5, init='k-means++', max_iter=400, n_init=10, random_state=0)\n", "pred_y = kmeans.fit_predict(df1)\n", "plt.scatter(df1[0], df1[1])\n", "plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=300, c='red')\n", "plt.show()\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.6" } }, "nbformat": 4, "nbformat_minor": 2 }