{ "cells": [ { "cell_type": "markdown", "id": "8f1abf17", "metadata": {}, "source": [ "# Feature importance per signature type\n", "\n", "This notebooks analyses which characters are more important for each individual signature type. In other words, what makes each cluster unique compared to all the other." ] }, { "cell_type": "code", "execution_count": 110, "id": "d86c027b", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import pandas as pd\n", "import geopandas as gpd\n", "import dask.dataframe\n", "import matplotlib.pyplot as plt\n", "import urbangrammar_graphics as ugg\n", "import seaborn as sns\n", "\n", "from matplotlib.lines import Line2D\n", "from sklearn.ensemble import RandomForestClassifier" ] }, { "cell_type": "code", "execution_count": 3, "id": "3ba4607d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 19.2 s, sys: 3.26 s, total: 22.5 s\n", "Wall time: 21.4 s\n", "CPU times: user 72.3 ms, sys: 4.09 ms, total: 76.4 ms\n", "Wall time: 116 ms\n", "CPU times: user 39.6 ms, sys: 7.9 ms, total: 47.5 ms\n", "Wall time: 41.4 ms\n", "CPU times: user 18.9 ms, sys: 0 ns, total: 18.9 ms\n", "Wall time: 18.7 ms\n", "CPU times: user 2min 41s, sys: 1min 27s, total: 4min 8s\n", "Wall time: 2min 45s\n" ] } ], "source": [ "%time standardized_form = dask.dataframe.read_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/form/standardized/\").set_index('hindex')\n", "%time stand_fn = dask.dataframe.read_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/function/standardized/\")\n", "%time data = dask.dataframe.multi.concat([standardized_form, stand_fn], axis=1).replace([np.inf, -np.inf], np.nan).fillna(0)\n", "%time data = data.drop(columns=[\"keep_q1\", \"keep_q2\", \"keep_q3\"])\n", "%time data = data.compute()" ] }, { "cell_type": "code", "execution_count": 4, "id": "8806704b", "metadata": {}, "outputs": [], "source": [ "labels_l1 = pd.read_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/KMeans10GB.pq\")\n", "labels_l2_9 = pd.read_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/clustergram_cl9_labels.pq\")\n", "labels_l2_2 = pd.read_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/subclustering_cluster2_k3.pq\")\n", "labels = labels_l1.copy()\n", "labels.loc[labels.kmeans10gb == 9, 'kmeans10gb'] = labels_l2_9['9'].values + 90\n", "labels.loc[labels.kmeans10gb == 2, 'kmeans10gb'] = labels_l2_2['subclustering_cluster2_k3'].values + 20\n", "\n", "outliers = [98, 93, 96, 97]\n", "mask = ~labels.kmeans10gb.isin(outliers)" ] }, { "cell_type": "markdown", "id": "9d549248", "metadata": {}, "source": [ "## Feature importance per cluster" ] }, { "cell_type": "code", "execution_count": 15, "id": "49e9d0f6", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([ 4, 0, 6, 1, 21, 7, 3, 5, 90, 20, 8, 22, 98, 92, 94, 91, 95,\n", " 96, 93, 97], dtype=int32)" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "labels.kmeans10gb.unique()" ] }, { "cell_type": "code", "execution_count": 19, "id": "900223ad", "metadata": {}, "outputs": [], "source": [ "imps = pd.DataFrame()" ] }, { "cell_type": "code", "execution_count": 21, "id": "76b85d70", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 13.6min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 10.4min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 5.8min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 6.6min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 6.0min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 7.9min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 6.5min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 6.6min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 6.4min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 7.3min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 5.9min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 7.5min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 6.3min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 3.4min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 1.9min finished\n", "[Parallel(n_jobs=-1)]: Using backend ThreadingBackend with 16 concurrent workers.\n", "[Parallel(n_jobs=-1)]: Done 10 out of 10 | elapsed: 2.0min finished\n" ] } ], "source": [ "for cluster in labels.kmeans10gb.unique():\n", " if cluster not in outliers:\n", " cluster_bool = labels.loc[mask]['kmeans10gb'].apply(lambda x: 1 if x == cluster else 0)\n", "\n", " clf = RandomForestClassifier(n_estimators=10, n_jobs=-1, random_state=42, verbose=1)\n", " clf = clf.fit(data.loc[mask].values, cluster_bool.values)\n", "\n", " importances = pd.Series(clf.feature_importances_, index=data.columns).sort_values(ascending=False)\n", "\n", " imps[f'cluster_{cluster}'] = importances.head(50).index.values\n", " imps[f'cluster_{cluster}_vals'] = importances.head(50).values" ] }, { "cell_type": "code", "execution_count": 26, "id": "2387324c", "metadata": { "tags": [] }, "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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
cluster_0cluster_1cluster_20cluster_21cluster_22cluster_3cluster_4cluster_5cluster_6cluster_7cluster_8cluster_90cluster_91cluster_92cluster_94cluster_95
0sicCAR_q1ltcWRE_q3ssbCCM_q2stbCeA_q1sdbPer_q2ldsAre_q1sdcLAL_q1ssbElo_q1lcnClo_q3mdcAre_q2linPDE_q2sdbPer_q2sdbAre_q1ssbCCD_q2ssbERI_q2sicCAR_q2
1sicCAR_q2ltcRea_q3ssbCCM_q3linP4W_q2ssbCCM_q2mdsAre_q1sicCAR_q2ssbCCM_q3lcnClo_q2sicCAR_q2lcdMes_q3ssbERI_q1G, I. Distribution, hotels and restaurants_q2ssbCCM_q2ssbCCM_q2C. Manufacturing_q2
2ltbIBD_q2ltcAre_q2sdbAre_q3stbCeA_q2sdbPer_q3sddAre_q2sicCAR_q1ssbElo_q2ldePer_q1mtdMDi_q2lcdMes_q2ssbCCM_q2K, L, M, N. Financial, real estate, profession...ssbSqu_q3ssbCCD_q2R, S, T, U. Other_q2
3sdcAre_q2sdcAre_q2population_q3ldeAre_q2sdbAre_q2sicCAR_q2sdcAre_q2ssbCCo_q1ldeAre_q2sicCAR_q1ssbERI_q1ssbSqu_q3R, S, T, U. Other_q2K, L, M, N. Financial, real estate, profession...ssbCor_q2G, I. Distribution, hotels and restaurants_q2
4sddAre_q2misCel_q1sdbPer_q2stcOri_q2population_q3lddNDe_q3mtcWNe_q3ssbCCD_q2lcnClo_q1mdsAre_q1ssbCCo_q1sdbAre_q2G, I. Distribution, hotels and restaurants_q3sdbPer_q2K, L, M, N. Financial, real estate, profession...sicCAR_q1
5mtdMDi_q2misCel_q2sdbAre_q2ssbERI_q1ssbSqu_q3mdsAre_q2mdsAre_q1sdbPer_q3ltcWRE_q3sscCCo_q2population_q1ssbCCD_q3K, L, M, N. Financial, real estate, profession...sdbPer_q3G, I. Distribution, hotels and restaurants_q2C. Manufacturing_q3
6mdsAre_q1lisCel_q2ldePer_q1linP4W_q1ssbCCD_q3sicCAR_q1ltcAre_q1sdsSPW_q2linP4W_q2mdcAre_q1ssbElo_q2K, L, M, N. Financial, real estate, profession...C. Manufacturing_q2sdbAre_q2sdbPer_q2ssbCCM_q2
7Code_18_112_q2mtcWNe_q1lteOri_q2ldePer_q1K, L, M, N. Financial, real estate, profession...ldeAre_q2sdcAre_q3ssbCCo_q2sddAre_q1sisBpM_q2mdsAre_q2G, I. Distribution, hotels and restaurants_q2sdbPer_q2G, I. Distribution, hotels and restaurants_q2ssbSqu_q3sdbPer_q2
8mtcWNe_q2ltcAre_q1sdbPer_q3linPDE_q1ssbERI_q1lseCWA_q3mtbNDi_q2ltcAre_q1sddAre_q2ltcAre_q1sdsAre_q3sdbPer_q3ssbCCM_q2ssbCor_q3K, L, M, N. Financial, real estate, profession...sdsSPO_q2
9sdcLAL_q2lisCel_q1ldeAre_q1lteOri_q1R, S, T, U. Other_q2sdcAre_q2ltbIBD_q2sdbPer_q2ltcWRE_q2sddAre_q3ssbCCo_q2sdbAre_q1Code_18_211_q1ssbCCD_q3ssbCCM_q1mean_q3
10mtbNDi_q2sicCAR_q1stcOri_q3sdbPer_q3sdbPer_q1lisCel_q1ltcWRE_q1mtbNDi_q3lcdMes_q3mdsAre_q3linPDE_q1R, S, T, U. Other_q3ssbCCD_q1ssbERI_q1ssbCCD_q3ssbSqu_q1
11ltcAre_q1ssbERI_q1stbCeA_q2stbOri_q2sdbAre_q3ssbElo_q2mtcWNe_q2ltbIBD_q3ldeAre_q1sdsAre_q3stcOri_q2ssbCCD_q2G, I. Distribution, hotels and restaurants_q1ssbSqu_q2F. Construction_q3sdbAre_q1
12mdcAre_q2sdcLAL_q3ssbCCo_q1ssbCCo_q3O,P,Q. Public administration, education and he...ltcWRE_q1sdcLAL_q2ltcWRE_q2linP4W_q1mdsAre_q2stbOri_q2H, J. Transport and communication_q1sscCCo_q3O,P,Q. Public administration, education and he...F. Construction_q2H, J. Transport and communication_q3
13sdsAre_q2ltcRea_q1stcOri_q2ssbCCD_q2ssbCCM_q3stbSAl_q2mtbNDi_q3population_q3sdsAre_q2mtbNDi_q3ssbCCD_q2ssbERI_q2F. Construction_q3F. Construction_q3K, L, M, N. Financial, real estate, profession...R, S, T, U. Other_q1
14mtcWNe_q3sisBpM_q3stbOri_q2sdbAre_q2mean_q1stbCeA_q1mdcAre_q2ltcWRE_q1stbCeA_q2sdcAre_q2ssbElo_q1ssbCor_q3H, J. Transport and communication_q2ssbCCM_q3sicCAR_q3ssbCCD_q1
15sisBpM_q3ldsMSL_q1stbOri_q1population_q2ssbCCM_q1sddAre_q3sisBpM_q3sdsSPW_q3ldsCDL_q3sscERI_q2mdsAre_q3ssbSqu_q2sicCAR_q3ssbERI_q2mtbAli_q2sisBpM_q3
16sicCAR_q3sdsSWD_q3lcdMes_q2ssbCCM_q3ssbERI_q2ltcWRE_q2sisBpM_q1ltbIBD_q1mtdMDi_q1sscERI_q1lteOri_q1G, I. Distribution, hotels and restaurants_q3ssbERI_q2ssbCor_q2R, S, T, U. Other_q3sdcAre_q1
17sdcLAL_q1ssbCCo_q1sicCAR_q3lteWNB_q2ssbCCD_q2lisCel_q2ltcWRE_q2sicCAR_q2mtcWNe_q3linWID_q1mtcWNe_q1misCel_q3F. Construction_q2R, S, T, U. Other_q3sdcAre_q1O,P,Q. Public administration, education and he...
18mtdMDi_q1ssbCCM_q2stcOri_q1stbOri_q1K, L, M, N. Financial, real estate, profession...lddNDe_q2ltcAre_q2night_lights_q1lcdMes_q2population_q1sscCCo_q2sdbAre_q3A, B, D, E. Agriculture, energy and water_q3sdbAre_q3mean_q1H, J. Transport and communication_q2
19ldsAre_q2sdcLAL_q1stbCeA_q1ssbElo_q3sdbAre_q1stbCeA_q2sscERI_q2mtcWNe_q2sdcLAL_q1sdcAre_q3stcOri_q1O,P,Q. Public administration, education and he...lseCWA_q1mean_q1ssbSqu_q1A, B, D, E. Agriculture, energy and water_q2
20sdsSPO_q1linPDE_q3mean_q1ssbCCM_q2sicCAR_q3linWID_q1mtdMDi_q3linP3W_q3mtdMDi_q2population_q3stcOri_q3misCel_q2linP4W_q3K, L, M, N. Financial, real estate, profession...H, J. Transport and communication_q2ltcAre_q3
21ltbIBD_q1misCel_q3stbOri_q3lcdMes_q3R, S, T, U. Other_q3sssLin_q2sdsSPO_q2sdsSWD_q3ltcWRE_q1mtdMDi_q3population_q2mean_q1R, S, T, U. Other_q1G, I. Distribution, hotels and restaurants_q3ssbSqu_q2ldsCDL_q2
22sdsLen_q2sdcAre_q3ldeAre_q2lcdMes_q2G, I. Distribution, hotels and restaurants_q2ssbCCo_q1sdcAre_q1ssbERI_q1ldsAre_q2sdsSPO_q2lcdMes_q1ldePer_q2K, L, M, N. Financial, real estate, profession...sicCAR_q3R, S, T, U. Other_q1mdcAre_q2
23mtbNDi_q3lisCel_q3sddAre_q3ltcWRE_q3night_lights_q3mtdMDi_q3sisBpM_q2ssbCCo_q3sdcAre_q1stbCeA_q1stbOri_q3K, L, M, N. Financial, real estate, profession...A, B, D, E. Agriculture, energy and water_q2ssbCCD_q1C. Manufacturing_q2H, J. Transport and communication_q1
24lddNDe_q2sdsSWD_q2lteOri_q1lteOri_q2ssbCor_q3ldePer_q1Code_18_231_q1linP3W_q2population_q2sdcLAL_q2ssbCCo_q3ssbCCM_q1linP4W_q1misCel_q3ssbCCM_q3G, I. Distribution, hotels and restaurants_q1
25sisBpM_q2stbSAl_q2K, L, M, N. Financial, real estate, profession...G, I. Distribution, hotels and restaurants_q3G, I. Distribution, hotels and restaurants_q3stbSAl_q3ltcAre_q3sicCAR_q3lseCWA_q1linWID_q2ldsCDL_q1ssbCCM_q3H, J. Transport and communication_q3sscERI_q3sdbAre_q1ldsAre_q1
26ldsAre_q1ssbElo_q1ssbCCD_q3linPDE_q3population_q2misCel_q2ldsCDL_q1mtcWNe_q3linWID_q2ltcWRE_q2ssbCCM_q3H, J. Transport and communication_q3linP3W_q3R, S, T, U. Other_q2lseCWA_q2ldeAre_q1
27sdsAre_q1ssbCCo_q2ltcAre_q1population_q3night_lights_q2ssbERI_q1mdsAre_q3stbCeA_q1ssbCCM_q1sscCCo_q1linPDE_q3K, L, M, N. Financial, real estate, profession...R, S, T, U. Other_q3H, J. Transport and communication_q3Code_18_111_q2listed_counts
28sdcAre_q3stbCeA_q1linP4W_q2stcOri_q3O,P,Q. Public administration, education and he...ldePer_q2mean_q3linP4W_q2lteWNB_q1sddAre_q2sscCCo_q1ssbElo_q1sicCAR_q2sdcAre_q3sdbAre_q2K, L, M, N. Financial, real estate, profession...
29ldsMSL_q2mdcAre_q2linP4W_q3lcdMes_q1ltcWRE_q2ldsMSL_q2Code_18_231_q2ltcWRE_q3linP4W_q3ltcWRE_q1stbOri_q1Code_18_111_q3ssbCCM_q1Code_18_111_q2G, I. Distribution, hotels and restaurants_q3mtbNDi_q3
30mdsAre_q2ldeAre_q2ssbSqu_q1misCel_q2sicCAR_q2linPDE_q3ldsCDL_q2linPDE_q2linPDE_q2ssbCCM_q3linP4W_q2listed_countssdsSWD_q1ssbSqu_q1ssbCCD_q1mtcWNe_q3
31ltcAre_q3linPDE_q2lcnClo_q2stbOri_q3lcnClo_q3linWID_q2Code_18_211_q3ldePer_q1ldePer_q2sdsSPO_q1ssbElo_q3H, J. Transport and communication_q2ssbSqu_q1H, J. Transport and communication_q2R, S, T, U. Other_q2stcOri_q2
32sdsSPO_q2ssbCCo_q3R, S, T, U. Other_q3stcOri_q1ssbCCo_q3ssbCCo_q2sicCAR_q3stbCeA_q3sdsSPW_q3night_lights_q1lteOri_q2R, S, T, U. Other_q2mdcAre_q3Code_18_111_q3lisCel_q2sisBpM_q2
33mdcAre_q1sisBpM_q2ssbERI_q1linP4W_q3ssbCCo_q2lseERI_q2night_lights_q2ldsCDL_q1linPDE_q3ssbCCo_q1ssbSqu_q3O,P,Q. Public administration, education and he...ltcAre_q1lseCWA_q1H, J. Transport and communication_q3ssbCCD_q3
34lddNDe_q3stbCeA_q3sdcAre_q2ssbSqu_q1linP4W_q2sdsSPO_q3Code_18_211_q2mdcAre_q2ssbERI_q1sdsLen_q1lddNDe_q2population_q3O,P,Q. Public administration, education and he...ssbCCM_q1mtbNDi_q3sscCCo_q3
35ltcAre_q2lcdMes_q2linPDE_q3ldeAre_q1ldePer_q1stbCeA_q3mtbNDi_q1listed_countssdsSWD_q3ltbIBD_q2linWID_q1night_lights_q3sdcLAL_q3ltcAre_q1sicCAR_q1sssLin_q3
36mean_q1stcOri_q3O,P,Q. Public administration, education and he...lcnClo_q3population_q1ssbCCD_q2ldsCDL_q3night_lights_q2ssbCCo_q2night_lights_q2sisBpM_q2population_q2ldsCDL_q1G, I. Distribution, hotels and restaurants_q1A, B, D, E. Agriculture, energy and water_q2sdsSWD_q1
37sscERI_q1ssbCCM_q3sicCAR_q2sdbAre_q3ldeAre_q1sdsAre_q2mean_q2ldeAre_q1sdbAre_q1ltbIBD_q3ssbSqu_q2R, S, T, U. Other_q1sdsSPW_q3ssbElo_q2O,P,Q. Public administration, education and he...K, L, M, N. Financial, real estate, profession...
38night_lights_q2sisBpM_q1sdsSPW_q2ssbCCo_q2night_lights_q1stbSAl_q1sdsAre_q3sdsSPW_q1mtdMDi_q3stbCeA_q2mtdMDi_q2Code_18_111_q2ssbERI_q1K, L, M, N. Financial, real estate, profession...H, J. Transport and communication_q1lseERI_q3
39sscCCo_q3ssbElo_q3stbCeA_q3sdbPer_q2ssbSqu_q2ssbElo_q1mdcAre_q1sdsAre_q3sdcLAL_q2sdsAre_q2F. Construction_q1ssbSqu_q1lisCel_q2sdbAre_q1sdbAre_q3G, I. Distribution, hotels and restaurants_q3
40ltbIBD_q3ltcRea_q2linP4W_q1lisCel_q2G, I. Distribution, hotels and restaurants_q1mdcAre_q3sdsSPO_q1stbOri_q2linWID_q1mtbNDi_q2ssbERI_q2ssbCCo_q1ssbSqu_q3ssbERI_q3sdbPer_q1R, S, T, U. Other_q3
41stbCeA_q1ssbElo_q2night_lights_q1ssbCCo_q1lcnClo_q2lseCWA_q2ltbIBD_q1stcOri_q3misCel_q2mean_q2lddNDe_q3sscERI_q2mtcWNe_q2listed_countslcnClo_q3ssbElo_q2
42mtbNDi_q1ltcWRE_q1stbSAl_q2ssbElo_q2ssbCCo_q1ssbSqu_q2sdcLAL_q3sddAre_q3stcOri_q3sscCCo_q3lddNDe_q1mean_q3sdbAre_q3lcnClo_q1sicCAR_q2F. Construction_q2
43sisBpM_q1stbSAl_q1G, I. Distribution, hotels and restaurants_q2mdcAre_q2F. Construction_q2ssbElo_q3Code_18_231_q3ssbElo_q3sssLin_q2sdbPer_q3mdsAre_q1night_lights_q1lseCCo_q3sdbPer_q1mtcWNe_q3lieWCe_q1
44mean_q2mtdMDi_q1night_lights_q2night_lights_q1K, L, M, N. Financial, real estate, profession...mdsAre_q3K, L, M, N. Financial, real estate, profession...sdsSWD_q2misCel_q1lddNDe_q1sdbPer_q3ssbCCo_q3misCel_q1sisBpM_q3ssbERI_q1O,P,Q. Public administration, education and he...
45linWID_q2stbOri_q3ssbCCo_q2ssbElo_q1R, S, T, U. Other_q1population_q3lcnClo_q1linWID_q1stcOri_q2sdbPer_q2sscCCo_q3culture_nearestnearest_waterlcdMes_q1sssLin_q3ldsAre_q3
46Code_18_211_q2ltcWRE_q2ldePer_q2lteOri_q3H, J. Transport and communication_q2ssbCCo_q3mdcAre_q3linP4W_q3sdbPer_q1ldsAre_q3population_q3sdsSWD_q2ldsCDL_q3night_lights_q2ldsAre_q1F. Construction_q3
47ltcWRE_q2sssLin_q2lcnClo_q3lcnClo_q2C. Manufacturing_q2ldsMSL_q1ldeAre_q3stcOri_q2lisCel_q1ssbElo_q1ssbSqu_q1F. Construction_q2stcOri_q2sicCAR_q2mtbNDi_q2ltbIBD_q3
48mtcWNe_q1ldeAre_q1sdcLAL_q3sisBpM_q1lcnClo_q1lddNDe_q1ldePer_q3sdsSWD_q1sisBpM_q2mtcWNe_q1sscERI_q3G, I. Distribution, hotels and restaurants_q1ssbCCD_q2O,P,Q. Public administration, education and he...misCel_q2sicCAR_q3
49ldsAre_q3lcdMes_q1ltcWRE_q2stbSAl_q2ldeAre_q2misCel_q1ldeAre_q2linPDE_q3stbOri_q2sdsAre_q1lteOri_q3mtbAli_q2C. Manufacturing_q3population_q2sdbCoA_q3sdbCoA_q3
\n", "
" ], "text/plain": [ " cluster_0 cluster_1 \\\n", "0 sicCAR_q1 ltcWRE_q3 \n", "1 sicCAR_q2 ltcRea_q3 \n", "2 ltbIBD_q2 ltcAre_q2 \n", "3 sdcAre_q2 sdcAre_q2 \n", "4 sddAre_q2 misCel_q1 \n", "5 mtdMDi_q2 misCel_q2 \n", "6 mdsAre_q1 lisCel_q2 \n", "7 Code_18_112_q2 mtcWNe_q1 \n", "8 mtcWNe_q2 ltcAre_q1 \n", "9 sdcLAL_q2 lisCel_q1 \n", "10 mtbNDi_q2 sicCAR_q1 \n", "11 ltcAre_q1 ssbERI_q1 \n", "12 mdcAre_q2 sdcLAL_q3 \n", "13 sdsAre_q2 ltcRea_q1 \n", "14 mtcWNe_q3 sisBpM_q3 \n", "15 sisBpM_q3 ldsMSL_q1 \n", "16 sicCAR_q3 sdsSWD_q3 \n", "17 sdcLAL_q1 ssbCCo_q1 \n", "18 mtdMDi_q1 ssbCCM_q2 \n", "19 ldsAre_q2 sdcLAL_q1 \n", "20 sdsSPO_q1 linPDE_q3 \n", "21 ltbIBD_q1 misCel_q3 \n", "22 sdsLen_q2 sdcAre_q3 \n", "23 mtbNDi_q3 lisCel_q3 \n", "24 lddNDe_q2 sdsSWD_q2 \n", "25 sisBpM_q2 stbSAl_q2 \n", "26 ldsAre_q1 ssbElo_q1 \n", "27 sdsAre_q1 ssbCCo_q2 \n", "28 sdcAre_q3 stbCeA_q1 \n", "29 ldsMSL_q2 mdcAre_q2 \n", "30 mdsAre_q2 ldeAre_q2 \n", "31 ltcAre_q3 linPDE_q2 \n", "32 sdsSPO_q2 ssbCCo_q3 \n", "33 mdcAre_q1 sisBpM_q2 \n", "34 lddNDe_q3 stbCeA_q3 \n", "35 ltcAre_q2 lcdMes_q2 \n", "36 mean_q1 stcOri_q3 \n", "37 sscERI_q1 ssbCCM_q3 \n", "38 night_lights_q2 sisBpM_q1 \n", "39 sscCCo_q3 ssbElo_q3 \n", "40 ltbIBD_q3 ltcRea_q2 \n", "41 stbCeA_q1 ssbElo_q2 \n", "42 mtbNDi_q1 ltcWRE_q1 \n", "43 sisBpM_q1 stbSAl_q1 \n", "44 mean_q2 mtdMDi_q1 \n", "45 linWID_q2 stbOri_q3 \n", "46 Code_18_211_q2 ltcWRE_q2 \n", "47 ltcWRE_q2 sssLin_q2 \n", "48 mtcWNe_q1 ldeAre_q1 \n", "49 ldsAre_q3 lcdMes_q1 \n", "\n", " cluster_20 \\\n", "0 ssbCCM_q2 \n", "1 ssbCCM_q3 \n", "2 sdbAre_q3 \n", "3 population_q3 \n", "4 sdbPer_q2 \n", "5 sdbAre_q2 \n", "6 ldePer_q1 \n", "7 lteOri_q2 \n", "8 sdbPer_q3 \n", "9 ldeAre_q1 \n", "10 stcOri_q3 \n", "11 stbCeA_q2 \n", "12 ssbCCo_q1 \n", "13 stcOri_q2 \n", "14 stbOri_q2 \n", "15 stbOri_q1 \n", "16 lcdMes_q2 \n", "17 sicCAR_q3 \n", "18 stcOri_q1 \n", "19 stbCeA_q1 \n", "20 mean_q1 \n", "21 stbOri_q3 \n", "22 ldeAre_q2 \n", "23 sddAre_q3 \n", "24 lteOri_q1 \n", "25 K, L, M, N. Financial, real estate, profession... \n", "26 ssbCCD_q3 \n", "27 ltcAre_q1 \n", "28 linP4W_q2 \n", "29 linP4W_q3 \n", "30 ssbSqu_q1 \n", "31 lcnClo_q2 \n", "32 R, S, T, U. Other_q3 \n", "33 ssbERI_q1 \n", "34 sdcAre_q2 \n", "35 linPDE_q3 \n", "36 O,P,Q. Public administration, education and he... \n", "37 sicCAR_q2 \n", "38 sdsSPW_q2 \n", "39 stbCeA_q3 \n", "40 linP4W_q1 \n", "41 night_lights_q1 \n", "42 stbSAl_q2 \n", "43 G, I. Distribution, hotels and restaurants_q2 \n", "44 night_lights_q2 \n", "45 ssbCCo_q2 \n", "46 ldePer_q2 \n", "47 lcnClo_q3 \n", "48 sdcLAL_q3 \n", "49 ltcWRE_q2 \n", "\n", " cluster_21 \\\n", "0 stbCeA_q1 \n", "1 linP4W_q2 \n", "2 stbCeA_q2 \n", "3 ldeAre_q2 \n", "4 stcOri_q2 \n", "5 ssbERI_q1 \n", "6 linP4W_q1 \n", "7 ldePer_q1 \n", "8 linPDE_q1 \n", "9 lteOri_q1 \n", "10 sdbPer_q3 \n", "11 stbOri_q2 \n", "12 ssbCCo_q3 \n", "13 ssbCCD_q2 \n", "14 sdbAre_q2 \n", "15 population_q2 \n", "16 ssbCCM_q3 \n", "17 lteWNB_q2 \n", "18 stbOri_q1 \n", "19 ssbElo_q3 \n", "20 ssbCCM_q2 \n", "21 lcdMes_q3 \n", "22 lcdMes_q2 \n", "23 ltcWRE_q3 \n", "24 lteOri_q2 \n", "25 G, I. Distribution, hotels and restaurants_q3 \n", "26 linPDE_q3 \n", "27 population_q3 \n", "28 stcOri_q3 \n", "29 lcdMes_q1 \n", "30 misCel_q2 \n", "31 stbOri_q3 \n", "32 stcOri_q1 \n", "33 linP4W_q3 \n", "34 ssbSqu_q1 \n", "35 ldeAre_q1 \n", "36 lcnClo_q3 \n", "37 sdbAre_q3 \n", "38 ssbCCo_q2 \n", "39 sdbPer_q2 \n", "40 lisCel_q2 \n", "41 ssbCCo_q1 \n", "42 ssbElo_q2 \n", "43 mdcAre_q2 \n", "44 night_lights_q1 \n", "45 ssbElo_q1 \n", "46 lteOri_q3 \n", "47 lcnClo_q2 \n", "48 sisBpM_q1 \n", "49 stbSAl_q2 \n", "\n", " cluster_22 cluster_3 \\\n", "0 sdbPer_q2 ldsAre_q1 \n", "1 ssbCCM_q2 mdsAre_q1 \n", "2 sdbPer_q3 sddAre_q2 \n", "3 sdbAre_q2 sicCAR_q2 \n", "4 population_q3 lddNDe_q3 \n", "5 ssbSqu_q3 mdsAre_q2 \n", "6 ssbCCD_q3 sicCAR_q1 \n", "7 K, L, M, N. Financial, real estate, profession... ldeAre_q2 \n", "8 ssbERI_q1 lseCWA_q3 \n", "9 R, S, T, U. Other_q2 sdcAre_q2 \n", "10 sdbPer_q1 lisCel_q1 \n", "11 sdbAre_q3 ssbElo_q2 \n", "12 O,P,Q. Public administration, education and he... ltcWRE_q1 \n", "13 ssbCCM_q3 stbSAl_q2 \n", "14 mean_q1 stbCeA_q1 \n", "15 ssbCCM_q1 sddAre_q3 \n", "16 ssbERI_q2 ltcWRE_q2 \n", "17 ssbCCD_q2 lisCel_q2 \n", "18 K, L, M, N. Financial, real estate, profession... lddNDe_q2 \n", "19 sdbAre_q1 stbCeA_q2 \n", "20 sicCAR_q3 linWID_q1 \n", "21 R, S, T, U. Other_q3 sssLin_q2 \n", "22 G, I. Distribution, hotels and restaurants_q2 ssbCCo_q1 \n", "23 night_lights_q3 mtdMDi_q3 \n", "24 ssbCor_q3 ldePer_q1 \n", "25 G, I. Distribution, hotels and restaurants_q3 stbSAl_q3 \n", "26 population_q2 misCel_q2 \n", "27 night_lights_q2 ssbERI_q1 \n", "28 O,P,Q. Public administration, education and he... ldePer_q2 \n", "29 ltcWRE_q2 ldsMSL_q2 \n", "30 sicCAR_q2 linPDE_q3 \n", "31 lcnClo_q3 linWID_q2 \n", "32 ssbCCo_q3 ssbCCo_q2 \n", "33 ssbCCo_q2 lseERI_q2 \n", "34 linP4W_q2 sdsSPO_q3 \n", "35 ldePer_q1 stbCeA_q3 \n", "36 population_q1 ssbCCD_q2 \n", "37 ldeAre_q1 sdsAre_q2 \n", "38 night_lights_q1 stbSAl_q1 \n", "39 ssbSqu_q2 ssbElo_q1 \n", "40 G, I. Distribution, hotels and restaurants_q1 mdcAre_q3 \n", "41 lcnClo_q2 lseCWA_q2 \n", "42 ssbCCo_q1 ssbSqu_q2 \n", "43 F. Construction_q2 ssbElo_q3 \n", "44 K, L, M, N. Financial, real estate, profession... mdsAre_q3 \n", "45 R, S, T, U. Other_q1 population_q3 \n", "46 H, J. Transport and communication_q2 ssbCCo_q3 \n", "47 C. Manufacturing_q2 ldsMSL_q1 \n", "48 lcnClo_q1 lddNDe_q1 \n", "49 ldeAre_q2 misCel_q1 \n", "\n", " cluster_4 cluster_5 \\\n", "0 sdcLAL_q1 ssbElo_q1 \n", "1 sicCAR_q2 ssbCCM_q3 \n", "2 sicCAR_q1 ssbElo_q2 \n", "3 sdcAre_q2 ssbCCo_q1 \n", "4 mtcWNe_q3 ssbCCD_q2 \n", "5 mdsAre_q1 sdbPer_q3 \n", "6 ltcAre_q1 sdsSPW_q2 \n", "7 sdcAre_q3 ssbCCo_q2 \n", "8 mtbNDi_q2 ltcAre_q1 \n", "9 ltbIBD_q2 sdbPer_q2 \n", "10 ltcWRE_q1 mtbNDi_q3 \n", "11 mtcWNe_q2 ltbIBD_q3 \n", "12 sdcLAL_q2 ltcWRE_q2 \n", "13 mtbNDi_q3 population_q3 \n", "14 mdcAre_q2 ltcWRE_q1 \n", "15 sisBpM_q3 sdsSPW_q3 \n", "16 sisBpM_q1 ltbIBD_q1 \n", "17 ltcWRE_q2 sicCAR_q2 \n", "18 ltcAre_q2 night_lights_q1 \n", "19 sscERI_q2 mtcWNe_q2 \n", "20 mtdMDi_q3 linP3W_q3 \n", "21 sdsSPO_q2 sdsSWD_q3 \n", "22 sdcAre_q1 ssbERI_q1 \n", "23 sisBpM_q2 ssbCCo_q3 \n", "24 Code_18_231_q1 linP3W_q2 \n", "25 ltcAre_q3 sicCAR_q3 \n", "26 ldsCDL_q1 mtcWNe_q3 \n", "27 mdsAre_q3 stbCeA_q1 \n", "28 mean_q3 linP4W_q2 \n", "29 Code_18_231_q2 ltcWRE_q3 \n", "30 ldsCDL_q2 linPDE_q2 \n", "31 Code_18_211_q3 ldePer_q1 \n", "32 sicCAR_q3 stbCeA_q3 \n", "33 night_lights_q2 ldsCDL_q1 \n", "34 Code_18_211_q2 mdcAre_q2 \n", "35 mtbNDi_q1 listed_counts \n", "36 ldsCDL_q3 night_lights_q2 \n", "37 mean_q2 ldeAre_q1 \n", "38 sdsAre_q3 sdsSPW_q1 \n", "39 mdcAre_q1 sdsAre_q3 \n", "40 sdsSPO_q1 stbOri_q2 \n", "41 ltbIBD_q1 stcOri_q3 \n", "42 sdcLAL_q3 sddAre_q3 \n", "43 Code_18_231_q3 ssbElo_q3 \n", "44 K, L, M, N. Financial, real estate, profession... sdsSWD_q2 \n", "45 lcnClo_q1 linWID_q1 \n", "46 mdcAre_q3 linP4W_q3 \n", "47 ldeAre_q3 stcOri_q2 \n", "48 ldePer_q3 sdsSWD_q1 \n", "49 ldeAre_q2 linPDE_q3 \n", "\n", " cluster_6 cluster_7 cluster_8 \\\n", "0 lcnClo_q3 mdcAre_q2 linPDE_q2 \n", "1 lcnClo_q2 sicCAR_q2 lcdMes_q3 \n", "2 ldePer_q1 mtdMDi_q2 lcdMes_q2 \n", "3 ldeAre_q2 sicCAR_q1 ssbERI_q1 \n", "4 lcnClo_q1 mdsAre_q1 ssbCCo_q1 \n", "5 ltcWRE_q3 sscCCo_q2 population_q1 \n", "6 linP4W_q2 mdcAre_q1 ssbElo_q2 \n", "7 sddAre_q1 sisBpM_q2 mdsAre_q2 \n", "8 sddAre_q2 ltcAre_q1 sdsAre_q3 \n", "9 ltcWRE_q2 sddAre_q3 ssbCCo_q2 \n", "10 lcdMes_q3 mdsAre_q3 linPDE_q1 \n", "11 ldeAre_q1 sdsAre_q3 stcOri_q2 \n", "12 linP4W_q1 mdsAre_q2 stbOri_q2 \n", "13 sdsAre_q2 mtbNDi_q3 ssbCCD_q2 \n", "14 stbCeA_q2 sdcAre_q2 ssbElo_q1 \n", "15 ldsCDL_q3 sscERI_q2 mdsAre_q3 \n", "16 mtdMDi_q1 sscERI_q1 lteOri_q1 \n", "17 mtcWNe_q3 linWID_q1 mtcWNe_q1 \n", "18 lcdMes_q2 population_q1 sscCCo_q2 \n", "19 sdcLAL_q1 sdcAre_q3 stcOri_q1 \n", "20 mtdMDi_q2 population_q3 stcOri_q3 \n", "21 ltcWRE_q1 mtdMDi_q3 population_q2 \n", "22 ldsAre_q2 sdsSPO_q2 lcdMes_q1 \n", "23 sdcAre_q1 stbCeA_q1 stbOri_q3 \n", "24 population_q2 sdcLAL_q2 ssbCCo_q3 \n", "25 lseCWA_q1 linWID_q2 ldsCDL_q1 \n", "26 linWID_q2 ltcWRE_q2 ssbCCM_q3 \n", "27 ssbCCM_q1 sscCCo_q1 linPDE_q3 \n", "28 lteWNB_q1 sddAre_q2 sscCCo_q1 \n", "29 linP4W_q3 ltcWRE_q1 stbOri_q1 \n", "30 linPDE_q2 ssbCCM_q3 linP4W_q2 \n", "31 ldePer_q2 sdsSPO_q1 ssbElo_q3 \n", "32 sdsSPW_q3 night_lights_q1 lteOri_q2 \n", "33 linPDE_q3 ssbCCo_q1 ssbSqu_q3 \n", "34 ssbERI_q1 sdsLen_q1 lddNDe_q2 \n", "35 sdsSWD_q3 ltbIBD_q2 linWID_q1 \n", "36 ssbCCo_q2 night_lights_q2 sisBpM_q2 \n", "37 sdbAre_q1 ltbIBD_q3 ssbSqu_q2 \n", "38 mtdMDi_q3 stbCeA_q2 mtdMDi_q2 \n", "39 sdcLAL_q2 sdsAre_q2 F. Construction_q1 \n", "40 linWID_q1 mtbNDi_q2 ssbERI_q2 \n", "41 misCel_q2 mean_q2 lddNDe_q3 \n", "42 stcOri_q3 sscCCo_q3 lddNDe_q1 \n", "43 sssLin_q2 sdbPer_q3 mdsAre_q1 \n", "44 misCel_q1 lddNDe_q1 sdbPer_q3 \n", "45 stcOri_q2 sdbPer_q2 sscCCo_q3 \n", "46 sdbPer_q1 ldsAre_q3 population_q3 \n", "47 lisCel_q1 ssbElo_q1 ssbSqu_q1 \n", "48 sisBpM_q2 mtcWNe_q1 sscERI_q3 \n", "49 stbOri_q2 sdsAre_q1 lteOri_q3 \n", "\n", " cluster_90 \\\n", "0 sdbPer_q2 \n", "1 ssbERI_q1 \n", "2 ssbCCM_q2 \n", "3 ssbSqu_q3 \n", "4 sdbAre_q2 \n", "5 ssbCCD_q3 \n", "6 K, L, M, N. Financial, real estate, profession... \n", "7 G, I. Distribution, hotels and restaurants_q2 \n", "8 sdbPer_q3 \n", "9 sdbAre_q1 \n", "10 R, S, T, U. Other_q3 \n", "11 ssbCCD_q2 \n", "12 H, J. Transport and communication_q1 \n", "13 ssbERI_q2 \n", "14 ssbCor_q3 \n", "15 ssbSqu_q2 \n", "16 G, I. Distribution, hotels and restaurants_q3 \n", "17 misCel_q3 \n", "18 sdbAre_q3 \n", "19 O,P,Q. Public administration, education and he... \n", "20 misCel_q2 \n", "21 mean_q1 \n", "22 ldePer_q2 \n", "23 K, L, M, N. Financial, real estate, profession... \n", "24 ssbCCM_q1 \n", "25 ssbCCM_q3 \n", "26 H, J. Transport and communication_q3 \n", "27 K, L, M, N. Financial, real estate, profession... \n", "28 ssbElo_q1 \n", "29 Code_18_111_q3 \n", "30 listed_counts \n", "31 H, J. Transport and communication_q2 \n", "32 R, S, T, U. Other_q2 \n", "33 O,P,Q. Public administration, education and he... \n", "34 population_q3 \n", "35 night_lights_q3 \n", "36 population_q2 \n", "37 R, S, T, U. Other_q1 \n", "38 Code_18_111_q2 \n", "39 ssbSqu_q1 \n", "40 ssbCCo_q1 \n", "41 sscERI_q2 \n", "42 mean_q3 \n", "43 night_lights_q1 \n", "44 ssbCCo_q3 \n", "45 culture_nearest \n", "46 sdsSWD_q2 \n", "47 F. Construction_q2 \n", "48 G, I. Distribution, hotels and restaurants_q1 \n", "49 mtbAli_q2 \n", "\n", " cluster_91 \\\n", "0 sdbAre_q1 \n", "1 G, I. Distribution, hotels and restaurants_q2 \n", "2 K, L, M, N. Financial, real estate, profession... \n", "3 R, S, T, U. Other_q2 \n", "4 G, I. Distribution, hotels and restaurants_q3 \n", "5 K, L, M, N. Financial, real estate, profession... \n", "6 C. Manufacturing_q2 \n", "7 sdbPer_q2 \n", "8 ssbCCM_q2 \n", "9 Code_18_211_q1 \n", "10 ssbCCD_q1 \n", "11 G, I. Distribution, hotels and restaurants_q1 \n", "12 sscCCo_q3 \n", "13 F. Construction_q3 \n", "14 H, J. Transport and communication_q2 \n", "15 sicCAR_q3 \n", "16 ssbERI_q2 \n", "17 F. Construction_q2 \n", "18 A, B, D, E. Agriculture, energy and water_q3 \n", "19 lseCWA_q1 \n", "20 linP4W_q3 \n", "21 R, S, T, U. Other_q1 \n", "22 K, L, M, N. Financial, real estate, profession... \n", "23 A, B, D, E. Agriculture, energy and water_q2 \n", "24 linP4W_q1 \n", "25 H, J. Transport and communication_q3 \n", "26 linP3W_q3 \n", "27 R, S, T, U. Other_q3 \n", "28 sicCAR_q2 \n", "29 ssbCCM_q1 \n", "30 sdsSWD_q1 \n", "31 ssbSqu_q1 \n", "32 mdcAre_q3 \n", "33 ltcAre_q1 \n", "34 O,P,Q. Public administration, education and he... \n", "35 sdcLAL_q3 \n", "36 ldsCDL_q1 \n", "37 sdsSPW_q3 \n", "38 ssbERI_q1 \n", "39 lisCel_q2 \n", "40 ssbSqu_q3 \n", "41 mtcWNe_q2 \n", "42 sdbAre_q3 \n", "43 lseCCo_q3 \n", "44 misCel_q1 \n", "45 nearest_water \n", "46 ldsCDL_q3 \n", "47 stcOri_q2 \n", "48 ssbCCD_q2 \n", "49 C. Manufacturing_q3 \n", "\n", " cluster_92 \\\n", "0 ssbCCD_q2 \n", "1 ssbCCM_q2 \n", "2 ssbSqu_q3 \n", "3 K, L, M, N. Financial, real estate, profession... \n", "4 sdbPer_q2 \n", "5 sdbPer_q3 \n", "6 sdbAre_q2 \n", "7 G, I. Distribution, hotels and restaurants_q2 \n", "8 ssbCor_q3 \n", "9 ssbCCD_q3 \n", "10 ssbERI_q1 \n", "11 ssbSqu_q2 \n", "12 O,P,Q. Public administration, education and he... \n", "13 F. Construction_q3 \n", "14 ssbCCM_q3 \n", "15 ssbERI_q2 \n", "16 ssbCor_q2 \n", "17 R, S, T, U. Other_q3 \n", "18 sdbAre_q3 \n", "19 mean_q1 \n", "20 K, L, M, N. Financial, real estate, profession... \n", "21 G, I. Distribution, hotels and restaurants_q3 \n", "22 sicCAR_q3 \n", "23 ssbCCD_q1 \n", "24 misCel_q3 \n", "25 sscERI_q3 \n", "26 R, S, T, U. Other_q2 \n", "27 H, J. Transport and communication_q3 \n", "28 sdcAre_q3 \n", "29 Code_18_111_q2 \n", "30 ssbSqu_q1 \n", "31 H, J. Transport and communication_q2 \n", "32 Code_18_111_q3 \n", "33 lseCWA_q1 \n", "34 ssbCCM_q1 \n", "35 ltcAre_q1 \n", "36 G, I. Distribution, hotels and restaurants_q1 \n", "37 ssbElo_q2 \n", "38 K, L, M, N. Financial, real estate, profession... \n", "39 sdbAre_q1 \n", "40 ssbERI_q3 \n", "41 listed_counts \n", "42 lcnClo_q1 \n", "43 sdbPer_q1 \n", "44 sisBpM_q3 \n", "45 lcdMes_q1 \n", "46 night_lights_q2 \n", "47 sicCAR_q2 \n", "48 O,P,Q. Public administration, education and he... \n", "49 population_q2 \n", "\n", " cluster_94 \\\n", "0 ssbERI_q2 \n", "1 ssbCCM_q2 \n", "2 ssbCCD_q2 \n", "3 ssbCor_q2 \n", "4 K, L, M, N. Financial, real estate, profession... \n", "5 G, I. Distribution, hotels and restaurants_q2 \n", "6 sdbPer_q2 \n", "7 ssbSqu_q3 \n", "8 K, L, M, N. Financial, real estate, profession... \n", "9 ssbCCM_q1 \n", "10 ssbCCD_q3 \n", "11 F. Construction_q3 \n", "12 F. Construction_q2 \n", "13 K, L, M, N. Financial, real estate, profession... \n", "14 sicCAR_q3 \n", "15 mtbAli_q2 \n", "16 R, S, T, U. Other_q3 \n", "17 sdcAre_q1 \n", "18 mean_q1 \n", "19 ssbSqu_q1 \n", "20 H, J. Transport and communication_q2 \n", "21 ssbSqu_q2 \n", "22 R, S, T, U. Other_q1 \n", "23 C. Manufacturing_q2 \n", "24 ssbCCM_q3 \n", "25 sdbAre_q1 \n", "26 lseCWA_q2 \n", "27 Code_18_111_q2 \n", "28 sdbAre_q2 \n", "29 G, I. Distribution, hotels and restaurants_q3 \n", "30 ssbCCD_q1 \n", "31 R, S, T, U. Other_q2 \n", "32 lisCel_q2 \n", "33 H, J. Transport and communication_q3 \n", "34 mtbNDi_q3 \n", "35 sicCAR_q1 \n", "36 A, B, D, E. Agriculture, energy and water_q2 \n", "37 O,P,Q. Public administration, education and he... \n", "38 H, J. Transport and communication_q1 \n", "39 sdbAre_q3 \n", "40 sdbPer_q1 \n", "41 lcnClo_q3 \n", "42 sicCAR_q2 \n", "43 mtcWNe_q3 \n", "44 ssbERI_q1 \n", "45 sssLin_q3 \n", "46 ldsAre_q1 \n", "47 mtbNDi_q2 \n", "48 misCel_q2 \n", "49 sdbCoA_q3 \n", "\n", " cluster_95 \n", "0 sicCAR_q2 \n", "1 C. Manufacturing_q2 \n", "2 R, S, T, U. Other_q2 \n", "3 G, I. Distribution, hotels and restaurants_q2 \n", "4 sicCAR_q1 \n", "5 C. Manufacturing_q3 \n", "6 ssbCCM_q2 \n", "7 sdbPer_q2 \n", "8 sdsSPO_q2 \n", "9 mean_q3 \n", "10 ssbSqu_q1 \n", "11 sdbAre_q1 \n", "12 H, J. Transport and communication_q3 \n", "13 R, S, T, U. Other_q1 \n", "14 ssbCCD_q1 \n", "15 sisBpM_q3 \n", "16 sdcAre_q1 \n", "17 O,P,Q. Public administration, education and he... \n", "18 H, J. Transport and communication_q2 \n", "19 A, B, D, E. Agriculture, energy and water_q2 \n", "20 ltcAre_q3 \n", "21 ldsCDL_q2 \n", "22 mdcAre_q2 \n", "23 H, J. Transport and communication_q1 \n", "24 G, I. Distribution, hotels and restaurants_q1 \n", "25 ldsAre_q1 \n", "26 ldeAre_q1 \n", "27 listed_counts \n", "28 K, L, M, N. Financial, real estate, profession... \n", "29 mtbNDi_q3 \n", "30 mtcWNe_q3 \n", "31 stcOri_q2 \n", "32 sisBpM_q2 \n", "33 ssbCCD_q3 \n", "34 sscCCo_q3 \n", "35 sssLin_q3 \n", "36 sdsSWD_q1 \n", "37 K, L, M, N. Financial, real estate, profession... \n", "38 lseERI_q3 \n", "39 G, I. Distribution, hotels and restaurants_q3 \n", "40 R, S, T, U. Other_q3 \n", "41 ssbElo_q2 \n", "42 F. Construction_q2 \n", "43 lieWCe_q1 \n", "44 O,P,Q. Public administration, education and he... \n", "45 ldsAre_q3 \n", "46 F. Construction_q3 \n", "47 ltbIBD_q3 \n", "48 sicCAR_q3 \n", "49 sdbCoA_q3 " ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "chars = [c for c in imps.columns if 'vals' not in c]\n", "imps[sorted(chars)]" ] }, { "cell_type": "code", "execution_count": 25, "id": "d16bf914", "metadata": {}, "outputs": [], "source": [ "imps.to_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/per_cluster_importance.pq\")" ] }, { "cell_type": "code", "execution_count": 3, "id": "ae00a0a6", "metadata": {}, "outputs": [], "source": [ "ims = pd.read_parquet(\"../../urbangrammar_samba/spatial_signatures/clustering_data/per_cluster_importance.pq\")" ] }, { "cell_type": "code", "execution_count": 104, "id": "bea8b63d-097a-4d49-b06e-61e12011c80d", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Index(['cluster_4', 'cluster_0', 'cluster_6', 'cluster_1', 'cluster_21',\n", " 'cluster_7', 'cluster_3', 'cluster_5', 'cluster_90', 'cluster_20',\n", " 'cluster_8', 'cluster_22', 'cluster_92', 'cluster_94', 'cluster_91',\n", " 'cluster_95'],\n", " dtype='object')" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" } ], "source": [ "names.columns" ] }, { "cell_type": "code", "execution_count": 136, "id": "722ec8bb-1058-41c9-a52a-9c5e03ad496b", "metadata": {}, "outputs": [], "source": [ "n_chars = 10" ] }, { "cell_type": "code", "execution_count": 137, "id": "69f3e8c9-9892-4e7e-a7b7-f4ae1d8cfac1", "metadata": {}, "outputs": [], "source": [ "names = ims[[c for c in ims.columns if \"_vals\" not in c]].head(n_chars)\n", "values = ims[[c for c in ims.columns if \"_vals\" in c]].head(n_chars)" ] }, { "cell_type": "code", "execution_count": 9, "id": "a3b84923-c73d-440a-a964-92ae1a4f7e9b", "metadata": { "tags": [] }, "outputs": [], "source": [ "coded = {\n", " 'population': 'func_population',\n", " 'night_lights': 'func_night_lights',\n", " 'A, B, D, E. Agriculture, energy and water': 'func_workplace_abde',\n", " 'C. Manufacturing': 'func_workplace_c',\n", " 'F. Construction': 'func_workplace_f',\n", " 'G, I. Distribution, hotels and restaurants': 'func_workplace_gi',\n", " 'H, J. Transport and communication': 'func_workplace_hj',\n", " 'K, L, M, N. Financial, real estate, professional and administrative activities': 'func_workplace_klmn',\n", " 'O,P,Q. Public administration, education and health': 'func_workplace_opq',\n", " 'R, S, T, U. Other': 'func_workplace_rstu',\n", " 'Code_18_124': 'func_corine_124',\n", " 'Code_18_211': 'func_corine_211',\n", " 'Code_18_121': 'func_corine_121',\n", " 'Code_18_421': 'func_corine_421',\n", " 'Code_18_522': 'func_corine_522',\n", " 'Code_18_142': 'func_corine_142',\n", " 'Code_18_141': 'func_corine_141',\n", " 'Code_18_112': 'func_corine_112',\n", " 'Code_18_231': 'func_corine_231',\n", " 'Code_18_311': 'func_corine_311',\n", " 'Code_18_131': 'func_corine_131',\n", " 'Code_18_123': 'func_corine_123',\n", " 'Code_18_122': 'func_corine_122',\n", " 'Code_18_512': 'func_corine_512',\n", " 'Code_18_243': 'func_corine_243',\n", " 'Code_18_313': 'func_corine_313',\n", " 'Code_18_412': 'func_corine_412',\n", " 'Code_18_321': 'func_corine_321',\n", " 'Code_18_322': 'func_corine_322',\n", " 'Code_18_324': 'func_corine_324',\n", " 'Code_18_111': 'func_corine_111',\n", " 'Code_18_423': 'func_corine_423',\n", " 'Code_18_523': 'func_corine_523',\n", " 'Code_18_312': 'func_corine_312',\n", " 'Code_18_133': 'func_corine_133',\n", " 'Code_18_333': 'func_corine_333',\n", " 'Code_18_332': 'func_corine_332',\n", " 'Code_18_411': 'func_corine_411',\n", " 'Code_18_132': 'func_corine_132',\n", " 'Code_18_222': 'func_corine_222',\n", " 'Code_18_242': 'func_corine_242',\n", " 'Code_18_331': 'func_corine_331',\n", " 'Code_18_511': 'func_corine_511',\n", " 'Code_18_334': 'func_corine_334',\n", " 'Code_18_244': 'func_corine_244',\n", " 'Code_18_521': 'func_corine_521',\n", " 'mean': 'func_ndvi',\n", " 'supermarkets_nearest': 'func_supermarkets_nearest',\n", " 'supermarkets_counts': 'func_supermarkets_counts',\n", " 'listed_nearest': 'func_listed_nearest',\n", " 'listed_counts': 'func_listed_counts',\n", " 'fhrs_nearest': 'func_fhrs_nearest',\n", " 'fhrs_counts': 'func_fhrs_counts',\n", " 'culture_nearest': 'func_culture_nearest',\n", " 'culture_counts': 'func_culture_counts',\n", " 'nearest_water': 'func_water_nearest',\n", " 'nearest_retail_centre': 'func_retail_centrenearest',\n", " 'sdbAre': 'form_sdbAre',\n", " 'sdbPer': 'form_sdbPer',\n", " 'sdbCoA': 'form_sdbCoA',\n", " 'ssbCCo': 'form_ssbCCo',\n", " 'ssbCor': 'form_ssbCor',\n", " 'ssbSqu': 'form_ssbSqu',\n", " 'ssbERI': 'form_ssbERI',\n", " 'ssbElo': 'form_ssbElo',\n", " 'ssbCCM': 'form_ssbCCM',\n", " 'ssbCCD': 'form_ssbCCD',\n", " 'stbOri': 'form_stbOri',\n", " 'sdcLAL': 'form_sdcLAL',\n", " 'sdcAre': 'form_sdcAre',\n", " 'sscCCo': 'form_sscCCo',\n", " 'sscERI': 'form_sscERI',\n", " 'stcOri': 'form_stcOri',\n", " 'sicCAR': 'form_sicCAR',\n", " 'stbCeA': 'form_stbCeA',\n", " 'mtbAli': 'form_mtbAli',\n", " 'mtbNDi': 'form_mtbNDi',\n", " 'mtcWNe': 'form_mtcWNe',\n", " 'mdcAre': 'form_mdcAre',\n", " 'ltcWRE': 'form_ltcWRE',\n", " 'ltbIBD': 'form_ltbIBD',\n", " 'sdsSPW': 'form_sdsSPW',\n", " 'sdsSWD': 'form_sdsSWD',\n", " 'sdsSPO': 'form_sdsSPO',\n", " 'sdsLen': 'form_sdsLen',\n", " 'sssLin': 'form_sssLin',\n", " 'ldsMSL': 'form_ldsMSL',\n", " 'mtdDeg': 'form_mtdDeg',\n", " 'lcdMes': 'form_lcdMes',\n", " 'linP3W': 'form_linP3W',\n", " 'linP4W': 'form_linP4W',\n", " 'linPDE': 'form_linPDE',\n", " 'lcnClo': 'form_lcnClo',\n", " 'ldsCDL': 'form_ldsCDL',\n", " 'xcnSCl': 'form_xcnSCl',\n", " 'mtdMDi': 'form_mtdMDi',\n", " 'lddNDe': 'form_lddNDe',\n", " 'linWID': 'form_linWID',\n", " 'stbSAl': 'form_stbSAl',\n", " 'sddAre': 'form_sddAre',\n", " 'sdsAre': 'form_sdsAre',\n", " 'sisBpM': 'form_sisBpM',\n", " 'misCel': 'form_misCel',\n", " 'mdsAre': 'form_mdsAre',\n", " 'lisCel': 'form_lisCel',\n", " 'ldsAre': 'form_ldsAre',\n", " 'ltcRea': 'form_ltcRea',\n", " 'ltcAre': 'form_ltcAre',\n", " 'ldeAre': 'form_ldeAre',\n", " 'ldePer': 'form_ldePer',\n", " 'lseCCo': 'form_lseCCo',\n", " 'lseERI': 'form_lseERI',\n", " 'lseCWA': 'form_lseCWA',\n", " 'lteOri': 'form_lteOri',\n", " 'lteWNB': 'form_lteWNB',\n", " 'lieWCe': 'form_lieWCe',\n", "}" ] }, { "cell_type": "code", "execution_count": 107, "id": "b40c86c4-cf9b-42bc-85e1-310e982aedd9", "metadata": {}, "outputs": [], "source": [ "types = {\n", " 0: \"Countryside agriculture\",\n", " 1: \"Accessible suburbia\",\n", " 3: \"Open sprawl\",\n", " 4: \"Wild countryside\",\n", " 5: \"Warehouse/Park land\",\n", " 6: \"Gridded residential quarters\",\n", " 7: \"Urban buffer\",\n", " 8: \"Disconnected suburbia\",\n", " 20: \"Dense residential neighbourhoods\",\n", " 21: \"Connected residential neighbourhoods\",\n", " 22: \"Dense urban neighbourhoods\",\n", " 90: \"Local urbanity\",\n", " 91: \"Concentrated urbanity\",\n", " 92: \"Regional urbanity\",\n", " 94: \"Metropolitan urbanity\",\n", " 95: \"Hyper concentrated urbanity\",\n", " 93: \"outlier\",\n", " 96: \"outlier\",\n", " 97: \"outlier\",\n", " 98: \"outlier\",\n", "}" ] }, { "cell_type": "code", "execution_count": 149, "id": "bd520731-dc28-453d-9ad1-d09b7ec20138", "metadata": { "tags": [] }, "outputs": [], "source": [ "def cmap(name):\n", " if \"_q\" in name:\n", " name = name[:-3]\n", " if coded[name][:4] == \"form\":\n", " return ugg.COLORS[1]\n", " if coded[name][:4] == \"func\":\n", " return ugg.COLORS[4]\n", " raise ValueError()" ] }, { "cell_type": "code", "execution_count": 150, "id": "3d7201a0-7896-416e-a42b-a86fb425e949", "metadata": {}, "outputs": [], "source": [ "x = np.repeat(np.arange(0, 16), n_chars)\n", "y = np.tile(np.arange(0, n_chars), 16) * - 1\n", "colors = names.applymap(cmap).values.T.flatten()\n", "alpha = values.values.T.flatten() / values.values.T.flatten().max()\n", "ticks = [types[int(c[8:])] for c in names.columns]" ] }, { "cell_type": "code", "execution_count": 152, "id": "9299cd20-a51b-4954-81b6-84a23dd8d327", "metadata": {}, "outputs": [ { "data": { "image/png": "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XgS8hnKM8HrbD1WOFBExIUjaCZjJoJMRtr9RLVBERMQEkCJWRESMiaTLbb9hafciImIoSWcBGwJzgcXNbds+slqoiIiICSA9sSIiYrlIWhVYHVi7OQ7Ta+Y+HXhZtWARERPHdsCmztPkiIiI5ZIiVkRELK/3AbMpBas5DBSxHge+WClTRMREsgB4CXB/7SARERETSY4TRkTEmEg6wvYptXNEREw0kq4AtgJuZNBUV9t718oUERExEWQnVkREjNWzkta0/Sg8N2nrANtfqhsrIqL1jq8dICIiYiLKTqyIiBgTSXNtbzXs3q22t64UKSJiwpD0CmAj25dJWh2Yanth7VwRERFtNqV2gIiImLCmSOr1w0LSVGBaxTwREROCpEOBc4EvN7fWBb5TLVBERMQEkSJWRESM1SXAOZLeIGlX4Gzg4sqZIiImgsOBWZSBGNj+CfDiqokiIiImgPTEioiIsfooZVLh31ImFF4KnFY1UUTExLDI9tO9zaySVgLS4yMiImIpUsSKiIgxsf2spK8DP7R9d+08ERETyFWSjgFWk7Q7cBhwYeVMERERrZfjhBERMSaS9gbm0hwhlLSVpAuqhoqImBg+BjwIzKfsaP0+8PGqiSIiIiaATCeMiIgxkTQH2BW4sjeRUNI821vUTRYR0X6SZgDYfrB2loiIiIkiO7EiImKsnrH9WO0QEREThYrjJT0E3AXcLelBSX9fO1tERMREkCJWRESM1QJJ7wSmStpI0inAdbVDRUS02GzKVMLtbb/I9guBHYBZko6umiwiImICyHHCiIgYE0mrA8cCe1CmE14CnGj7qarBIiJaStKtwO62Hxp2fwZwae9odkRERIwsRayIiIiIiHEgaYHtzZf3vYiIiChWqh0gIiImJkkbAx8CZjLo54ntXWtliohouafH+F5ERESQnVgRETFGkm4DTgXmAIt7923PqRYqIqLFJC0GnhjpLWBV2yuPc6SIiIgJJUWsiIgYE0lzbG9bO0dERERERHRDilgRETEmko4HfgucDyzq3bf9SK1MERERERExeaWIFRERYyLpnhFu2/YG4x4mIiIiIiImvRSxIiIiIiIiIiKi9TKdMCIixkzSTiw5nfAb1QJFRERERMSklSJWRESMiaSzgA2BuQxMJzSQIlZERERERPzR5ThhRESMiaQ7gU2dHyQRERERETEOptQOEBERE9YC4CW1Q0RERERERDfkOGFERIzV2sAdkm4EFvVu2t67XqSIiIiIiJisUsSKiIixOr52gIiIiIiI6I70xIqIiDGTtA6wfXN5o+3f1swTERERERGTV3piRUTEmEh6O3AjsB/wduAGSfvWTRUREREREZNVdmJFRMSYSLoN2L23+0rSDOAy21vWTRYREREREZNRdmJFRMRYTRl2fPBh8nMlIiIiIiJWkDR2j4iIsbpY0iXA2c31/sBFFfNERERERMQkluOEERExZpL2AV4LCLja9vmVI0VERERExCSVIlZERCwXSX8CrGP72mH3dwZ+Zfu/6ySLiIiIiIjJLL1LIiJieX0eWDjC/Seb9yIiIiIiIv7oUsSKiIjlNdP2vOE3bd8MzBz/OBERERER0QUpYkVExPJadZT3Vhu3FBERERER0SkpYkVExPK6SdKhw29Kei8wp0KeiIiIiIjogDR2j4iI5SJpHeB84GkGilbbAdOAt9n+Ta1sERERERExeaWIFRERYyJpF2Dz5vJ22z+smSciIiIiIia3FLEiIiIiIiIiIqL10hMrIiIiIiIiIiJaL0WsiIiIiIiIiIhovRSxIiIiIiIiIiKi9VLEioiIiIiIiIiI1ksRKyIiIiIiIiIiWu//A+3lyuOurl4zAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(16, n_chars))\n", "ax.scatter(x, y, alpha=alpha, color=colors, marker=\"s\", s=2500)\n", "plt.tight_layout()\n", "# ax.set_axis_off()\n", "plt.xticks(np.arange(0, 16), ticks, rotation='vertical')\n", "plt.yticks([0, -9], [\"top predictor\", \"10th predictor\"])\n", "sns.despine(left=True, bottom=True)\n", "# plt.savefig(\"figs/feature_imp_10.pdf\")" ] }, { "cell_type": "code", "execution_count": null, "id": "7ba55279-1f81-47e3-807a-5b122a90ae7c", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.9.7" } }, "nbformat": 4, "nbformat_minor": 5 }