{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Loading libraries and setting up" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import scipy" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# PCA Plotting" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Defining the column names:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "names = [\"Individual\", \"PC1\", \"PC2\", \"PC3\", \"PC4\", \"Population\"]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Loading the eigenVec file from the pca run" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## West-Eurasian PCA" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "pcaDat = pd.read_csv(\"/data/pca/results/pca.WestEurasia.evec\",\n", " delim_whitespace=True, skiprows=1, names=names)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looking at the data, we find that it is a matrix, with each individual on one row, and the columns denoting the first 10 principal components. The last column contains the population for each individual:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | Individual | \n", "PC1 | \n", "PC2 | \n", "PC3 | \n", "PC4 | \n", "Population | \n", "
|---|---|---|---|---|---|---|
| 0 | \n", "Yuk_009 | \n", "0.0123 | \n", "0.1252 | \n", "0.1147 | \n", "0.0567 | \n", "Yukagir | \n", "
| 1 | \n", "Yuk_025 | \n", "0.0120 | \n", "0.1258 | \n", "0.1168 | \n", "0.0576 | \n", "Yukagir | \n", "
| 2 | \n", "Yuk_022 | \n", "0.0136 | \n", "0.1303 | \n", "0.1186 | \n", "0.0564 | \n", "Yukagir | \n", "
| 3 | \n", "Yuk_020 | \n", "0.0170 | \n", "0.1278 | \n", "0.1176 | \n", "0.0584 | \n", "Yukagir | \n", "
| 4 | \n", "MC_40 | \n", "0.0183 | \n", "0.1226 | \n", "0.1123 | \n", "0.0537 | \n", "Chukchi | \n", "
| 5 | \n", "Yuk_024 | \n", "0.0144 | \n", "0.1271 | \n", "0.1124 | \n", "0.0584 | \n", "Yukagir | \n", "
| 6 | \n", "Yuk_023 | \n", "0.0124 | \n", "0.1348 | \n", "0.1238 | \n", "0.0642 | \n", "Yukagir | \n", "
| 7 | \n", "MC_16 | \n", "0.0144 | \n", "0.1266 | \n", "0.1169 | \n", "0.0541 | \n", "Chukchi | \n", "
| 8 | \n", "MC_15 | \n", "0.0146 | \n", "0.1250 | \n", "0.1119 | \n", "0.0559 | \n", "Chukchi | \n", "
| 9 | \n", "MC_18 | \n", "0.0175 | \n", "0.1238 | \n", "0.1167 | \n", "0.0523 | \n", "Chukchi | \n", "
| 10 | \n", "Yuk_004 | \n", "0.0110 | \n", "0.1273 | \n", "0.1117 | \n", "0.0573 | \n", "Yukagir | \n", "
| 11 | \n", "MC_08 | \n", "0.0187 | \n", "0.1253 | \n", "0.1185 | \n", "0.0564 | \n", "Chukchi | \n", "
| 12 | \n", "Nov_005 | \n", "0.0152 | \n", "0.1349 | \n", "0.1285 | \n", "0.0618 | \n", "Nganasan | \n", "
| 13 | \n", "MC_25 | \n", "0.0182 | \n", "0.1258 | \n", "0.1196 | \n", "0.0532 | \n", "Chukchi | \n", "
| 14 | \n", "Yuk_019 | \n", "0.0161 | \n", "0.1327 | \n", "0.1229 | \n", "0.0617 | \n", "Yukagir | \n", "
| 15 | \n", "Yuk_011 | \n", "0.0152 | \n", "0.1217 | \n", "0.1148 | \n", "0.0569 | \n", "Yukagir | \n", "
| 16 | \n", "Sesk_47 | \n", "0.0167 | \n", "0.1241 | \n", "0.1177 | \n", "0.0549 | \n", "Chukchi1 | \n", "
| 17 | \n", "MC_17 | \n", "0.0180 | \n", "0.1268 | \n", "0.1147 | \n", "0.0544 | \n", "Chukchi | \n", "
| 18 | \n", "Yuk_021 | \n", "0.0141 | \n", "0.1329 | \n", "0.1210 | \n", "0.0653 | \n", "Yukagir | \n", "
| 19 | \n", "MC_06 | \n", "0.0159 | \n", "0.1264 | \n", "0.1135 | \n", "0.0557 | \n", "Chukchi | \n", "
| 20 | \n", "MC_38 | \n", "0.0178 | \n", "0.1240 | \n", "0.1143 | \n", "0.0534 | \n", "Chukchi | \n", "
| 21 | \n", "MC_14 | \n", "0.0165 | \n", "0.1238 | \n", "0.1114 | \n", "0.0524 | \n", "Chukchi | \n", "
| 22 | \n", "Ul5 | \n", "0.0070 | \n", "0.1306 | \n", "0.1144 | \n", "0.0540 | \n", "Ulchi | \n", "
| 23 | \n", "Ul31 | \n", "0.0056 | \n", "0.1289 | \n", "0.1182 | \n", "0.0550 | \n", "Ulchi | \n", "
| 24 | \n", "Ul65 | \n", "0.0051 | \n", "0.1331 | \n", "0.1117 | \n", "0.0599 | \n", "Ulchi | \n", "
| 25 | \n", "Tuba12 | \n", "0.0172 | \n", "0.0906 | \n", "0.0790 | \n", "0.0362 | \n", "Tubalar | \n", "
| 26 | \n", "Tuba20 | \n", "0.0129 | \n", "0.0894 | \n", "0.0767 | \n", "0.0308 | \n", "Tubalar | \n", "
| 27 | \n", "Nel19 | \n", "0.0273 | \n", "0.0605 | \n", "0.0608 | \n", "0.0333 | \n", "Yukagir | \n", "
| 28 | \n", "Nlk16 | \n", "0.0217 | \n", "0.0744 | \n", "0.0753 | \n", "0.0360 | \n", "Even | \n", "
| 29 | \n", "Kor66 | \n", "0.0148 | \n", "0.1259 | \n", "0.1157 | \n", "0.0531 | \n", "Koryak | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| 1259 | \n", "I0429 | \n", "0.0413 | \n", "0.0447 | \n", "0.0440 | \n", "0.0098 | \n", "Yamnaya_Samara | \n", "
| 1260 | \n", "I0438 | \n", "0.0384 | \n", "0.0497 | \n", "0.0399 | \n", "0.0020 | \n", "Yamnaya_Samara | \n", "
| 1261 | \n", "I0585 | \n", "0.0770 | \n", "-0.0424 | \n", "0.0372 | \n", "0.0355 | \n", "WHG | \n", "
| 1262 | \n", "I0797 | \n", "-0.0101 | \n", "-0.0452 | \n", "-0.0342 | \n", "-0.0124 | \n", "LBK_EN | \n", "
| 1263 | \n", "I0795 | \n", "-0.0057 | \n", "-0.0495 | \n", "-0.0429 | \n", "0.0098 | \n", "LBK_EN | \n", "
| 1264 | \n", "I0022 | \n", "-0.0133 | \n", "-0.0433 | \n", "-0.0356 | \n", "-0.0089 | \n", "LBK_EN | \n", "
| 1265 | \n", "I0026 | \n", "-0.0142 | \n", "-0.0438 | \n", "-0.0430 | \n", "-0.0027 | \n", "LBK_EN | \n", "
| 1266 | \n", "I1507 | \n", "0.0866 | \n", "-0.0455 | \n", "0.0393 | \n", "0.0311 | \n", "WHG | \n", "
| 1267 | \n", "I0025 | \n", "-0.0103 | \n", "-0.0449 | \n", "-0.0404 | \n", "-0.0023 | \n", "LBK_EN | \n", "
| 1268 | \n", "I0443 | \n", "0.0350 | \n", "0.0401 | \n", "0.0412 | \n", "0.0028 | \n", "Yamnaya_Samara | \n", "
| 1269 | \n", "I0054 | \n", "-0.0054 | \n", "-0.0413 | \n", "-0.0410 | \n", "-0.0124 | \n", "LBK_EN | \n", "
| 1270 | \n", "I0046 | \n", "-0.0066 | \n", "-0.0446 | \n", "-0.0386 | \n", "-0.0092 | \n", "LBK_EN | \n", "
| 1271 | \n", "I0048 | \n", "-0.0128 | \n", "-0.0367 | \n", "-0.0388 | \n", "-0.0129 | \n", "LBK_EN | \n", "
| 1272 | \n", "I0056 | \n", "-0.0067 | \n", "-0.0472 | \n", "-0.0388 | \n", "-0.0054 | \n", "LBK_EN | \n", "
| 1273 | \n", "I0057 | \n", "-0.0113 | \n", "-0.0442 | \n", "-0.0357 | \n", "-0.0008 | \n", "LBK_EN | \n", "
| 1274 | \n", "I0100 | \n", "-0.0063 | \n", "-0.0455 | \n", "-0.0410 | \n", "-0.0051 | \n", "LBK_EN | \n", "
| 1275 | \n", "I0659 | \n", "-0.0084 | \n", "-0.0437 | \n", "-0.0431 | \n", "-0.0099 | \n", "LBK_EN | \n", "
| 1276 | \n", "I0821 | \n", "-0.0071 | \n", "-0.0428 | \n", "-0.0380 | \n", "-0.0103 | \n", "LBK_EN | \n", "
| 1277 | \n", "I1550 | \n", "-0.0107 | \n", "-0.0386 | \n", "-0.0402 | \n", "-0.0039 | \n", "LBK_EN | \n", "
| 1278 | \n", "BOO001 | \n", "0.0399 | \n", "0.0760 | \n", "0.0915 | \n", "0.0453 | \n", "BolshoyOleniOstrov | \n", "
| 1279 | \n", "BOO002 | \n", "0.0445 | \n", "0.0735 | \n", "0.0925 | \n", "0.0379 | \n", "BolshoyOleniOstrov | \n", "
| 1280 | \n", "BOO003 | \n", "0.0466 | \n", "0.0765 | \n", "0.0862 | \n", "0.0415 | \n", "BolshoyOleniOstrov | \n", "
| 1281 | \n", "BOO004 | \n", "0.0411 | \n", "0.0723 | \n", "0.0938 | \n", "0.0419 | \n", "BolshoyOleniOstrov | \n", "
| 1282 | \n", "BOO005 | \n", "0.0461 | \n", "0.0731 | \n", "0.0909 | \n", "0.0401 | \n", "BolshoyOleniOstrov | \n", "
| 1283 | \n", "BOO006 | \n", "0.0394 | \n", "0.0917 | \n", "0.1002 | \n", "0.0438 | \n", "BolshoyOleniOstrov | \n", "
| 1284 | \n", "CHV001 | \n", "0.0441 | \n", "0.0331 | \n", "0.0587 | \n", "0.0325 | \n", "ChalmnyVarre | \n", "
| 1285 | \n", "CHV002 | \n", "0.0442 | \n", "0.0351 | \n", "0.0610 | \n", "0.0373 | \n", "ChalmnyVarre | \n", "
| 1286 | \n", "JK1968 | \n", "0.0398 | \n", "0.0385 | \n", "0.0661 | \n", "0.0299 | \n", "Levanluhta | \n", "
| 1287 | \n", "JK1970 | \n", "0.0408 | \n", "0.0466 | \n", "0.0600 | \n", "0.0363 | \n", "Levanluhta | \n", "
| 1288 | \n", "JK2065 | \n", "0.0392 | \n", "-0.0065 | \n", "0.0195 | \n", "0.0043 | \n", "JK2065 | \n", "
1289 rows × 6 columns
\n", "| \n", " | Population | \n", "colorIndex | \n", "symbolIndex | \n", "
|---|---|---|---|
| 1 | \n", "Abkhasian | \n", "0 | \n", "0 | \n", "
| 2 | \n", "Adygei | \n", "0 | \n", "1 | \n", "
| 3 | \n", "Albanian | \n", "0 | \n", "2 | \n", "
| 4 | \n", "Armenian | \n", "0 | \n", "3 | \n", "
| 5 | \n", "Assyrian | \n", "0 | \n", "4 | \n", "
| 6 | \n", "Balkar | \n", "0 | \n", "5 | \n", "
| 7 | \n", "Basque | \n", "0 | \n", "6 | \n", "
| 8 | \n", "BedouinA | \n", "0 | \n", "7 | \n", "
| 9 | \n", "BedouinB | \n", "1 | \n", "0 | \n", "
| 10 | \n", "Belarusian | \n", "1 | \n", "1 | \n", "
| 11 | \n", "Bulgarian | \n", "1 | \n", "2 | \n", "
| 12 | \n", "Canary_Islander | \n", "1 | \n", "3 | \n", "
| 13 | \n", "Chechen | \n", "1 | \n", "4 | \n", "
| 0 | \n", "Chuvash | \n", "1 | \n", "5 | \n", "
| 14 | \n", "Croatian | \n", "1 | \n", "6 | \n", "
| 15 | \n", "Cypriot | \n", "1 | \n", "7 | \n", "
| 16 | \n", "Czech | \n", "2 | \n", "0 | \n", "
| 17 | \n", "Druze | \n", "2 | \n", "1 | \n", "
| 18 | \n", "English | \n", "2 | \n", "2 | \n", "
| 19 | \n", "Estonian | \n", "2 | \n", "3 | \n", "
| 20 | \n", "Finnish | \n", "2 | \n", "4 | \n", "
| 21 | \n", "French | \n", "2 | \n", "5 | \n", "
| 22 | \n", "Georgian | \n", "2 | \n", "6 | \n", "
| 23 | \n", "German | \n", "2 | \n", "7 | \n", "
| 24 | \n", "Greek | \n", "3 | \n", "0 | \n", "
| 25 | \n", "Hungarian | \n", "3 | \n", "1 | \n", "
| 26 | \n", "Icelandic | \n", "3 | \n", "2 | \n", "
| 27 | \n", "Iranian | \n", "3 | \n", "3 | \n", "
| 28 | \n", "Irish | \n", "3 | \n", "4 | \n", "
| 29 | \n", "Irish_Ulster | \n", "3 | \n", "5 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "
| 38 | \n", "Jew_Tunisian | \n", "4 | \n", "6 | \n", "
| 39 | \n", "Jew_Turkish | \n", "4 | \n", "7 | \n", "
| 40 | \n", "Jew_Yemenite | \n", "5 | \n", "0 | \n", "
| 41 | \n", "Jordanian | \n", "5 | \n", "1 | \n", "
| 42 | \n", "Kumyk | \n", "5 | \n", "2 | \n", "
| 44 | \n", "Lebanese | \n", "5 | \n", "3 | \n", "
| 43 | \n", "Lebanese_Christian | \n", "5 | \n", "4 | \n", "
| 45 | \n", "Lebanese_Muslim | \n", "5 | \n", "5 | \n", "
| 46 | \n", "Lezgin | \n", "5 | \n", "6 | \n", "
| 47 | \n", "Lithuanian | \n", "5 | \n", "7 | \n", "
| 48 | \n", "Maltese | \n", "6 | \n", "0 | \n", "
| 49 | \n", "Mordovian | \n", "6 | \n", "1 | \n", "
| 50 | \n", "North_Ossetian | \n", "6 | \n", "2 | \n", "
| 51 | \n", "Norwegian | \n", "6 | \n", "3 | \n", "
| 52 | \n", "Orcadian | \n", "6 | \n", "4 | \n", "
| 53 | \n", "Palestinian | \n", "6 | \n", "5 | \n", "
| 54 | \n", "Polish | \n", "6 | \n", "6 | \n", "
| 55 | \n", "Romanian | \n", "6 | \n", "7 | \n", "
| 56 | \n", "Russian | \n", "7 | \n", "0 | \n", "
| 57 | \n", "Sardinian | \n", "7 | \n", "1 | \n", "
| 58 | \n", "Saudi | \n", "7 | \n", "2 | \n", "
| 59 | \n", "Scottish | \n", "7 | \n", "3 | \n", "
| 60 | \n", "Shetlandic | \n", "7 | \n", "4 | \n", "
| 61 | \n", "Sicilian | \n", "7 | \n", "5 | \n", "
| 62 | \n", "Sorb | \n", "7 | \n", "6 | \n", "
| 64 | \n", "Spanish | \n", "7 | \n", "7 | \n", "
| 63 | \n", "Spanish_North | \n", "8 | \n", "0 | \n", "
| 65 | \n", "Syrian | \n", "8 | \n", "1 | \n", "
| 66 | \n", "Turkish | \n", "8 | \n", "2 | \n", "
| 67 | \n", "Ukrainian | \n", "8 | \n", "3 | \n", "
68 rows × 3 columns
\n", "| \n", " | Population | \n", "colorIndex | \n", "symbolIndex | \n", "
|---|---|---|---|
| 0 | \n", "Abkhasian | \n", "0 | \n", "0 | \n", "
| 1 | \n", "Adygei | \n", "0 | \n", "1 | \n", "
| 2 | \n", "Albanian | \n", "0 | \n", "2 | \n", "
| 3 | \n", "Aleut | \n", "0 | \n", "3 | \n", "
| 4 | \n", "Aleut_Tlingit | \n", "0 | \n", "4 | \n", "
| 5 | \n", "Altaian | \n", "0 | \n", "5 | \n", "
| 6 | \n", "Ami | \n", "0 | \n", "6 | \n", "
| 7 | \n", "Armenian | \n", "0 | \n", "7 | \n", "
| 8 | \n", "Assyrian | \n", "0 | \n", "8 | \n", "
| 9 | \n", "Atayal | \n", "0 | \n", "9 | \n", "
| 10 | \n", "Avar | \n", "0 | \n", "10 | \n", "
| 11 | \n", "Azeri | \n", "0 | \n", "11 | \n", "
| 12 | \n", "Balkar | \n", "0 | \n", "12 | \n", "
| 13 | \n", "Basque | \n", "1 | \n", "0 | \n", "
| 14 | \n", "BedouinA | \n", "1 | \n", "1 | \n", "
| 15 | \n", "BedouinB | \n", "1 | \n", "2 | \n", "
| 16 | \n", "Belarusian | \n", "1 | \n", "3 | \n", "
| 17 | \n", "Borneo | \n", "1 | \n", "4 | \n", "
| 18 | \n", "Bulgarian | \n", "1 | \n", "5 | \n", "
| 19 | \n", "Buryat | \n", "1 | \n", "6 | \n", "
| 20 | \n", "Cambodian | \n", "1 | \n", "7 | \n", "
| 21 | \n", "Chechen | \n", "1 | \n", "8 | \n", "
| 22 | \n", "Chukchi | \n", "1 | \n", "9 | \n", "
| 23 | \n", "Chukchi1 | \n", "1 | \n", "10 | \n", "
| 24 | \n", "Chuvash | \n", "1 | \n", "11 | \n", "
| 25 | \n", "Croatian | \n", "1 | \n", "12 | \n", "
| 26 | \n", "Cypriot | \n", "2 | \n", "0 | \n", "
| 27 | \n", "Czech | \n", "2 | \n", "1 | \n", "
| 28 | \n", "Dai | \n", "2 | \n", "2 | \n", "
| 29 | \n", "Daur | \n", "2 | \n", "3 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "
| 89 | \n", "Saami.DG | \n", "6 | \n", "11 | \n", "
| 90 | \n", "Saami_WGA | \n", "6 | \n", "12 | \n", "
| 91 | \n", "Sardinian | \n", "7 | \n", "0 | \n", "
| 92 | \n", "Saudi | \n", "7 | \n", "1 | \n", "
| 93 | \n", "Scottish | \n", "7 | \n", "2 | \n", "
| 94 | \n", "Selkup | \n", "7 | \n", "3 | \n", "
| 95 | \n", "Semende | \n", "7 | \n", "4 | \n", "
| 96 | \n", "She | \n", "7 | \n", "5 | \n", "
| 97 | \n", "Sherpa.DG | \n", "7 | \n", "6 | \n", "
| 98 | \n", "Sicilian | \n", "7 | \n", "7 | \n", "
| 99 | \n", "Spanish | \n", "7 | \n", "8 | \n", "
| 100 | \n", "Spanish_North | \n", "7 | \n", "9 | \n", "
| 101 | \n", "Syrian | \n", "7 | \n", "10 | \n", "
| 102 | \n", "Tajik | \n", "7 | \n", "11 | \n", "
| 103 | \n", "Thai | \n", "7 | \n", "12 | \n", "
| 104 | \n", "Tibetan.DG | \n", "8 | \n", "0 | \n", "
| 105 | \n", "Tu | \n", "8 | \n", "1 | \n", "
| 106 | \n", "Tubalar | \n", "8 | \n", "2 | \n", "
| 107 | \n", "Tujia | \n", "8 | \n", "3 | \n", "
| 108 | \n", "Turkish | \n", "8 | \n", "4 | \n", "
| 109 | \n", "Turkmen | \n", "8 | \n", "5 | \n", "
| 110 | \n", "Tuvinian | \n", "8 | \n", "6 | \n", "
| 111 | \n", "Ukrainian | \n", "8 | \n", "7 | \n", "
| 112 | \n", "Ulchi | \n", "8 | \n", "8 | \n", "
| 113 | \n", "Uygur | \n", "8 | \n", "9 | \n", "
| 114 | \n", "Uzbek | \n", "8 | \n", "10 | \n", "
| 115 | \n", "Xibo | \n", "8 | \n", "11 | \n", "
| 116 | \n", "Yakut | \n", "8 | \n", "12 | \n", "
| 117 | \n", "Yi | \n", "9 | \n", "0 | \n", "
| 118 | \n", "Yukagir | \n", "9 | \n", "1 | \n", "
119 rows × 3 columns
\n", "