diff --git a/.~lock.Schrick-Noah_Learning-Practice-4.odt# b/.~lock.Schrick-Noah_Learning-Practice-4.odt# new file mode 100644 index 0000000..f64716c --- /dev/null +++ b/.~lock.Schrick-Noah_Learning-Practice-4.odt# @@ -0,0 +1 @@ +,noah,NovaArchSys,20.02.2023 23:50,file:///home/noah/.config/libreoffice/4; \ No newline at end of file diff --git a/Schrick-Noah_Learning-Practice-4.ipynb b/Schrick-Noah_Learning-Practice-4.ipynb index a1dcae3..513619b 100644 --- a/Schrick-Noah_Learning-Practice-4.ipynb +++ b/Schrick-Noah_Learning-Practice-4.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 122, + "execution_count": 150, "metadata": {}, "outputs": [], "source": [ @@ -11,14 +11,20 @@ "# Professor: Dr. Abdulrashid, Spring 2023\n", "# Noah L. Schrick - 1492657\n", "\n", + "%matplotlib inline\n", + "\n", + "from pathlib import Path\n", + "\n", "import pandas as pd\n", - "import numpy as np\n", + "from sklearn import preprocessing\n", "from sklearn.metrics import pairwise\n", - "import matplotlib.pylab as plt\n", "from scipy.cluster.hierarchy import dendrogram, linkage, fcluster\n", - "from tabulate import tabulate\n", - "from scipy import cluster\n", + "from sklearn.cluster import KMeans\n", + "import matplotlib.pylab as plt\n", "import seaborn as sns\n", + "from pandas.plotting import parallel_coordinates\n", + "\n", + "\n", "\n", "pd.options.mode.chained_assignment = None # default='warn'\n" ] @@ -50,7 +56,7 @@ }, { "cell_type": "code", - "execution_count": 134, + "execution_count": 168, "metadata": {}, "outputs": [ { @@ -67,8 +73,500 @@ "name": "stdout", "output_type": "stream", "text": [ + " # appli. rec'd # appl. accepted # new stud. enrolled \\\n", + "mean -1.885729e-17 1.131437e-17 3.630029e-17 \n", + "median -3.685865e-01 -3.338810e-01 -3.688211e-01 \n", + "\n", + " % new stud. from top 10% % new stud. from top 25% # FT undergrad \\\n", + "mean 9.051500e-17 -3.771458e-17 -2.074302e-17 \n", + "median -2.712639e-01 -8.127227e-02 -3.957697e-01 \n", + "\n", + " # PT undergrad in-state tuition out-of-state tuition room \\\n", + "mean 3.771458e-17 7.354344e-17 2.130874e-16 -8.297208e-17 \n", + "median -3.224580e-01 8.181657e-02 -1.102035e-01 -1.838341e-01 \n", + "\n", + " board add. fees estim. book costs estim. personal $ \\\n", + "mean -2.753165e-16 3.771458e-18 1.131437e-17 9.805791e-17 \n", + "median -7.045916e-02 -2.782627e-01 -2.989446e-01 -1.641725e-01 \n", + "\n", + " % fac. w/PHD stud./fac. ratio Graduation rate \n", + "mean 2.413733e-16 1.508583e-17 -3.846887e-16 \n", + "median 1.675262e-01 -1.443072e-01 2.410147e-02 \n", + " [0 0] [0 0]\n", + "------- -------\n", + " 0 AK\n", + " 2 AK\n", + " 9 AL\n", + " 11 AL\n", + " 21 AL\n", + " 25 AL\n", + " 31 AR\n", + " 37 AR\n", + " 38 AR\n", + " 45 AR\n", + " 48 AZ\n", + " 49 AZ\n", + " 62 CA\n", + " 76 CA\n", + " 77 CA\n", + " 78 CA\n", + " 80 CA\n", + " 89 CA\n", + " 91 CA\n", + " 94 CA\n", + " 95 CA\n", + " 96 CA\n", + " 107 CA\n", + " 109 CA\n", + " 111 CA\n", + " 119 CA\n", + " 120 CA\n", + " 121 CO\n", + " 122 CO\n", + " 125 CO\n", + " 126 CO\n", + " 129 CO\n", + " 133 CO\n", + " 138 CT\n", + " 139 CT\n", + " 145 CT\n", + " 147 CT\n", + " 148 CT\n", + " 150 CT\n", + " 151 CT\n", + " 152 CT\n", + " 153 CT\n", + " 155 CT\n", + " 157 DC\n", + " 159 DC\n", + " 160 DC\n", + " 163 DC\n", + " 167 DE\n", + " 168 DE\n", + " 171 FL\n", + " 173 FL\n", + " 175 FL\n", + " 180 FL\n", + " 185 FL\n", + " 187 FL\n", + " 189 FL\n", + " 193 FL\n", + " 207 GA\n", + " 209 GA\n", + " 219 GA\n", + " 227 GA\n", + " 229 GA\n", + " 234 GA\n", + " 235 GA\n", + " 238 HI\n", + " 243 IA\n", + " 244 IA\n", + " 245 IA\n", + " 246 IA\n", + " 247 IA\n", + " 249 IA\n", + " 250 IA\n", + " 251 IA\n", + " 257 IA\n", + " 258 IA\n", + " 259 IA\n", + " 261 IA\n", + " 262 IA\n", + " 263 IA\n", + " 264 IA\n", + " 267 IA\n", + " 268 IA\n", + " 269 IA\n", + " 271 ID\n", + " 274 ID\n", + " 276 IL\n", + " 286 IL\n", + " 293 IL\n", + " 296 IL\n", + " 297 IL\n", + " 301 IL\n", + " 303 IL\n", + " 311 IL\n", + " 316 IL\n", + " 318 IL\n", + " 319 IL\n", + " 320 IL\n", + " 321 IL\n", + " 322 IL\n", + " 323 IL\n", + " 325 IN\n", + " 328 IN\n", + " 329 IN\n", + " 330 IN\n", + " 331 IN\n", + " 332 IN\n", + " 335 IN\n", + " 339 IN\n", + " 348 IN\n", + " 351 IN\n", + " 358 IN\n", + " 359 IN\n", + " 361 IN\n", + " 364 IN\n", + " 365 IN\n", + " 367 KS\n", + " 368 KS\n", + " 369 KS\n", + " 375 KS\n", + " 376 KS\n", + " 381 KS\n", + " 386 KS\n", + " 389 KY\n", + " 394 KY\n", + " 397 KY\n", + " 399 KY\n", + " 402 KY\n", + " 404 KY\n", + " 411 LA\n", + " 414 LA\n", + " 417 LA\n", + " 420 LA\n", + " 427 LA\n", + " 432 MA\n", + " 435 MA\n", + " 437 MA\n", + " 440 MA\n", + " 441 MA\n", + " 442 MA\n", + " 443 MA\n", + " 450 MA\n", + " 451 MA\n", + " 453 MA\n", + " 455 MA\n", + " 456 MA\n", + " 459 MA\n", + " 461 MA\n", + " 462 MA\n", + " 463 MA\n", + " 466 MA\n", + " 476 MA\n", + " 478 MA\n", + " 480 MA\n", + " 482 MA\n", + " 483 MA\n", + " 493 MD\n", + " 499 MD\n", + " 504 MD\n", + " 510 ME\n", + " 512 ME\n", + " 513 ME\n", + " 514 ME\n", + " 519 ME\n", + " 521 ME\n", + " 524 MI\n", + " 525 MI\n", + " 526 MI\n", + " 527 MI\n", + " 536 MI\n", + " 537 MI\n", + " 540 MI\n", + " 542 MI\n", + " 543 MI\n", + " 550 MI\n", + " 551 MI\n", + " 555 MI\n", + " 557 MI\n", + " 562 MN\n", + " 563 MN\n", + " 564 MN\n", + " 566 MN\n", + " 570 MN\n", + " 571 MN\n", + " 576 MN\n", + " 577 MN\n", + " 578 MN\n", + " 581 MN\n", + " 583 MN\n", + " 586 MO\n", + " 588 MO\n", + " 590 MO\n", + " 594 MO\n", + " 597 MO\n", + " 598 MO\n", + " 604 MO\n", + " 605 MO\n", + " 606 MO\n", + " 607 MO\n", + " 613 MO\n", + " 614 MO\n", + " 615 MO\n", + " 616 MO\n", + " 617 MO\n", + " 625 MS\n", + " 626 MS\n", + " 628 MS\n", + " 629 MS\n", + " 632 MS\n", + " 637 MT\n", + " 641 MT\n", + " 645 NC\n", + " 646 NC\n", + " 650 NC\n", + " 653 NC\n", + " 654 NC\n", + " 655 NC\n", + " 657 NC\n", + " 658 NC\n", + " 659 NC\n", + " 661 NC\n", + " 665 NC\n", + " 666 NC\n", + " 669 NC\n", + " 672 NC\n", + " 673 NC\n", + " 675 NC\n", + " 676 NC\n", + " 680 NC\n", + " 681 NC\n", + " 683 NC\n", + " 686 NC\n", + " 687 NC\n", + " 688 NC\n", + " 690 ND\n", + " 692 ND\n", + " 695 ND\n", + " 696 ND\n", + " 697 ND\n", + " 701 NE\n", + " 702 NE\n", + " 703 NE\n", + " 704 NE\n", + " 709 NE\n", + " 711 NE\n", + " 712 NE\n", + " 715 NH\n", + " 716 NH\n", + " 719 NH\n", + " 722 NH\n", + " 723 NH\n", + " 725 NH\n", + " 731 NJ\n", + " 732 NJ\n", + " 735 NJ\n", + " 736 NJ\n", + " 737 NJ\n", + " 738 NJ\n", + " 741 NJ\n", + " 743 NJ\n", + " 744 NJ\n", + " 745 NJ\n", + " 749 NJ\n", + " 750 NJ\n", + " 753 NJ\n", + " 755 NM\n", + " 756 NM\n", + " 768 NY\n", + " 770 NY\n", + " 771 NY\n", + " 776 NY\n", + " 777 NY\n", + " 781 NY\n", + " 782 NY\n", + " 788 NY\n", + " 791 NY\n", + " 792 NY\n", + " 793 NY\n", + " 794 NY\n", + " 800 NY\n", + " 802 NY\n", + " 803 NY\n", + " 813 NY\n", + " 814 NY\n", + " 822 NY\n", + " 823 NY\n", + " 824 NY\n", + " 825 NY\n", + " 827 NY\n", + " 830 NY\n", + " 832 NY\n", + " 833 NY\n", + " 835 NY\n", + " 836 NY\n", + " 837 NY\n", + " 838 NY\n", + " 839 NY\n", + " 840 NY\n", + " 842 NY\n", + " 843 NY\n", + " 844 NY\n", + " 845 NY\n", + " 847 NY\n", + " 850 NY\n", + " 859 NY\n", + " 868 OH\n", + " 869 OH\n", + " 871 OH\n", + " 873 OH\n", + " 874 OH\n", + " 877 OH\n", + " 878 OH\n", + " 881 OH\n", + " 884 OH\n", + " 888 OH\n", + " 890 OH\n", + " 891 OH\n", + " 892 OH\n", + " 893 OH\n", + " 895 OH\n", + " 897 OH\n", + " 900 OH\n", + " 902 OH\n", + " 903 OH\n", + " 906 OH\n", + " 910 OH\n", + " 911 OH\n", + " 915 OH\n", + " 916 OH\n", + " 927 OK\n", + " 928 OK\n", + " 930 OK\n", + " 931 OK\n", + " 932 OK\n", + " 938 OK\n", + " 942 OR\n", + " 944 OR\n", + " 949 OR\n", + " 951 OR\n", + " 954 OR\n", + " 957 PA\n", + " 958 PA\n", + " 962 PA\n", + " 964 PA\n", + " 966 PA\n", + " 968 PA\n", + " 970 PA\n", + " 973 PA\n", + " 974 PA\n", + " 976 PA\n", + " 977 PA\n", + " 978 PA\n", + " 985 PA\n", + " 986 PA\n", + " 987 PA\n", + " 988 PA\n", + " 990 PA\n", + " 991 PA\n", + " 993 PA\n", + " 995 PA\n", + " 996 PA\n", + " 1000 PA\n", + " 1008 PA\n", + " 1009 PA\n", + " 1013 PA\n", + " 1016 PA\n", + " 1019 PA\n", + " 1020 PA\n", + " 1022 PA\n", + " 1023 PA\n", + " 1024 PA\n", + " 1025 PA\n", + " 1026 PA\n", + " 1028 PA\n", + " 1029 PA\n", + " 1030 PA\n", + " 1031 PA\n", + " 1032 PA\n", + " 1034 PA\n", + " 1035 PA\n", + " 1036 PA\n", + " 1038 PA\n", + " 1040 RI\n", + " 1042 RI\n", + " 1046 RI\n", + " 1047 RI\n", + " 1050 SC\n", + " 1051 SC\n", + " 1052 SC\n", + " 1054 SC\n", + " 1058 SC\n", + " 1059 SC\n", + " 1060 SC\n", + " 1063 SC\n", + " 1064 SC\n", + " 1074 SD\n", + " 1078 SD\n", + " 1080 SD\n", + " 1083 SD\n", + " 1086 TN\n", + " 1088 TN\n", + " 1089 TN\n", + " 1094 TN\n", + " 1095 TN\n", + " 1097 TN\n", + " 1100 TN\n", + " 1101 TN\n", + " 1104 TN\n", + " 1106 TN\n", + " 1109 TN\n", + " 1110 TN\n", + " 1114 TN\n", + " 1116 TN\n", + " 1117 TN\n", + " 1120 TX\n", + " 1124 TX\n", + " 1126 TX\n", + " 1130 TX\n", + " 1131 TX\n", + " 1137 TX\n", + " 1138 TX\n", + " 1142 TX\n", + " 1145 TX\n", + " 1151 TX\n", + " 1153 TX\n", + " 1155 TX\n", + " 1157 TX\n", + " 1162 TX\n", + " 1163 TX\n", + " 1165 TX\n", + " 1167 TX\n", + " 1171 TX\n", + " 1175 TX\n", + " 1176 TX\n", + " 1180 UT\n", + " 1184 UT\n", + " 1187 VA\n", + " 1188 VA\n", + " 1191 VA\n", + " 1193 VA\n", + " 1194 VA\n", + " 1195 VA\n", + " 1197 VA\n", + " 1203 VA\n", + " 1205 VA\n", + " 1211 VA\n", + " 1213 VA\n", + " 1217 VA\n", + " 1220 VA\n", + " 1221 VA\n", + " 1222 VA\n", + " 1226 VT\n", + " 1230 VT\n", + " 1231 VT\n", + " 1235 VT\n", + " 1236 VT\n", + " 1237 VT\n", + " 1238 VT\n", + " 1245 WA\n", + " 1252 WA\n", + " 1256 WI\n", + " 1257 WI\n", + " 1261 WI\n", + " 1267 WI\n", + " 1268 WI\n", + " 1272 WI\n", + " 1273 WI\n", + " 1274 WI\n", + " 1283 WI\n", + " 1284 WV\n", + " 1291 WV\n", + " 1301 WY\n", "Colorado Christian University\n", - "475 NaN\n", + "475 3.771458e-17\n", "Name: # PT undergrad, dtype: float64\n" ] } @@ -108,17 +606,20 @@ "# c: Compare the summary statistics for each cluster\n", "cutree = cluster.hierarchy.cut_tree(Z, n_clusters=[5, 10])\n", "clust_stats = university_df_num_norm.agg(['mean', 'median'])\n", + "print(clust_stats)\n", "\n", "# d: Use the categorical measurements to categorize\n", "state_table = tabulate(university_df[['State']], cutree)\n", "pub_priv_table = tabulate(university_df[['Public (1)/ Private (2)']], cutree)\n", - "\n", - "#university_df_num_norm.index = ['{}: {}'.format(cluster, state) for cluster, state in zip(uni_hclust, university_df.index)]\n", - "#sns.clustermap(university_df_num_norm, method='average', col_cluster=False, cmap=\"mako_r\")\n", - "#plt.show()\n", + "print(state_table)\n", "\n", "# e: Other external information\n", - "# Text answer\n", + "# There are multiple external factors that can explain these clusters. Notably, that these clusters are\n", + "# built with only partial information. Since the pre-processing step removed all entries with NaNs, the\n", + "# total number of entries was reduced from 1302 to 471, which is a very large amount of missing data.\n", + "# Second, school funding priorities can affect some of the school data. Depending on how funding is allocated\n", + "# to sports, liberal arts, research, campus maintenance, events, etc, the underlying data may change.\n", + "# The socioeconomic factors involved with private vs public universities may also change the data.\n", "\n", "# f: Compute the Euclidean distance of this record from each of the clusters that you found above (using only the measurements that you have)\n", "tufts_df = raw_university_df.loc[raw_university_df['College Name'] == 'Tufts University']\n", @@ -141,50 +642,135 @@ "metadata": {}, "source": [ "# Problem 15.4\n", - "An equities analyst is studying the pharmaceutical industry and would like your help in exploring and understanding the financial data collected by her firm. Her main objective is to understand the structure of the pharmaceutical industry using some basic financial measures.\n", - "Financial data gathered on 21 firms in the pharmaceutical industry are available in the file Pharmaceuticals.csv. For each firm, the following variables are recorded:\n", - "1. Market capitalization (in billions of dollars)\n", - "2. Beta\n", - "3. Price/earnings ratio\n", - "4. Return on equity\n", - "5. Return on assets\n", - "6. Asset turnover\n", - "7. Leverage\n", - "8. Estimated revenue growth\n", - "9. Net profit margin\n", - "10. Median recommendation (across major brokerages)\n", - "11. Location of firm’s headquarters\n", - "12. Stock exchange on which the firm is listed\n", + "The file EastWestAirlinesCluster.csv contains information on 3999 passengers who belong to an airline’s frequent flier program. For each passenger, the data include information on their mileage history and on different ways they accrued or spent miles in the last year. The goal is to try to identify clusters of passengers that have similar characteristics for the purpose of targeting different segments for different types of mileage offers.\n", "\n", - "Use cluster analysis to explore and analyze the given dataset as follows:\n", - "a.\n", - " Use only the numerical variables (1–9) to cluster the 21 firms. Justify the various choices made in conducting the cluster analysis, such as weights for different variables, the specific clustering algorithm(s) used, the number of clusters formed, and so on.\n", + "a. \n", + " Apply hierarchical clustering with Euclidean distance and Ward’s method. Make sure to normalize the data first. How many clusters appear?\n", "b. \n", - " Interpret the clusters with respect to the categorical variables used in forming the clusters.\n", + " What would happen if the data were not normalized?\n", "c. \n", - " Is there a pattern in the clusters with respect to the numerical variables (10–12)? (those not used in forming the clusters).\n", - "d. \n", - " Provide an appropriate name for each cluster using any or all of the variables in the dataset." + " Compare the cluster centroid to characterize the different clusters, and try to give each cluster a label." ] }, { "cell_type": "code", - "execution_count": 136, + "execution_count": 164, "metadata": {}, "outputs": [ { "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAz8AAAHeCAYAAAC10rVNAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAACf00lEQVR4nOzdd3gU1d4H8O+W7GZDGiWkUEORLlWpCgoXvIqVIoJKE2zoa8GCBQVRhGvBBiiiIooFBfXqFQvY6L33FmpCSC/b97x/hJnM1uwmm2yS/X6eh4fs7uzMmdmZM+d32qiEEAJERERERES1nDrUCSAiIiIiIqoKDH6IiIiIiCgsMPghIiIiIqKwwOCHiIiIiIjCAoMfIiIiIiIKCwx+iIiIiIgoLDD4ISIiIiKisMDgh4iIiIiIwgKDHyIiIiIiCgsMfsJY8+bNMW7cuFAno1xefPFFqFQqXLx4scxlK3s/VSoVXnzxxaCuc9y4cWjevHlQ11lVTp48CZVKhU8++STUSal2BgwYgAEDBoQ6GdXWAw88gH/961+hTobHc1jKc/xRGXlCqH3yySdQqVQ4efJkqJMSFmp6XlHT0+9NIGWPinItu6xatQrR0dHIzMys9G3Xdgx+agnpxrR161aPnw8YMAAdO3as4lSRq/z8fMyYMQOdO3dGdHQ0DAYDOnbsiKeeegrnzp2rsnTMnz+/VgYnf/75J1QqlfxPr9cjMTERAwYMwCuvvMKbRjV24sQJfPjhh3jmmWfk96QgxNu/V199NYQprrmq6jopLi7Giy++iD///DMo6yNn7du3R+fOnd3eX7lyJVQqFfr37+/22UcffQSVSoVff/21KpIok67lYJwLUgCiVqtx+vRpt8/z8/NhMBigUqkwZcqUcm3jlVdewXfffVfBlAbXddddh1atWmH27NmhTkqNpw11Aih0Dh06BLW69se/1WU/jx8/jkGDBuHUqVMYMWIEJk+eDJ1Oh927d2Px4sVYuXIlDh8+XCVpmT9/Pho0aFApLWLNmjWD0WhERERE0Nftr4cffhhXXHEF7HY7MjMzsX79erzwwgt444038PXXX+Paa68NWdrIs7feegupqam45ppr3D674447cP3117u937Vr16pIGgDgueeew9NPP11l26sKgVwnd911F0aNGgW9Xu/3+ouLizFjxgwAqJWtAKHWr18/LF68GHl5eYiLi5PfX7duHbRaLbZs2QKr1eqUF69btw4ajQa9e/cORZKDSq/X44svvsCTTz7p9P6KFSsqvO5XXnkFw4cPxy233FLhdQXTvffei6lTp2LGjBmIiYkJdXJqLAY/YSyQm1hZbDYbHA4HdDpdSNfhSTD3s7xsNhtuu+02ZGRk4M8//0S/fv2cPn/55ZcxZ86cEKUuOJS/X2RkZEjTctVVV2H48OFO7+3atQuDBw/GsGHDsH//fiQnJ4codb6ZTCbodLoqCdgr65oLlNVqxeeff4777rvP4+fdunXDnXfeWcWpcqbVaqHV1q5bZiDXiUajgUajCUUyyYt+/fph0aJFWL9+Pf7973/L769btw4jR47EsmXLsG3bNvTq1Uv+bO3atbj88ssrXHAuKipCnTp1KrSOirr++us9Bj/Lli3DDTfcgG+//TZEKas8w4YNw0MPPYTly5djwoQJoU5OjRX66nAKGU9jYXJzc/HII4+gSZMm0Ov1aNWqFebMmQOHwyEvIzVfv/baa5g3bx5atmwJvV6P/fv3w2KxYPr06ejevTvi4uJQp04dXHXVVfjjjz+ctuNrHQBw8OBBjBw5EgkJCTAYDGjTpg2effZZt33Izc3FuHHjEB8fj7i4OIwfPx7FxcV+7eejjz6K5s2bQ6/Xo3Hjxrj77rvlfrz+7oe/vv32W+zatQvPPvusW+ADALGxsXj55Ze9fl/qpuLaZcDT2IT09HSMHz8ejRs3hl6vR3JyMm6++Wa5r37z5s2xb98+/PXXX3K3F2WtbEXPAU9pGjduHKKjo3H27FnccsstiI6ORkJCAqZOnQq73e60T1lZWbjrrrsQGxuL+Ph4jB07Frt27arwOKLOnTtj3rx5yM3Nxbvvvuv02dmzZzFhwgQkJiZCr9ejQ4cO+Oijj5yWkX6Dr7/+Gi+//DIaN26MyMhIDBw4EEePHnXb3gcffICWLVvCYDDgyiuvxD///OO2jLTOL7/8Es899xwaNWqEqKgo5OfnAwCWL1+O7t27w2AwoEGDBrjzzjtx9uxZt/UsX74c7du3R2RkJDp27IiVK1e6jRsL9nX73nvvoUWLFoiKisLgwYNx+vRpCCHw0ksvoXHjxjAYDLj55puRnZ1d5m+zdu1aXLx4EYMGDSpzWW+8jbMpz/XviacxP2azGY8++igSEhIQExODm266CWfOnPH4fX/OsfL8DtJ5ptfrccUVV2DLli0+jlLZvF0nnsb8bN26FUOGDEGDBg1gMBiQmpoqF8hOnjyJhIQEAMCMGTPkvEb6jXbv3o1x48ahRYsWiIyMRFJSEiZMmICsrCyn9EjH/ejRo2Xm9QDw2Wef4corr0RUVBTq1q2Lq6++2q2L188//4yrrroKderUQUxMDG644Qbs27evzGOTnZ2NqVOnolOnToiOjkZsbCz+/e9/Y9euXU7LVUZe4Yl0L1m3bp38nslkwvbt23HbbbehRYsWTp9lZmbi8OHD8vfS0tLwwAMPoE2bNjAYDKhfvz5GjBjhNq5L+u3/+usvPPDAA2jYsCEaN25c4fSXda8qy+jRo7Fz504cPHjQaZ1r1qzB6NGjPX7HbDbjhRdeQKtWraDX69GkSRM8+eSTMJvN8jIqlQpFRUVYsmSJfN56ykPKOh9tNhteeukl+fps3rw5nnnmGadtAYAQArNmzULjxo0RFRWFa665xuv52LBhQ1x++eX4/vvv/TpG5FntqsYi5OXlebyBW63WMr9bXFyM/v374+zZs7j33nvRtGlTrF+/HtOmTcP58+cxb948p+U//vhjmEwmTJ48GXq9HvXq1UN+fj4+/PBD3HHHHZg0aRIKCgqwePFiDBkyBJs3b0aXLl3KXMfu3btx1VVXISIiApMnT0bz5s1x7Ngx/Pe//3ULEEaOHInU1FTMnj0b27dvx4cffoiGDRv6bEUpLCzEVVddhQMHDmDChAno1q0bLl68iB9++AFnzpxBgwYNAt6Psvzwww8ASrqOVLZhw4Zh3759eOihh9C8eXNcuHABv/32G06dOoXmzZtj3rx5eOihhxAdHS0HlImJiQCCcw4ogyQlu92OIUOGoGfPnnjttdfw+++/4/XXX0fLli1x//33AwAcDgduvPFGbN68Gffffz/atm2L77//HmPHjg3KsRk+fDgmTpyIX3/9VT6XMjIy0KtXL7l/eEJCAn7++WdMnDgR+fn5eOSRR5zW8eqrr0KtVmPq1KnIy8vD3LlzMWbMGGzatEleZvHixbj33nvRp08fPPLIIzh+/Dhuuukm1KtXD02aNHFL10svvQSdToepU6fCbDZDp9Phk08+wfjx43HFFVdg9uzZyMjIwFtvvYV169Zhx44diI+PBwD89NNPuP3229GpUyfMnj0bOTk5mDhxIho1auTxGATjuv38889hsVjw0EMPITs7G3PnzsXIkSNx7bXX4s8//8RTTz2Fo0eP4p133sHUqVPdCvmu1q9fD5VK5bUbW3Fxscd8LT4+PuDWGH+uf3/dc889+OyzzzB69Gj06dMHa9aswQ033OC2nL/nWKC/w7Jly1BQUIB7770XKpUKc+fOxW233Ybjx49XqNupp+vE1YULFzB48GAkJCTg6aefRnx8PE6ePCl3OUpISMCCBQtw//3349Zbb8Vtt90GALj88ssBAL/99huOHz+O8ePHIykpCfv27cMHH3yAffv2YePGjW6Bpj95/YwZM/Diiy+iT58+mDlzJnQ6HTZt2oQ1a9Zg8ODBAIClS5di7NixGDJkCObMmYPi4mIsWLAA/fr1w44dO3xONHP8+HF89913GDFiBFJTU5GRkYH3338f/fv3x/79+5GSkuK0fGXkFUotWrRASkoK1q5dK7+3ZcsWWCwW9OnTB3369MG6devw+OOPAyi5zoDSoGnLli1Yv349Ro0ahcaNG+PkyZNYsGABBgwYgP379yMqKsppew888AASEhIwffp0FBUVVTj9Zd2rynL11VejcePGWLZsGWbOnAkA+OqrrxAdHe3xOnQ4HLjpppuwdu1aTJ48Ge3atcOePXvw5ptv4vDhw/IYn6VLl+Kee+7BlVdeicmTJwMAWrZs6bQuf87He+65B0uWLMHw4cPx+OOPY9OmTZg9ezYOHDiAlStXystNnz4ds2bNwvXXX4/rr78e27dvx+DBg2GxWDzud/fu3avdeKQaR1Ct8PHHHwsAPv916NDB6TvNmjUTY8eOlV+/9NJLok6dOuLw4cNOyz399NNCo9GIU6dOCSGEOHHihAAgYmNjxYULF5yWtdlswmw2O72Xk5MjEhMTxYQJE+T3fK3j6quvFjExMSItLc3pfYfDIf/9wgsvCABO6xRCiFtvvVXUr1/f535Onz5dABArVqwQrqRt+LsfQggBQLzwwgtu61Lq2rWriIuL87mM0tixY0WzZs3k13/88YcAIP744w+n5aTj+PHHH8tpBCD+85//+Fx/hw4dRP/+/d3eD8Y54JomaX8AiJkzZzot27VrV9G9e3f59bfffisAiHnz5snv2e12ce2117qt0xPpOC1fvtzrMp07dxZ169aVX0+cOFEkJyeLixcvOi03atQoERcXJ4qLi53W3a5dO6dz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6NSpE15++WWP6ygoKPA4lbekWbNm0Gg0bmNu5s+f7/S6uLgYJpPJ6b2WLVsiJibGaXrNOnXqeLzBBeMcqIghQ4bAarVi0aJF8nsOhwPvvfdehde9a9cuPPLII6hbt648hkij0WDYsGH49ttvPRaIy/Ok+x49eiAhIQELFy50mq3nk08+8btQ0aNHDzRs2BALFy50+t1+/vlnHDhwQJ7JKCUlBR07dsSnn36KwsJCebm//voLe/bs8TvNwT7fA9W7d28IIeRxC+XRsmVLt+vjgw8+cGv58ef694f0XJW3337b6X3XGREDOcdC/TsAnq8TT3JyctyOlxR0SOesVIHhet572k/A/dgF4pZbboFarcbMmTPdWi2k7QwZMgSxsbF45ZVXPI5TKut612g0bmlevnx5mWPavAlGXgGUBDSZmZn4+OOP0bNnT6eWjz59+uDQoUP4/vvvUb9+faeCuKf9eeedd/xuLa1I+v29V/mjZcuWmDdvHmbPno0rr7zS63IjR47E2bNnne4vEqPRKM9gB3i/R/pLeiiz6zkttTpJefigQYMQERGBd955x+m38HUtbNu2rVY8pDaU2PJDsieeeAI//PADhg4dinHjxqF79+4oKirCnj178M033+DkyZNl1m4NHToUK1aswK233oobbrgBJ06cwMKFC9G+fXunwpkvb7/9Nvr164du3bph8uTJSE1NxcmTJ/HTTz9h586dQdnPb775BiNGjMCECRPQvXt3ZGdn44cffsDChQvRuXPnoOyHUkREBFasWIFBgwbh6quvxsiRI9G3b19ERERg3759WLZsGerWret1Wtm4uDiMGDEC77zzDlQqFVq2bIkff/zRrY/y4cOHMXDgQIwcORLt27eHVqvFypUrkZGRgVGjRsnLde/eHQsWLMCsWbPQqlUrNGzYENdee21QzoGKuOWWW3DllVfi8ccfx9GjR9G2bVv88MMP8rNi/K2N++eff2AymeRByevWrcMPP/yAuLg4rFy50qnLy6uvvoo//vgDPXv2xKRJk9C+fXtkZ2dj+/bt+P333/16To1SREQEZs2ahXvvvRfXXnstbr/9dpw4cQIff/yx3/34IyIiMGfOHIwfPx79+/fHHXfcIU913bx5czz66KPysq+88gpuvvlm9O3bF+PHj0dOTg7effdddOzY0e9zNdjne6D69euH+vXr4/fff/fYX3/79u0ea4JbtmwpFwLuuece3HfffRg2bBj+9a9/YdeuXfjll1/czld/rn9/dOnSBXfccQfmz5+PvLw89OnTB6tXr/bY4ubvOVbVv0Mg14mrJUuWYP78+bj11lvRsmVLFBQUYNGiRYiNjZULfgaDAe3bt8dXX32Fyy67DPXq1UPHjh3RsWNHXH311Zg7dy6sVisaNWqEX3/9FSdOnCj3vrRq1QrPPvssXnrpJVx11VW47bbboNfrsWXLFqSkpGD27NmIjY3FggULcNddd6Fbt24YNWoUEhIScOrUKfz000/o27ev2zPAlIYOHYqZM2di/Pjx6NOnD/bs2YPPP//c7+vaVTDyCqC0NWfDhg1uz7qSpljfuHEjbrzxRqc8dOjQoVi6dCni4uLQvn17bNiwAb///rvH8UvBTr+/9yp//d///V+Zy9x11134+uuvcd999+GPP/5A3759YbfbcfDgQXz99df45Zdf5DHT3bt3x++//4433ngDKSkpSE1NlSd28Ufnzp0xduxYfPDBB8jNzUX//v2xefNmLFmyBLfccguuueYaAJCfdzd79mwMHToU119/PXbs2IGff/7Z4732woUL2L17d1AnAQpLVTOpHFU2aSpKb9OO9u/fv8yproUomQp02rRpolWrVkKn04kGDRqIPn36iNdee02eSlOaZtXTFJUOh0O88sorolmzZkKv14uuXbuKH3/80W3qZl/rEEKIvXv3iltvvVXEx8eLyMhI0aZNG/H888/LnyunuvR0HKTpWL3tZ1ZWlpgyZYpo1KiR0Ol0onHjxmLs2LHyVLT+7ocQ/k11LcnJyRHTp08XnTp1ElFRUSIyMlJ07NhRTJs2TZw/f15eztN2MjMzxbBhw0RUVJSoW7euuPfee8XevXudpuS9ePGiePDBB0Xbtm1FnTp1RFxcnOjZs6f4+uuvndaVnp4ubrjhBhETE+M2JWlFzwFvU13XqVPHbVnX6YOl/Rw9erSIiYkRcXFxYty4cWLdunUCgPjyyy99Hl9pilnpX0REhEhISBBXX321ePnll92meJZkZGSIBx98UDRp0kRERESIpKQkMXDgQPHBBx+4rdt1emBP+ytEyTSzqampQq/Xix49eoi///5b9O/f3+NU196mHP7qq69E165dhV6vF/Xq1RNjxowRZ86ccVvuyy+/FG3bthV6vV507NhR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EREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWAg4+Pn7779x4403IiUlBSqVCt99953T50IITJ8+HcnJyTAYDBg0aBCOHDnitEx2djbGjBmD2NhYxMfHY+LEiSgsLKzQjhAREREREfkScPBTVFSEzp0747333vP4+dy5c/H2229j4cKF2LRpE+rUqYMhQ4bAZDLJy4wZMwb79u3Db7/9hh9//BF///03Jk+eXP69ICIiIiIiKoM20C/8+9//xr///W+PnwkhMG/ePDz33HO4+eabAQCffvopEhMT8d1332HUqFE4cOAAVq1ahS1btqBHjx4AgHfeeQfXX389XnvtNaSkpFRgd4iIiIiIiDwL6pifEydOID09HYMGDZLfi4uLQ8+ePbFhwwYAwIYNGxAfHy8HPgAwaNAgqNVqbNq0yeN6zWYz8vPznf4REREREREFIqjBT3p6OgAgMTHR6f3ExET5s/T0dDRs2NDpc61Wi3r16snLuJo9ezbi4uLkf02aNAlmsomIiIiIKAzUiNnepk2bhry8PPnf6dOnQ50kIiIiIiKqYYIa/CQlJQEAMjIynN7PyMiQP0tKSsKFCxecPrfZbMjOzpaXcaXX6xEbG+v0j4iIiIiIKBBBDX5SU1ORlJSE1atXy+/l5+dj06ZN6N27NwCgd+/eyM3NxbZt2+Rl1qxZA4fDgZ49ewYzOURERERERLKAZ3srLCzE0aNH5dcnTpzAzp07Ua9ePTRt2hSPPPIIZs2ahdatWyM1NRXPP/88UlJScMsttwAA2rVrh+uuuw6TJk3CwoULYbVaMWXKFIwaNYozvRERERERUaUJOPjZunUrrrnmGvn1Y489BgAYO3YsPvnkEzz55JMoKirC5MmTkZubi379+mHVqlWIjIyUv/P5559jypQpGDhwINRqNYYNG4a33347CLtDRERERETkWcDBz4ABAyCE8Pq5SqXCzJkzMXPmTK/L1KtXD8uWLQt000REREREROVWI2Z7IyIiIiIiqigGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQVtqBNARES1hxACRqs91MnwS7HF5vHv6swQoYFKpQp1MoiIaiwGP0REFBRCCAxfuAHb0nJCnZSA9Zi1OtRJ8EuPZnWx/L7eDICIiMqJ3d6IiCgojFZ7jQx8apKtaTk1pmWNiKg6YssPEREF3dbnBiFKpwl1MmqNYosdPWb9HupkEBHVeAx+iIgo6KJ0GkTpeIshIqLqhd3eiIiIiIgoLDD4ISIiIiKisMDgh4iIiIiIwgKDHyIiIiIiCgsMfoiIiIiIKCww+CEiIiIiorDA4IeIiIiIiMICgx8iIiIiIgoLNf4JdEIIGK32UCejRii22Dz+TWUzRGigUqlCnQyiWoX5t/+Yf5cf828iUqrRwY8QAsMXbsC2tJxQJ6XG6TFrdaiTUKP0aFYXy+/rzRsoUZAw/y4/5t+BYf5NREo1utub0WrnjZOqxNa0HNZQEwUR82+qKsy/iUipRrf8KG19bhCidJpQJ4NqmWKLHT1m/R7qZBDVasy/qTIw/yYiT2pN8BOl0yBKV2t2h4gobDD/JiKiqlKju70RERERERH5i8EPERERERGFBQY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGEh6MGP3W7H888/j9TUVBgMBrRs2RIvvfQShBDyMkIITJ8+HcnJyTAYDBg0aBCOHDkS7KQQERERERHJgh78zJkzBwsWLMC7776LAwcOYM6cOZg7dy7eeecdeZm5c+fi7bffxsKFC7Fp0ybUqVMHQ4YMgclkCnZyiIiIiIiIAADaYK9w/fr1uPnmm3HDDTcAAJo3b44vvvgCmzdvBlDS6jNv3jw899xzuPnmmwEAn376KRITE/Hdd99h1KhRwU4SERERERFR8Ft++vTpg9WrV+Pw4cMAgF27dmHt2rX497//DQA4ceIE0tPTMWjQIPk7cXFx6NmzJzZs2OBxnWazGfn5+U7/iIiIiIiIAhH0lp+nn34a+fn5aNu2LTQaDex2O15++WWMGTMGAJCeng4ASExMdPpeYmKi/Jmr2bNnY8aMGcFOKhERERERhZGgt/x8/fXX+Pzzz7Fs2TJs374dS5YswWuvvYYlS5aUe53Tpk1DXl6e/O/06dNBTDEREREREYWDoLf8PPHEE3j66aflsTudOnVCWloaZs+ejbFjxyIpKQkAkJGRgeTkZPl7GRkZ6NKli8d16vV66PX6YCeViIiIiIjCSNBbfoqLi6FWO69Wo9HA4XAAAFJTU5GUlITVq1fLn+fn52PTpk3o3bt3sJNDREREREQEoBJafm688Ua8/PLLaNq0KTp06IAdO3bgjTfewIQJEwAAKpUKjzzyCGbNmoXWrVsjNTUVzz//PFJSUnDLLbcEOzlEREREREQAKiH4eeedd/D888/jgQcewIULF5CSkoJ7770X06dPl5d58sknUVRUhMmTJyM3Nxf9+vXDqlWrEBkZGezkEBERERERAaiE4CcmJgbz5s3DvHnzvC6jUqkwc+ZMzJw5M9ibJyIiIiIi8ijoY36IiIiIiIiqIwY/REREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhQRvqBBAREVHlEkLAaLWHOhlVqthi8/h3ODBEaKBSqUKdDKJqicEPERFRLSaEwPCFG7AtLSfUSQmZHrNWhzoJVapHs7pYfl9vBkBEHrDbGxERUS1mtNrDOvAJR1vTcsKupY/IX2z5ISIiChNbnxuEKJ0m1MmgSlJssaPHrN9DnQyiao3BDxERUZiI0mkQpeOtn4jCF7u9ERERERFRWGD1Ty0XjjP8BFM4zxYUbJx9iIiIiEKNwU8txhl+givcZgsKNs4+RERERKHGbm+1GGf4oeqEsw8RERFRqLHlJ0xwhh8KFc4+REQ1WU3qPl6Tu2qzazRVFQY/YYIz/BAREQWmJncfr2ldtdk1mqoKu70RERERecDu41WHXaOpqrApgIiIiKgM7D5eOdg1mqoagx8iIiKiMrD7OFHtwG5vREREREQUFhj8EBERERFRWGDwQ0REREREYYHBDxERERERhQUGP0REREREFBYY/BARERERUVhg8ENERERERGGBwQ8REREREYUFBj9ERERERBQWGPwQEREREVFYYPBDRERERERhgcEPERERERGFBQY/REREREQUFhj8EBERERFRWFAJIUSoExGo/Px8xMXF4V+Dh2Dt8Rw0GDoVN5j/xNkzp9GxY0dMmTIF9913HwBg0qRJsFqt+OSTTwAAH330EebMmYNDhw6hVatWeO655zBu3DgAwF133YWoqCi8//77AID58+fj/fffx65du9CkSRP85z//wahRowAAI0eORHJyMt566y0AwJtvvokvvvgCmzdvRsOGDfH+++/j1ltvBQDcfPPNaNOmDebOnQsAePXVV/HTTz/hn3/+QWxsLD777DPcdtttsNlsGDJkCK688kq89NJLAIAXX3wR69atw2+//Qa9Xo/ly5dj9OjRKCwsRP/+/TF48GA8++yzAICnn34ae/fuxY8//ggA+PKbFWjY/d9wmPLx1NibMPr2kXj88ccBAI899hhOnTqFb775BgDw9ddf49FHH8XZs2fRtWtXTJw4EVOmTAEAPPDAA8jLy8Pnn38OAFi6dCleeOEFHD9+HO3atcNjjz2GSZMmAQAmTJggH2cAWLRoEd544w0cOHAALVq0wIwZM3DXXXcBAMaMGYO4uDjMnz8fAPDuu+9i8eLF2LFjBxo1aoQ333wTI0eOBAAMHz4cTZs2xRtvvAEAeP311/HNN99gw4YNqF+/Pj7++GPcdNNNAIChQ4eiY8eOePXVVwEAL7/8Mn799Vf89ddfiI6OxrJlyzBixAiYzWb861//Qt++ffHiiy8CAJ5//nls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gw8+wJIlSzBv3jwYhnFdx3niiSewefNm3HHHHXj99dcRjUbx/fffAwC6urpQKBSwfft2LFiwAM3Nzfjkk09w+vRp9PT0/N/nSERE/05MfoiIaNIcPXoUBw4cwLPPPgsAUBQFTz/9NDo7OyfcRtM03H333Td8rNJtfD4fampqMDw8DAD49ddfcfz4cYRCIViWBcuyEIlE4DgOTpw4ccPHIiKi/wblZgdARERTR2dnJzzPw+zZs+WyYrGIQCCA999/f9xtgsHghH8A4WpUVS372efzyT+WkEqlcP/99+OLL764YrsZM2bc8LGIiOi/gckPERFNCs/z8Nlnn2Hbtm1Yvnx52WerV6/GV199haampkmJ5b777kNXVxeqq6sRDocn5ZhERHTzcdobERFNim+++QYjIyPYsGED7rrrrrJ/a9asuerUt7/bunXrEI1GsWrVKuzbtw9//PEHenp68Morr+DMmTOTFgcREU0uJj9ERDQpOjs7sWzZsnG/wHTNmjX45Zdf0NvbOymxGIaBvXv3oq6uDk899RSam5uxYcMGOI7DN0FERLcwX/Fqf1+UiIiIiIjoFsE3P0RERERENCUw+SEiIiIioimByQ8REREREU0JTH6IiIiIiGhKYPJDRERERERTApMfIiIiIiKaEpj8EBERERHRlMDkh4iIiIiIpgQmP0RERERENCUw+SEiIiIioimByQ8REREREU0J/wOckSYRudHEpgAAAABJRU5ErkJggg==", "text/plain": [ - "3.771458257750001e-17" + "
" ] }, - "execution_count": 136, "metadata": {}, - "output_type": "execute_result" + "output_type": "display_data" + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/noah/.local/lib/python3.10/site-packages/sklearn/cluster/_kmeans.py:870: FutureWarning: The default value of `n_init` will change from 10 to 'auto' in 1.4. Set the value of `n_init` explicitly to suppress the warning\n", + " warnings.warn(\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " ID# Balance Qual_miles cc1_miles cc2_miles cc3_miles \\\n", + "0 0.957102 -0.392262 -0.136428 -0.717780 -0.098242 -0.062767 \n", + "1 -0.842588 -0.161087 -0.107379 -0.515236 -0.098242 -0.058526 \n", + "2 -0.167650 1.103818 0.467739 0.071777 -0.098242 -0.062767 \n", + "3 -0.301522 0.639719 -0.084433 1.022084 -0.098242 15.646299 \n", + "4 0.538585 -0.001928 -0.127412 0.830568 -0.098242 -0.048809 \n", + "5 0.089763 0.417981 7.087067 -0.043229 -0.098242 -0.062767 \n", + "6 0.219325 -0.046890 -0.156236 -0.668227 9.038254 -0.062767 \n", + "7 -0.929265 0.876328 -0.078554 1.535043 -0.098242 -0.062767 \n", + "\n", + " Bonus_miles Bonus_trans Flight_miles_12mo Flight_trans_12 \\\n", + "0 -0.580379 -0.639577 -0.194036 -0.217088 \n", + "1 -0.472057 -0.394837 -0.148568 -0.159181 \n", + "2 0.658657 1.810074 4.088700 4.348639 \n", + "3 3.179691 1.714614 0.033293 0.059695 \n", + "4 0.394766 0.636493 -0.135599 -0.144842 \n", + "5 0.065275 0.079326 0.352770 0.395268 \n", + "6 -0.101665 0.617851 0.087549 0.220347 \n", + "7 1.475799 0.890097 0.007000 0.021263 \n", + "\n", + " Days_since_enroll Award? \n", + "0 -0.955105 -0.461496 \n", + "1 0.820704 -0.192639 \n", + "2 0.208676 0.907008 \n", + "3 0.239873 0.337527 \n", + "4 -0.520677 0.347496 \n", + "5 -0.115867 0.324977 \n", + "6 -0.072464 0.051784 \n", + "7 0.932570 0.700216 \n", + "0 : 1, 1, 2, 9\n", + "1 : 0\n", + "2 : 6, 5\n", + "3 : 1, 0, 6\n", + "4 : 1, 1, 4, 1\n", + "5 : 7, 0\n", + "6 : 8\n", + "7 : 4\n" + ] } ], "source": [ - "clust_stats['# PT undergrad']['mean']" + "raw_airlines_df = pd.read_csv('EastWestAirlinesCluster.csv')\n", + "\n", + "# Normalize\n", + "airlines_df_norm = raw_airlines_df.apply(preprocessing.scale, axis=0)\n", + "\n", + "# a: hclust with euclidean and ward's\n", + "Z = linkage(airlines_df_norm, method='ward', metric='euclidean')\n", + "fig = plt.figure(figsize=(10, 6))\n", + "fig.subplots_adjust(bottom=0.23)\n", + "plt.title(\"Hierarchical Clustering Dendrogram (Euclidean Distance and Ward's Method)\")\n", + "plt.xlabel('Airline')\n", + "dendrogram(Z, labels=airlines_df_norm.index, color_threshold=2.75)\n", + "plt.axhline(y=65, color='black', linewidth=0.5, linestyle='dashed')\n", + "plt.xticks(rotation=45, ha='right')\n", + "plt.show()\n", + "\n", + "# b: Text answer\n", + "\n", + "# c: \n", + "kmeans = KMeans(n_clusters=8, random_state=0).fit(airlines_df_norm)\n", + "\n", + "centroids = pd.DataFrame(kmeans.cluster_centers_, columns=airlines_df_norm.columns)\n", + "#pd.set_option('precision', 3)\n", + "print(centroids)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 167, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0 : 1, 1, 2, 9\n", + "1 : 0\n", + "2 : 6, 5\n", + "3 : 1, 0, 6\n", + "4 : 1, 1, 4, 1\n", + "5 : 7, 0\n", + "6 : 8\n", + "7 : 4\n" + ] + } + ], + "source": [ + "# Cluster membership\n", + "memb = pd.Series(kmeans.labels_, index=airlines_df_norm.index)\n", + "for key, item in memb.groupby(memb):\n", + " print(key, ': ', ', '.join(str(item.index[0])))" ] } ], diff --git a/Schrick-Noah_Learning-Practice-4.odt b/Schrick-Noah_Learning-Practice-4.odt new file mode 100644 index 0000000..630520f Binary files /dev/null and b/Schrick-Noah_Learning-Practice-4.odt differ diff --git a/Schrick-Noah_Learning-Practice-4.pdf b/Schrick-Noah_Learning-Practice-4.pdf new file mode 100644 index 0000000..d082545 Binary files /dev/null and b/Schrick-Noah_Learning-Practice-4.pdf differ diff --git a/img/clust_stats.png b/img/clust_stats.png new file mode 100644 index 0000000..3df9ba6 Binary files /dev/null and b/img/clust_stats.png differ diff --git a/img/normalized_uni.png b/img/normalized_uni.png new file mode 100644 index 0000000..cae8b90 Binary files /dev/null and b/img/normalized_uni.png differ