ml-finance-python

python scripts for finance machine learning

git clone https://9o.is/git/ml-finance-python.git

notebook.ipynb

(298782B)


      1 {
      2  "cells": [
      3   {
      4    "cell_type": "markdown",
      5    "metadata": {},
      6    "source": [
      7     "# Principal Component Analysis\n",
      8     "\n",
      9     "by Rene Zhang and Max Margenot\n",
     10     "\n",
     11     "Part of the Quantopian Lecture Series:\n",
     12     "\n",
     13     "* [www.quantopian.com/lectures](https://www.quantopian.com/lectures)\n",
     14     "* [https://github.com/quantopian/research_public](https://github.com/quantopian/research_public)\n",
     15     "\n",
     16     "---\n",
     17     "\n",
     18     "Applications in many fields, such as image processing, bioinformatics, and quantitative finance, involve large-scale data. Both the size and complexity of this data can make the computations required for analysis practically infeasible. Principal Component Analysis (PCA) is a classical method for dimension reduction. It uses the first several **principal components**, statistical features that explain most of the variation of a $m \\times n$ data matrix $\\mathbf{X}$, to describe the large-scale data matrix $\\mathbf{X}$ economically.   "
     19    ]
     20   },
     21   {
     22    "cell_type": "code",
     23    "execution_count": 1,
     24    "metadata": {
     25     "collapsed": true
     26    },
     27    "outputs": [],
     28    "source": [
     29     "from numpy import linalg as LA\n",
     30     "import numpy as np\n",
     31     "import pandas as pd\n",
     32     "import matplotlib.pyplot as plt"
     33    ]
     34   },
     35   {
     36    "cell_type": "markdown",
     37    "metadata": {},
     38    "source": [
     39     "We will introduce PCA with an image processing example. A grayscale digital image can be represented by a matrix, whose $(i,j)^{th}$ entry corresponds to the measurement of gray\n",
     40     "scale at the $(i,j)^{th}$ pixel. The following gray-scale image has $200 \\times 200$ pixels, though it can be changed on the fly. We store it in a matrix $\\mathbf{X}$. The number of rows of the  $\\mathbf{X}$ is $200$, and the number of columns of $\\mathbf{X}$ is $200$."
     41    ]
     42   },
     43   {
     44    "cell_type": "code",
     45    "execution_count": 2,
     46    "metadata": {
     47     "collapsed": true
     48    },
     49    "outputs": [],
     50    "source": [
     51     "def generate_test_image(m,n):\n",
     52     "    X = np.zeros((m,n))\n",
     53     "# generate a rectangle\n",
     54     "    X[25:80,25:80] = 1\n",
     55     "# generate a triangle\n",
     56     "    for i in range(25, 80, 1):\n",
     57     "        X[i+80:160, 100+i-1] = 2\n",
     58     "# generate a circle\n",
     59     "    for i in range(0,200,1):\n",
     60     "        for j in range(0,200,1):\n",
     61     "            if ((i - 135)*(i - 135) +(j - 53)*(j - 53) <= 900):\n",
     62     "                X[i, j] = 3\n",
     63     "    return X\n",
     64     "X = generate_test_image(200,200)"
     65    ]
     66   },
     67   {
     68    "cell_type": "markdown",
     69    "metadata": {},
     70    "source": [
     71     "We start with a simple checkboard pattern, add some random normal noise, and add a gradient."
     72    ]
     73   },
     74   {
     75    "cell_type": "code",
     76    "execution_count": 3,
     77    "metadata": {
     78     "collapsed": false
     79    },
     80    "outputs": [
     81     {
     82      "data": {
     83       "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeQAAAHrCAYAAAAe+O4sAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlU1Pe9//HXzADDvgyboEhEFtGIsrjgGkiiV5M2m2lt\nE5Pc2NM2Ma1NbLO097a55+Z2O4ltbtPc9NbkZmlz06Z2MSttE401LggqijEBUXADBFlkk3V+f+Q6\nvxg1IoLfz8DzcY7nwMwwvOELPvnOfL+fsbndbrcAAICl7FYPAAAACDIAAEYgyAAAGIAgAwBgAIIM\nAIABCDIAAAbwsXoAwJu88MIL+sMf/qDe3l719fVpxowZWrlypVwu1zlv/8///M968MEHlZ6eft77\nXL16tUaPHq0vfvGLA5rpqaeeUm1trf793//9jMtvvvlmnTp1St3d3Tp8+LCSkpLkdruVnJysX/zi\nFxf9eTo7O1VQUKDPf/7zZ1336quvqqCgQGvWrBnQ1wCAIAP9tnr1am3dulXPPvusYmJi1NfXp9Wr\nV+uOO+7QH//4R/n5+Z31Mf/zP/9zwft94IEHhmJc/fGPf5QkHT16VAsXLtSbb755Sfe3Z88erVu3\n7pxBliSbzXZJ9w+MdDxkDfRDc3OzXnzxRT3++OOKiYmRJNntdn3729+W0+nUX/7yF0lSfn6+fvnL\nX2rRokWqrq5Wfn6+duzYIUl65plnNGvWLN166616+eWXlZ+fL0l65JFH9Mwzz3g+/ne/+51uvfVW\nzZ07Vz/5yU88M7z66qtavHixFi5cqGXLlqm6uvqSvqbt27frlltu0YIFC7R06VIdO3ZMklRTU6M7\n77xT119/vRYsWKBf/OIXqq2t1be+9S3t2LFDd9xxx2fe75YtW3Tbbbfpscce09VXX61bb71Vu3fv\n1rJlyzRnzhz98pe/9Nz2F7/4hRYuXKhrr71W99xzj9ra2iRJjY2NWrZsmfLz8/XAAw/ou9/9rud7\nVFZWpttvv10LFy7UDTfcoH379l3S9wEwBUEG+mHXrl2Kj4/X2LFjz7ouLy9PhYWFnvdra2v11ltv\nKS4uznPZ/v379eyzz+q1117Tb3/7W7311lvn3aMsKirSq6++qrVr1+qll15SbW2tGhoa9Nhjj+n5\n559XQUGBEhIS9PTTTw/462ltbdWKFSv08MMP669//au+/OUv6/7775f08V79rFmz9Prrr2vdunU6\nePCgfH19tXLlSmVnZ+vFF1+84P3v2bNH1113nd555x319vbqhz/8oZ599lmtWbNGzzzzjHp7e7V7\n9279/ve/15///Gf99a9/VVtbm15++WVJ0n/9139p1KhRevfdd3XXXXd59u77+vq0YsUK3XrrrSoo\nKNC//uu/6p577hELDmI4IMhAPzQ3N5/3eeKoqCg1Nzd73s/LyzvrNtu3b9eMGTMUGRkpPz8/3XLL\nLef9XNdff70kKSYmRlFRUaqpqZHL5VJxcbFn7zwnJ0eHDx8e8NdTWFioMWPGaNq0aZKkz33ucyov\nL1ddXZ0iIyO1ceNG7dixQ35+flq9evV5v/bziYiIUGZmpiQpOTlZ06dPl5+fn1JTU9XT06PGxkZl\nZGRo/fr1CggIkM1mU2ZmpudrKioq8nwfMjIydOWVV0qSysvL1dLSohtuuMHzfQgJCVFJScmAvxeA\nKXgOGeiHiIgIHT9+/JzX1dfXKzIy0vN+WFjYWbc5efLkGZfHxsae93OFhIR43rbb7Z4DyH7+859r\n/fr16uvrU2trq8aNGzeQL8Uzz8GDB7V48WJJktvtVmBgoBoaGrR8+XJJ0g9+8AOdOHFCt99+u+69\n996Luv+goCDP2w6HQ4GBgZ6vx+12q7e3Vx0dHfqP//gPFRUVSfr4j55rrrnGM9+5vl8tLS1qbW09\nY+62tjY1NTUN5NsAGIUgA/2QmZmp5uZmffTRR0pLSzvjug0bNlzwedXg4GC1t7d73j9f3M/nzTff\n1IYNG/Tyyy8rLCxMr776ql577bWLuo9Pio2NVVpaml555ZVzXv/Vr35VX/3qV1VZWanly5crJydn\nwJ/r004/VP/ss8+qurpaf/nLX+R0OvX44497Hmk41/crJSVFMTExCg8Pv+QD1AAT8ZA10A/BwcH6\n2te+pgcffFBHjhyRJPX29uqJJ55QX1+fZ4/tfCZPnqxt27apqalJXV1dnoPA+uvEiRMaPXq0wsLC\n1NjYqLfeeuuMYF3Ip59jnTp1qo4dO6bS0lJJUlVVlR5++GFJ0ve+9z1t3bpVkjRmzBhFR0fLZrPJ\n19dXLS0tFzX3Z83S2NiopKQkOZ1OHT58WBs3bvR8TRkZGXr77bclSaWlpdq7d68kaezYsXK5XPr7\n3/8uSWpoaNCqVavU2dl5yXMBVmMPGeinu+++W06nU/fcc88Z5yE///zz8vH5+Ffp0wdqnX4/IyND\n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\n",
     84       "text/plain": [
     85        "<matplotlib.figure.Figure at 0x7f874c587e50>"
     86       ]
     87      },
     88      "metadata": {},
     89      "output_type": "display_data"
     90     }
     91    ],
     92    "source": [
     93     "imgplot = plt.imshow(X, cmap='gray')\n",
     94     "plt.title('Original Test Image');"
     95    ]
     96   },
     97   {
     98    "cell_type": "code",
     99    "execution_count": 4,
    100    "metadata": {
    101     "collapsed": true
    102    },
    103    "outputs": [],
    104    "source": [
    105     "m = X.shape[0] # num of rows\n",
    106     "n = X.shape[1] # num of columns"
    107    ]
    108   },
    109   {
    110    "cell_type": "markdown",
    111    "metadata": {},
    112    "source": [
    113     "Set each row as a variable, with observations in the columns. Denote the covariance matrix of $\\mathbf{X}$ as $\\mathbf{C}$, where the size of $\\mathbf{C}$ is $m \\times m$. $\\mathbf{C}$ is a matrix whose $(i,j)^{th}$ entry is the covariance between the $i^{th}$ row and $j^{th}$ row of the matrix $\\mathbf{X}$."
    114    ]
    115   },
    116   {
    117    "cell_type": "code",
    118    "execution_count": 5,
    119    "metadata": {
    120     "collapsed": true
    121    },
    122    "outputs": [],
    123    "source": [
    124     "X = np.asarray(X, dtype=np.float64)\n",
    125     "C = np.cov(X)"
    126    ]
    127   },
    128   {
    129    "cell_type": "code",
    130    "execution_count": 6,
    131    "metadata": {
    132     "collapsed": false
    133    },
    134    "outputs": [
    135     {
    136      "data": {
    137       "text/plain": [
    138        "62"
    139       ]
    140      },
    141      "execution_count": 6,
    142      "metadata": {},
    143      "output_type": "execute_result"
    144     }
    145    ],
    146    "source": [
    147     "np.linalg.matrix_rank(C)"
    148    ]
    149   },
    150   {
    151    "cell_type": "markdown",
    152    "metadata": {},
    153    "source": [
    154     "Performing principal component analysis decomposes the matrix $\\mathbf{C}$ into:\n",
    155     "\n",
    156     "$$\\mathbf{C} = \\mathbf{L}\\mathbf{P}\\mathbf{L}^{\\top},$$\n",
    157     "\n",
    158     "where $\\mathbf{P}$ is a diagonal matrix $\\mathbf{P}=\\text{diag}(\\lambda_1,\\lambda_2,\\dots,\\lambda_m)$, with $\\lambda_1 \\geq \\lambda_1 \\geq \\dots \\lambda_m \\geq 0$ being the eigenvalues of matrix $\\mathbf{C}$. The matrix $\\mathbf{L}$ is an orthogonal matrix, consisting the eigenvectors of matrix $\\mathbf{C}$."
    159    ]
    160   },
    161   {
    162    "cell_type": "code",
    163    "execution_count": 7,
    164    "metadata": {
    165     "collapsed": true
    166    },
    167    "outputs": [],
    168    "source": [
    169     "P, L = LA.eigh(C)"
    170    ]
    171   },
    172   {
    173    "cell_type": "markdown",
    174    "metadata": {},
    175    "source": [
    176     "The function `LA.eigh` lists the eigenvalues from small to large in $P$. Let us change the order first to list them from largest to smallest and make sure that $\\mathbf{L}\\mathbf{P}\\mathbf{L}^{\\top}==\\mathbf{C}$. "
    177    ]
    178   },
    179   {
    180    "cell_type": "code",
    181    "execution_count": 8,
    182    "metadata": {
    183     "collapsed": true
    184    },
    185    "outputs": [],
    186    "source": [
    187     "P = P[::-1]\n",
    188     "L = L[:,::-1]"
    189    ]
    190   },
    191   {
    192    "cell_type": "code",
    193    "execution_count": 9,
    194    "metadata": {
    195     "collapsed": false
    196    },
    197    "outputs": [
    198     {
    199      "data": {
    200       "text/plain": [
    201        "True"
    202       ]
    203      },
    204      "execution_count": 9,
    205      "metadata": {},
    206      "output_type": "execute_result"
    207     }
    208    ],
    209    "source": [
    210     "np.allclose(L.dot(np.diag(P)).dot(L.T), C)"
    211    ]
    212   },
    213   {
    214    "cell_type": "markdown",
    215    "metadata": {},
    216    "source": [
    217     "Here we plot all of the eigenvalues:"
    218    ]
    219   },
    220   {
    221    "cell_type": "code",
    222    "execution_count": 10,
    223    "metadata": {
    224     "collapsed": false
    225    },
    226    "outputs": [
    227     {
    228      "data": {
    229       "image/png": "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\nSj179jSf4/F4zC5GWlqapkyZonvuuUf/+te/zOBQWFiorKws/fe//5Xb7dbu3bubXIPUnNLSUj38\n8MOaP3++ampqVFlZqcGDB8swDP3973/XU089pYULF2rAgAHKzMxU//79Gzx/3759ioqKMo+joqJU\nUlLS4mv26tVLe/bsafFrWrpuXaA8/fTTtWHDBs2bN09S7aYMixcv1uHDh1VdXd0gjHg8HnXv3r3J\n1/F6vSooKJDb7VZJSYluuukm8/Gm/j7279+vHj16mOfrAlhLf7fNGT16tF5//XWde+65Kikp0YAB\nAxo83tL31Fj991t9cXFxGjx4sDZu3Nhg/RUAdAWEKACwiZb+IVunR48eOnz4sHm8d+9enX766YqN\njVXPnj0bjIzVWbduXbPX+/GPfyy3262tW7dqzZo1mj59uiTpwQcf1MCBA/X0009Lkm644Ybjnut2\nu811PlJtwKsTGxurW265pckuxoABA/TYY4+pqqpKzz77rGbOnKlly5Y1+Jo+ffo0CAkHDhwI2GWq\nCwyfffaZzj77bPN8VVWVHn/8cf32t79t8bppaWmaNWuWfvSjH+m8885TZGSk9uzZo/vuu08vvfSS\nfvzjH6uwsNDs4LRkwYIFCgsL04oVK2QYhv7whz8EfE6vXr0a1FZVVaU9e/a0+HfbnOHDh+v+++/X\n66+/fly97f2eGtu6dau2bNmis88+W0uWLNG4cePafA0AcCrG+QDAQc455xytWrVKkvTZZ5/p448/\nliT17dtXJ598svLy8iTVdkIyMjJ05MiRgNdMS0tTdna2zj77bLPrsG/fPjOIfPDBByosLFRZWVmD\n58XGxmrv3r3at2+fqqurG2xmMGLECL344ovy+/2qqanRU089pTVr1mjbtm268847VVlZKcMwNHDg\nQLndx/8ouvjii/XSSy/J7/fr8OHDWr58ubmuqTk9e/bUzTffrLvvvltff/21JKm8vFz33Xeftm7d\nqm7dujV53bqgN2TIEJWUlOiVV14xO3L79+9XZGSkzjrrLFVVVemFF14wrys1H3z37dun/v37yzAM\nbd26VRs2bGgQfpty5pln6pRTTtFbb70lqXar8czMzHb93YaHh+uiiy7SX//6V7ODVael78kwDPPP\npiU1NTXKzMzU9OnTNWPGDD311FMqLi5u8TkA0JnQiQIAG3C5XLrpppvk8Xgk1f4j1eVyady4cerX\n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\nT1hcC24ZJqEAAAAASUVORK5CYII=\n",
    230       "text/plain": [
    231        "<matplotlib.figure.Figure at 0x7f874c533c10>"
    232       ]
    233      },
    234      "metadata": {},
    235      "output_type": "display_data"
    236     }
    237    ],
    238    "source": [
    239     "plt.semilogy(P, '-o')\n",
    240     "plt.xlim([1, P.shape[0]])\n",
    241     "plt.xlabel('eigenvalue index')\n",
    242     "plt.ylabel('eigenvalue in a log scale')\n",
    243     "plt.title('Eigenvalues of Covariance Matrix');"
    244    ]
    245   },
    246   {
    247    "cell_type": "markdown",
    248    "metadata": {},
    249    "source": [
    250     "The $i^{th}$ **principal component** is given as $i^{th}$ row of $\\mathbf{V}$, \n",
    251     "\n",
    252     " $$\\mathbf{V} =\\mathbf{L}^{\\top} \\mathbf{X}.$$\n"
    253    ]
    254   },
    255   {
    256    "cell_type": "code",
    257    "execution_count": 11,
    258    "metadata": {
    259     "collapsed": true
    260    },
    261    "outputs": [],
    262    "source": [
    263     "V = L.T.dot(X)"
    264    ]
    265   },
    266   {
    267    "cell_type": "code",
    268    "execution_count": 12,
    269    "metadata": {
    270     "collapsed": false
    271    },
    272    "outputs": [
    273     {
    274      "data": {
    275       "text/plain": [
    276        "(200, 200)"
    277       ]
    278      },
    279      "execution_count": 12,
    280      "metadata": {},
    281      "output_type": "execute_result"
    282     }
    283    ],
    284    "source": [
    285     "V.shape"
    286    ]
    287   },
    288   {
    289    "cell_type": "markdown",
    290    "metadata": {},
    291    "source": [
    292     "If we multiply both sides on the left by $\\mathbf{L}$, we get the following:\n",
    293     "\n",
    294     " $$\\mathbf{L}\\mathbf{L}^{\\top} \\mathbf{X}= \\mathbf{L}\\mathbf{V}.$$\n",
    295     "\n",
    296     "The matrix $\\mathbf{L}$ is the set of eigenvectors from a covariance matrix , so $\\mathbf{L}\\mathbf{L}^{\\top} = \\mathbf{I}$ and $\\mathbf{L}\\mathbf{L}^{\\top}\\mathbf{X} = \\mathbf{X}$. The relationship among matrices of $\\mathbf{X}$, $\\mathbf{L}$, and $\\mathbf{V}$ can be expressed as\n",
    297     " \n",
    298     "$$\\mathbf{X} = \\mathbf{L}\\mathbf{V}.$$\n",
    299     "\n",
    300     "\n",
    301     "To approximate $\\mathbf{X}$, we use $k$ eigenvectors that have largest eigenvalues:\n",
    302     "\n",
    303     "$$\\mathbf{X} \\approx \\mathbf{L[:, 1:k]}\\mathbf{L[:, 1:k]}^{\\top} \\mathbf{X}.$$\n",
    304     "\n",
    305     "Denote the approximated $\\mathbf{X}$ as $\\tilde{\\mathbf{X}} = \\mathbf{L[:, 1:k]}\\mathbf{L[:, 1:k]}^{\\top} \\mathbf{X}$. When $k = m $, the $\\tilde{\\mathbf{X}}$ should be same as $\\mathbf{X}$."
    306    ]
    307   },
    308   {
    309    "cell_type": "code",
    310    "execution_count": 13,
    311    "metadata": {
    312     "collapsed": false
    313    },
    314    "outputs": [],
    315    "source": [
    316     "k = 200\n",
    317     "X_tilde =  L[:,0:k-1].dot(L[:,0:k-1].T).dot(X)"
    318    ]
    319   },
    320   {
    321    "cell_type": "code",
    322    "execution_count": 14,
    323    "metadata": {
    324     "collapsed": false
    325    },
    326    "outputs": [
    327     {
    328      "data": {
    329       "text/plain": [
    330        "True"
    331       ]
    332      },
    333      "execution_count": 14,
    334      "metadata": {},
    335      "output_type": "execute_result"
    336     }
    337    ],
    338    "source": [
    339     "np.allclose(X_tilde, X)"
    340    ]
    341   },
    342   {
    343    "cell_type": "code",
    344    "execution_count": 15,
    345    "metadata": {
    346     "collapsed": false,
    347     "scrolled": false
    348    },
    349    "outputs": [
    350     {
    351      "data": {
    352       "image/png": "iVBORw0KGgoAAAANSUhEUgAAAeQAAAHrCAYAAAAe+O4sAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl01PW9//HXzCSZJJN9ZTFESMgiEEzCFlYJCIK1brSl\nV3GpPbfWrYutyLWttlq1vVZra3vdDlpt1XqltIiWIIoga0jAQBAMBJKwZSP7Atnm9wc/5hIBgZjw\n/SR5Ps7hnGRmMnkn35Bnvt/5zmdsbrfbLQAAYCm71QMAAACCDACAEQgyAAAGIMgAABiAIAMAYACC\nDACAAQgyjDV//nxdd911Vo8hSdq+fbu++93vduv9FRQUXPDHzZo1S1u2bDnt8ueee04///nPu2O0\ni+Zvf/ub/vCHP0jq/P1YunSpbr/99nN+fEdHh2655RbNnDlTe/bsOevtTr2/BQsW6N133+2G6U93\n6NAhjRgxokfuG/2Dl9UDAGeyZ88eBQUFKTQ0VHl5eRo9erSl86SkpOjll1/utvtbsmSJ0tPTlZCQ\n0G332dvcdNNNnre/+P2w2Wzn/PiysjLl5uZq+/btcjgcX3rb87m/7nCxPg/6JoIMIy1dulRz5syR\n0+nU0qVLPUHOzs7WY489pkmTJmn16tVqa2vT008/rZSUFC1atEhBQUHatWuXioqKNHLkSD3zzDNy\nOp3KzMzUjTfeqOXLl+uVV16R2+3Wz372Mx06dEje3t664447dN111+mVV15Rdna2/ud//keSdMcd\nd2jGjBmKj4/Xz372M61cuVLPPfecKisrVVpaqvz8fE2cOFFz587VH//4R5WXl+uxxx7TtGnTdOzY\nMT344IPavXu32tradOWVV2rhwoV666239K9//UurV69WVVWVbrvtNj333HNavny5WlpaNHPmTC1a\ntEg2m007d+7UwoUL1dbWpmnTpp3XL/ylS5dq9erV8vHxUW5uroYOHaq77rpLTz31lA4ePKgf/OAH\n+sY3viG3261f/epX2rhxo9ra2pSWlqYnnnhCDodDhw4d0j333KP6+npNmjRJZWVluuqqq3Tdddcp\nNzdXTzzxhOrq6hQWFqb//u//VkxMTKcZbrrpJt1zzz3KyMhQXl6evvWtb2nlypUaMmSIPvjgA/3j\nH//QiBEjVFpaqpEjR3b6fgQHB8vtduvRRx/VunXr5OPjo2eeeUbx8fGe+z+5d9zR0aFrrrlGTz/9\ntK677jqtWbNG0dHRkqSkpCStWbPmvH7eFi1apODgYG3cuFF33XWXpk2bdsZtJ53Yy54xY4ZWrlyp\ngwcPauzYsfrd73532n3+9Kc/VXBwsH72s5+d1wwAh6xhnI6ODq1atUqzZ89WZmam1q5dq7a2Ns/1\nhYWFGj16tFasWKHvfe97evjhhz3XrVq1Ss8995zWrl2r+vp6vf32257rysrK9O9//1sDBgzQz3/+\nc02YMEErVqzQCy+8oF//+tc6fPiwbr31VpWXl2v9+vVatWqVGhsb9R//8R+SOu/9rFmzRk888YSW\nL1+uFStW6JNPPtGSJUt055136qWXXpIkvfnmm2pubtaKFSu0dOlSLV26VFu3btX8+fM1atQoPfDA\nA7rtttv0z3/+U1lZWVqyZIlWrVqlkpISvfHGG5KkRx55RLfeeqtWrFih1NRUHTx48Ly+h+vXr9d9\n992nlStXqrCwUIsXL9abb76pxx57TH/6058kSR988IG2bt2q999/X++//7527typ999/X5L0m9/8\nRlOmTNGqVas0ZcoUbdiwQZLU2Niou+66S/fff79WrlypW265RT/84Q9P+/zjx4/Xp59+KknKycnR\n5Zdfrq1bt3renzhxoud7+sXvh3TiEPa8efOUlZWlcePG6dVXX+10/3a7Xa+++qocDofef/99JSUl\nnfbHyoXurW7atEnvvPOOZs+efdZtd9Lq1av16quvKisrS5s2bdK2bds63deLL76o+vp6PfTQQxc0\nA/o3ggzjfPLJJxo1apT8/f3l6+urcePGafXq1Z7rXS6XrrrqKknS7NmztXv3bh0/flySNGPGDAUF\nBXnePvUX5fTp0yVJbW1t2rBhg7797W9LkgYNGqTx48dr06ZNstvtevTRR/Xkk0/qmWee0a9//esz\nzpiamqrQ0FCFhIQoMjJSU6dOlSQlJCSovLxcknT77bd74hcYGKjhw4frwIEDnvs4uWrtxx9/rBtv\nvFEul0t2u13z5s3TBx98oJaWFu3YsUNz5syRJF111VXy9fU9r+9hfHy8hgwZIm9vb8XGxmrSpEmy\n2WxKSEhQRUWFpBOPRy9ZskR2u10+Pj4aNWqUZ77c3FzNnTtXkjRz5kxFRUVJOhHTAQMGKCMjQ5I0\nd+5clZSUqLS0tNPn/2KQv/3tb3uClpub6/n4U526im9cXJySk5MlScnJyafd/5l8cRXgC10VOCMj\n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\nDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiA\nIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAG\nIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACA\nAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMA\nYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgAABiAIAMAYACCDACAAQgyAAAGIMgA\nABiAIAMAYAAvqwfoq1pbW9XQ0CCHw2H1KD2upqbG6hEs1dTUpPb2dqvHANDLEeQeUl9fr5KSEjmd\nTqtH6XEFBQVWj2CphoYGHT9+3OoxAPRyBLmHNDU1qampyeoxLori4mKrRwCAXo/HkAEAMABBBgDA\nAAQZAAADEGQAAAxAkAEAMABBBgDAAAQZAAADEGQAAAxAkAEAMABBBgDAAAQZAAADEGQAAAxAkAEA\nMABBBgDAAAQZAAADEGQAAAxAkAEAMABBBgDAAAQZAAADEGQAAAxAkAEAMABBBgDAAAQZAAADEGQA\nAAxAkAEAMABBBgDAAAQZAAADEGQAAAxAkAEAMABBBgDAAAQZAAADEGQAAAxAkAEAMABBBgDAAAQZ\nAAADEGQAAAxAkAEAMABBBgDAAAQZAAADEGQAAAxAkAEAMMB5BbmgoEBXXnml/va3v0mSSktLtWDB\nAt1888360Y9+pNbWVknSsmXLNG/ePH3rW9/SO++803NTAwDQx5wzyM3NzXrssceUkZHhuezZZ5/V\nggUL9Ne//lVDhgzRkiVL1NzcrD//+c/6y1/+otdee01/+ctfVFdX16PDAwDQV5wzyE6nUy+//LKi\noqI8l2VnZ2v69OmSpOnTp2vDhg3Ky8tTSkqKXC6XnE6n0tLStHXr1p6bHACAPuScQbbb7fLx8el0\nWXNzs7y9vSVJ4eHhKi8v19GjRxUWFua5TVhYmCoqKrp5XAAA+iavr3oHbrf7gi4/k5ycnK86BizE\n9uu92Ha9G9uvb+lSkF0ul1paWuTj46OysjJFR0crKiqq0x5xWVmZUlNTz+v+xowZ05UxYICcnBy2\n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\nAABJRU5ErkJggg==\n",
    353       "text/plain": [
    354        "<matplotlib.figure.Figure at 0x7f874c4cd110>"
    355       ]
    356      },
    357      "metadata": {},
    358      "output_type": "display_data"
    359     }
    360    ],
    361    "source": [
    362     "plt.imshow(X_tilde, cmap='gray')\n",
    363     "plt.title('Approximated Image with full rank');"
    364    ]
    365   },
    366   {
    367    "cell_type": "markdown",
    368    "metadata": {},
    369    "source": [
    370     "The proportion of total variance due to the $i^{th}$ principal component is given by the ratio $\\frac{\\lambda_i}{\\lambda_1 + \\lambda_2 + \\dots \\lambda_m}.$ The sum of proportion of total variance should be $1$. As we defined, $\\lambda_i$ is $i^{th}$ entry of $\\mathbf{P}$, \n",
    371     "\n",
    372     "$$\\sum_{i}\\frac{P_i}{\\text{trace}(P)} = 1$$\n",
    373     "\n",
    374     "Where the trace$(P)$ is the sum of the diagonal of $P$."
    375    ]
    376   },
    377   {
    378    "cell_type": "code",
    379    "execution_count": 16,
    380    "metadata": {
    381     "collapsed": false
    382    },
    383    "outputs": [
    384     {
    385      "data": {
    386       "text/plain": [
    387        "1.0"
    388       ]
    389      },
    390      "execution_count": 16,
    391      "metadata": {},
    392      "output_type": "execute_result"
    393     }
    394    ],
    395    "source": [
    396     "(P/P.sum()).sum()"
    397    ]
    398   },
    399   {
    400    "cell_type": "code",
    401    "execution_count": 17,
    402    "metadata": {
    403     "collapsed": false
    404    },
    405    "outputs": [
    406     {
    407      "data": {
    408       "image/png": "iVBORw0KGgoAAAANSUhEUgAAA00AAAH6CAYAAADbU6fIAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xt0FeW9//HPzo0QCCEBEhACKCh6uEgMP0SiASQQQkut\nLG4KIt6qqFXLrYAKUvFQKqAoy1uttVVsTlHxFCsgUqhVKJeAqBGLwoGEW0IuJCTkQpLn90fMSCCZ\n7CR7k2Tyfq3VVWZmz8x37+wRPvk+84zLGGMEAAAAAKiST0MXAAAAAACNGaEJAAAAAGwQmgAAAADA\nBqEJAAAAAGwQmgAAAADABqEJAAAAAGwQmgA0WX/84x81ZswYJSQkaOTIkfrNb36jvLw8r5937dq1\nuuuuu2p83WeffaaTJ09KklasWKH/+Z//8cj5s7OzNWvWLI0aNUqjRo3SmDFjtGbNGo8cuzby8vJ0\nyy23KD4+Xjk5OZW2/d///Z92794tSdq5c6dGjhxZr3OtXbtWUVFRGj16tBISEhQfH6+ZM2cqOzu7\nXsetq+LiYn3wwQeSpLS0NI0ZM+aSnHfFihWKjY3V2rVrK62fPn269dlcffXVio+PV0JCgiZMmFDj\nMd357mzfvl0JCQkXrZ84cWKV+69evVpTp06t8bjn27hxoxYsWFCrfQDgUiE0AWiSnn32WW3YsEFv\nvPGG1q9fr7/97W8qLi7WAw88cEnO73K5anzNm2++qWPHjkmSZsyYoYkTJ3rk3E8//bQ6deqkDRs2\naMOGDVq1apVWrFihffv2eeT47vr222+Vm5urjRs3KiQkpNK2TZs2adeuXdayO59XTaKiovTRRx9p\n/fr11jmffvrpeh+3Lr755hv97//+ryQpIiJC69atuyTnXb9+vX73u9/p1ltvrbT+5Zdftj4bl8ul\nt956S+vXr9df//pX2+OdPHlSb7zxhlvnrupneOutt1qfw/nWrVunsWPHunXcCvHx8frNb35Tq30A\n4FIhNAFocnJycvT2229r6dKl6tChgyQpMDBQCxYs0L333itjjObNm6dXXnnF2uf85Ztvvllvv/22\nxo4dqxtvvFGbNm3Sb37zG40YMUITJ07UmTNnJElXX3210tLSrGNcuCxJmZmZuvfee5WQkKC4uDi9\n+eabkqSVK1fq3//+t2bPnq3169dr3rx5evnll/Xss89q8eLF1v7Z2dmKiopSXl6evv/+e91xxx2K\nj4/Xz372M3399ddVvv8DBw6oX79+1nK3bt20bt069evXT8eOHVPv3r2tbecvr127Vo888ohmzZql\nYcOG6e6779bu3bs1adIk3XjjjdV2HHbs2KGxY8dq9OjRmjhxopKTk3XixAnNnj1bGRkZGj16tE6f\nPm29fsuWLXrttdf01ltvaenSpZIkY4xeeeUVjR49WiNHjtTOnTsllXdsFi9erPj4eA0fPlyvvvpq\nlTVUZfLkyfr8888lSatWrdKTTz6p8ePH689//rOMMXruueeUkJCg0aNHa968eSosLJRU/vN//fXX\nNXbsWA0ePFgrV660jrl+/XqNGTNGo0eP1rRp05Samlrp+BMmTNDvf/97Pfzww/riiy80ZcqUSp+x\n3XnvuOMOvfnmm7r99tsVGxurmTNnVvm+cnJy9Nhjj2nUqFH66U9/qtdff12SNGvWLJ04cULz58+3\n7Q4ZY3Thc+u//fZbTZo0SQkJCRo7dqy2b98uSbrtttt07NgxjR49WsYY7d69W2PHjlVCQoLGjBlj\n/Zyq85Of/MT6PlRISUnRd999p/j4eElSYmKi1R2cOnWqdQ2tWbNGjz76qO68804999xzWrNmje69\n915JUnp6uu655x4lJCRoxIgReuutt6zjDxkyRGvWrNH48eN10003admyZda29957T/Hx8Ro1apTm\nzp2rkpISSdLHH3+sMWPGaMSIEfrFL36h3Nxc2/cFABcxANDEbN261YwcOdL2NXPnzjUvv/xylcvD\nhg0zCxYsMMYY8/bbb5v+/fubXbt2GWOMGTdunHn33XeNMcZcffXV5uTJk9YxKpbff/99c9dddxlj\njHn66afNokWLjDHGpKSkmD59+lj7DBs2zOzZs6fS+fft22eGDRtmHfO9994z06dPN2VlZWbkyJHm\nvffeM8YYs2fPHnPTTTeZ0tLSi97b0qVLzQ033GBeffVV880335iysjJr29GjR03v3r2rXH7//ffN\nddddZ44cOWKKi4tNbGysde4tW7aYIUOGXHSu/Px8M2jQILN3715jjDEbN260PvsdO3ZU+3M4//Pe\nsWOH6du3r9myZYsxxpg//OEPZtq0acYYY1atWmXuuusuc+7cOVNQUGBuvfVWs3Xr1ouOd/5nXmH/\n/v3mxhtvNMYY8+KLL5rY2Fhz+vRpY4wxH374obn11ltNYWGhKSsrMw8++GCln//DDz9sjDEmMzPT\nDBw40Hz77bfm+PHjZsCAASYlJcUYY8wbb7xh1Xnh8c+v5/zP2O68U6ZMMVOnTjVFRUXm7NmzZvDg\nwdb343wLFiywvp+nT582w4YNM0lJSVbtVe1zvl69elX63paVlZn4+HizceNGY4wxX3zxhbn++utN\nQUGB2bZtm0lISLBem5CQYD7++GNjjDHvvvuuGTVqlDHGXPS6882YMcO8+uqr1vKLL75o5s6da4wx\nJi0tzVx77bXm1KlTxhhj5syZYxYuXGiMMeavf/2rue6660xqaqq1fO+99xpjjFm4cKF5+umnjTHG\nHD582PTu3dukp6cbY4yJjY01v/71r40xxpw4ccL07t3bZGRkmMOHD5vBgwebzMxMY4wx06dPN2++\n+aY5fPiwue6668yhQ4eMMca89NJL5le/+pXtZwgAF6LTBKDJycnJUfv27et1jLi4OEnSVVddpcDA\nQA0YMECS1LNnT6Wnp0vSRb+tv3BZkp544gk9/vjjkqTIyEh16NDB6k5UtU9Fh+g///mPpPJhbAkJ\nCTp06JCys7OtIU1RUVEKCwvTnj17LjrnnDlz9Ktf/UqfffaZJkyYoJtuukkvvfSSW++7Z8+e6tq1\nq/z9/dWtWzfFxMTI5XLpqquu0qlTpy56/b59+9SpUyf1799fkjRy5EidPn1aR48edet8FYKDgzV0\n6FBJ0jXXXGPd67V161bdfvvt8vPzU2BgoG655RZ9/PHHNR6vuLhYb775ptXNkKRrr73WGib4z3/+\nU7feeqtatGghl8ulsWPHWl0pSbrlllskSWFhYYqOjtbevXv1+eefa9CgQYqMjJQkjR8/Xjt37lRZ\nWdlFx69OTeeNj49XQECAWrZsqe7du1fq0Jx/jNtvv12SFBISohEjRlQ6RlXfQzuHDx9Wbm6udV/Z\ntddeq/Dw8Co7mR9++KFGjBghSYqOjnbr5/zzn/+80hC984fmhYeHa/fu3db1OmDAgErXR48ePdSl\nS5eLjvnUU09p3rx5kso7qWFhYdZQV0nWPWQdO3ZUaGioTpw4oc8//1wDBgxQWFiYJOn555/XHXfc\noU8//VQxMTG6/PLLJZXfh/XJJ5/U+L4A4Hx+DV0AANRWaGjoRcPkaqtVq1aSJB8fHwUFBVnrfX19\nVVpa6vZxvvzyS61YsUInTpyQj4+PTp06VeM/akeOHKl//OMf6tq1q/bs2aPly5frP//5j86ePavR\no0dLKv+HcX5+fqVhb+cbP368xo8fr8LCQm3dulVPP/202rdvr5iYGLfed8V7rVj29fW1wsH5srOz\n1aZNm0rrgoODlZWVZXueC7Vu3brSeSvOlZubq//+7//WihUrZIzRuXPndO2111Z5jL1791rDyHx9\nfTVo0CDNnj3b2n5+oMnKyqpUd0hIiDIzM63ltm3bVtpWMVzr/H1at24tY4w12URNgcmd8wYHB1t/\n9vHxqfK7lpWVVelcbdq0qTLQuuvCmiqOmZWVVakeSfrggw/09ttv6+zZsyotLXUroMXExCgvL0/f\nfPONzp07p7KyMv2///f/JEmlpaVasWKFtm7dKmOMzpw5o6uuusrat7rPdO/evXr++ed18uRJ+fj4\nKCsrq9L388LPsays7KLvakBAgKTy79j27dsrXVvBwcHKzc296HMBgOoQmgA0Of3791dmZqb279+v\na665xlpfUlKiF198UdOnT7/oH6QXzu7mjop/jFXsX9WN8LNnz9bdd99tTfIQGxtb43Hj4+P1zDPP\nqGfPnho4cKCCgoIUHh6u4OBgffTRR7b7nj17Vjt37rS6NoGBgRo1apT27dunAwcOKDY2tt7v+3zt\n2rW7aIa6nJwctWvXrtJv/usqPDxc9957r4YMGVLja6OiotyetKB9+/aVAufp06fVrl07a/n893T6\n9GmFhITI399fX3zxhbU+JydHPj4+Cg0Ndeuc7py3Nsfo2LGjdYz6dFbbt29/0fegoq7i4mJr3YkT\nJ/TUU0/p/fffV8+ePXXw4EGrI2fHx8dHt9xyi9atW6eSkpJK+6xbt06fffaZEhMT1aZNG/3lL3/R\npk2bajzm7Nmz9cADD2jcuHGSVOMvA6TyX6Z888031nJeXp6KiooUHh6u2NhYLV++vMZjAEB1GJ4H\noMkJDg7WPffcozlz5iglJUWSVFBQoCeffFLffvutAgMD1aFDB2sIXGpqqpKSkmp9nvDwcH377beS\nym8w9/G5+D+Z2dnZ+q//+i9J5RMtFBYW6uzZs5Ikf39/a1KJ80VFRSkzM1Pvv/++NY1z586d1bFj\nR23cuFFSeXdg5syZ1iQCFVwul+bNm2dNdy1JGRkZ+vzzzzVw4ECFhobK19dXBw4ckKQqZzarTlVd\nhX79+ikzM9Oame/DDz9Ux44d1blzZ9tj+fn5uXWz/fDhw/XXv/5VZWVlMsbo5Zdf1meffeZ2zdUZ\nOnSo/va3v6mwsFAlJSV69913NWzYMGv7Rx99JGOMMjIytGfPHg0YMEAxMTFKSkqyhqQlJiYqJiam\nyp+7n59fpentKz67ms7rjmHDhlnT02dlZWnTpk1WSK6Lrl27KiwszBr2uHv3buXk5Khv377y8/PT\n2bNnVVZWpszMTLVu3VrdunVTSUmJ1qxZo7KyMhUVFdV4jp///Of6xz/+oS1btlSa2S8rK0tdunSx\nOlsbNmywrg87WVlZ1uQa7777roqLi2vcb+jQodq9e7dOnjwpY4yeeOIJffDBB4qNjdWOHTuskL93\n71799re/rbEGADgfnSYATdLDDz+stm3bavr06SorK5OPj4+GDx+uRYsWSZImTJighx9+WPHx8erd\nu7dGjRpl7evu9NePPfaYFi5cqBdeeEGTJk2qNMSswiOPPKKHHnpIoaGhmjhxoiZOnKgnnnhC77zz\njuLj4/WrX/1KjzzyyEX7DR8+XO+9955WrFhhrVuxYoUWLFig559/Xr6+vrrrrrsUGBhYab+WLVvq\nT3/6k5YtW6aXX35ZUvkwpClTplj3rDzyyCO65557FBERoSlTplT7/i78HKr6XFq2bKnnn39eixYt\nUmFhocLCwvTcc8/ZfGrlhg0bplmzZunYsWOaPHlyta+bPHmyjh07pp/85CeSpD59+mjatGk1Hr8m\no0aN0oEDB6x7a66//vpKn0XPnj01btw4HT9+XFOnTlWPHj0kSYsXL9b06dNVWlqqLl26VDuleXR0\ntJYtW6abbrpJ77zzjvXZ2Z3Xnc9bkh599FE99dRTSkhIkK+vr+6//3716dPHdh+747pcLj333HNa\nuHChnnvuObVu3VovvPCCAgICdM011ygwMFA33nijPvjgA91www0aOXKkOnTooLlz52rPnj2aOnWq\nHnvsMdtzXnHFFWrbtq0CAwMrBeoxY8boo48+Unx8vCIjIzVz5kxNnz5dy5YtU7du3ao93iOPPKL7\n779fYWFhuu222zRu3DjNmzdPiYmJ1X6Ol112mRYuXKjJkyfL399f/fv319SpU+Xv769FixZZP9fW\nrVtb9yECgLtcprZ3lNbSgQMH9NBDD2natGkX/cW5bds2Pffcc/L19VVsbKwefPBB7dy5U48++qiu\nvPJKGWPUq1cvPfHEE94sEQDQjNx8881atmyZrrvuuoYuBQDQRHi101RQUKDFixfrhhtuqHL7M888\nozfeeEPh4eGaMmWKNQvSwIEDKz03AwAAAAAailfvaWrRooVef/11hYeHX7QtNTVVbdu2VUREhFwu\nl4YMGaJ///vfkmo/nSoAAO5yd3gmAAAVvBqafHx8rCk/L5SRkWE9S0Eqf1ZGxbNRDh48qAcffFCT\nJ0/Wtm3bvFkiAKCZ2bx5M0PzAAC10mgmgqjoLnXv3l0PP/ywEhISlJqaqqlTp2rTpk3y86u+1LrM\nigUAAACgeYmOjq7Tfg0WmsLDwys9rC8tLU3h4eEKDw+3puCNjIxU+/btlZaWVuP0tnX9AAAnSUpK\n4loAxLUAnI/rAShXn0ZLgz2nqXPnzsrPz9fx48dVUlKirVu36sYbb9S6deushxeeOnVKmZmZioiI\naKgyAQAAADRzXu00JScn67e//a2OHz8uPz8/bdy4UTfffLO6dOmiuLg4LVy4UDNmzJAk/fSnP1W3\nbt3Uvn17zZw5U5s3b1ZJSYkWLVpkOzQPAAAAALzJq2mkd+/eeuutt6rdPmDAACUmJlZa16pVK73y\nyiveLAsAAAAA3NZgw/MAAAAAoCkgNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACA\nDUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEA\nAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANgg\nNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAA\nANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUIT\nAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACA\nDUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEA\nAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANgg\nNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADUITAAAAANggNAEAAACADa+HpgMH\n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\nT1lZWcrIyND79+9XzcDjx4/V2Ngoo9GoY8eOrXigOuAOfsxCcXGx+vr6FBAQIEk6deqU4uPjyQLc\nXnV1tbq7u7W0tKScnBxFRkauybzgsk1TV1eXhoeH1dzcrMHBQZWUlKi5udnZZQEOFRMTo9raWtvr\n4uJiZWZmKikpSTU1NWptbVV6eroTKwTWz8LCgsrLyxUXF2cbq62t/SkDqampunnzplpbW+Xp6am0\ntDQlJSXJz8/PidUDa2e1LEhSYWGh4uPjVxxHFuDOOjs7NTg4qObmZn369ElHjhxRbGys/vjjDx06\ndOiX5gWX3Z7X0dFhu215eHi4ZmZmNDc35+SqAMf68eaXFotFCQkJkqSEhAS1t7c7oyzAIby9vdXQ\n0KCQkBDb2GoZ6O3tVVRUlHx9feXt7a09e/aou7vbWWUDa261LKyGLMDd/f3HZD8/P83Pz6urq0uJ\niYmSfm1ecNmmaWpqSoGBgbbXAQEBmpqacmJFgOMNDg7q9OnTysjIUHt7u75+/Wrbjrdt2zZNTk46\nuUJg/Xh4eMjLy2vF2MLCwooMTExMaHp6esV8ERgYSDbgVlbLgiQ9fPhQJ0+eVEFBgT5+/PjTdyey\nAHdjMBi0ceNGSdKjR4908ODBNZsXXHZ73o943BR+N2FhYcrPz1dycrJGR0d14sQJWa1W2//JBH53\n/5QBsoHfQWpqqvz9/WU2m3Xnzh3V1dVp9+7dK44hC3BXr169Umtrq+7evaukpCTb+K/MCy670hQS\nErJiZWliYkLBwcFOrAhwLJPJpOTkZEnS9u3bFRQUpJmZGS0uLkqSxsfH/3WrBuBufH19V2TAZDIp\nJCRkxS+IZAO/g9jYWJnNZklSYmKiBgYGZDKZyALc3uvXr1VfX6+GhgZt3rx5zeYFl22a9u/fr7a2\nNklSf3+/TCaTNm3a5OSqAMd58uSJ7t27J0manJzU9PS0jh49qhcvXkiS2tradODAAWeWCDhcXFyc\nbW74XwaioqLU19en2dlZzc3NqaenR9HR0U6uFFhfZ8+e1ejoqKS/Lo7ftWsXWYDbm52d1dWrV3Xr\n1i1t2bJF0trNC4ZlF16bvX79uiwWi4xGo0pLSxUREeHskgCHmZubU0FBgb58+SKr1ar8/HyZzWad\nP39ei4uLCg0NVUVFhYxGo7NLBdZFf3+/KisrNTY2Jk9PT5lMJl27dk0XLlz4KQMvX75UQ0ODPDw8\nlJmZqcOHDzu7fGDNrJaFzMxM3b59Wz4+PvL19dWVK1cUGBhIFuDWWlpaVFdXpx07dmh5eVkGg0FV\nVWNa3ToAAAJ0SURBVFUqKSn55XnBpZsmAAAAAFhvLrs9DwAAAAAcgaYJAAAAAOygaQIAAAAAO2ia\nAAAAAMAOmiYAAAAAsIOmCQAAAADsoGkCAPznvXv3TuXl5f/XsUtLSzKbzetcEQDgd8JzmgAAbsVq\ntSoyMlJv3751dikAADfh6ewCAAD4NxaLRTdu3JDRaNS+ffvU09Oj4eFhnTlzRikpKRoaGlJRUZF8\nfHy0d+9e2/u+ffumsrIyjYyMaG5uTikpKcrKylJ5ebmCgoKUm5urzs5O1dTUqKmpSQaDwYlnCQD4\nr2J7HgDAZRgMBi0sLKi+vl7l5eVqaGiQJNXV1SktLU0PHjxQRESE7fjGxkaZTCbdv39fLS0tevr0\nqQYGBlRYWKjnz59rcHBQlZWVqqqqomECAPwjVpoAAC4lJiZGkhQaGqrPnz9LkgYGBpSbmytJio2N\ntR3b2dmp8fFxdXZ2SpIWFxc1MjKiXbt26dKlSzp+/Ljy8vIUFhbm4LMAALgSmiYAgEsxGo22v/9+\nWa6Hx1+bJ6xWq23My8tLeXl5SkpK+ulzJicn5e/vr7GxsXWsFgDgDtieBwBweeHh4eru7pYkdXR0\n2Majo6P17NkzSdL3799VWVmpmZkZffjwQXV1dWpubtabN2/U1dXllLoBAK6BpgkA4BLsXXOUl5en\npqYmZWdna2hoyLYalZGRIV9fX6Wnpys9PV1bt26Vn5+fysrKlJOTo4CAAF2+fFmlpaWan5931KkA\nAFwMtxwHAAAAADtYaQIAAAAAO2iaAAAAAMAOmiYAAAAAsIOmCQAAAADsoGkCAAAAADtomgAAAADA\nDpomAAAAALDjT3R3hCmgHaaOAAAAAElFTkSuQmCC\n",
    409       "text/plain": [
    410        "<matplotlib.figure.Figure at 0x7f874c3a1d50>"
    411       ]
    412      },
    413      "metadata": {},
    414      "output_type": "display_data"
    415     }
    416    ],
    417    "source": [
    418     "plt.plot((P/P.sum()).cumsum(), '-o')\n",
    419     "plt.title('Cumulative Sum of the Proportion of Total Variance')\n",
    420     "plt.xlabel('index')\n",
    421     "plt.ylabel('Proportion');"
    422    ]
    423   },
    424   {
    425    "cell_type": "markdown",
    426    "metadata": {},
    427    "source": [
    428     "Recall the number of principal components is denoted as $k$. Let $k$ be $10, 20, 30, 60$ as examples and take a look at the corresponding approximated images."
    429    ]
    430   },
    431   {
    432    "cell_type": "code",
    433    "execution_count": 18,
    434    "metadata": {
    435     "collapsed": true
    436    },
    437    "outputs": [],
    438    "source": [
    439     "X_tilde_10 = L[:,0:10-1].dot(V[0:10-1,:])\n",
    440     "X_tilde_20 = L[:,0:20-1].dot(V[0:20-1,:])\n",
    441     "X_tilde_30 = L[:,0:30-1].dot(V[0:30-1,:])\n",
    442     "X_tilde_60 = L[:,0:60-1].dot(V[0:60-1,:])"
    443    ]
    444   },
    445   {
    446    "cell_type": "code",
    447    "execution_count": 19,
    448    "metadata": {
    449     "collapsed": false,
    450     "scrolled": false
    451    },
    452    "outputs": [
    453     {
    454      "data": {
    455       "image/png": "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\n6eCnzZ4YDJOoAh5//HGceeaZRd0boVAI5557Lh5//HEAQCqVwk9/+lMAIwObTjzxRESjUQAj3XUD\nAwPI5XJYv3699SUOhUI455xznOD6rVu3YuPGjTj77LMxODiIL33pS7jlllvwmc98Bl/4wheQTqfH\n9Sz79u1zuo2eeuopvP76646xikQijmfkwgsvxA9/+EPnPqtXr8b3v/99xGIxHHfccVi/fr2TN8PD\nw+NKi42enh4cc8wxCIfDePHFF7Fp0yYMDg4CGBmJLVPRbNiwwTGsS5Yswd69e/H73/8eAPDGG2/g\n05/+tPX6p59+Oh544AGcfPLJzrkPPvigtbtN50cltLe3Y+bMmbjppptw4403IpPJFO0fT5dboVAo\n6v4DgJUrV+LBBx8EALzyyit49tlnceGFF1acXkKONGizabMrYTJttsRX33XXXY4QFmizxw/FcBXw\nwx/+0FpgL7zwQvzgBz8AAMyYMQMbN27EJZdcgm9961u49dZbnePOOussfOQjH8H555+PpqYmp4vL\nHNF766234je/+Q1WrlyJ66+/Hl/84hfR0dGBb3zjG1i+fDkWLFiAxYsX4+yzz8Y///M/e6bZbbTw\n3/3d3+HOO+/EZZddht/+9re47rrr8I1vfAPPPfccLrroItx111348pe/jIsuughvectb8Pa3vx2r\nVq3Chg0bnBbsLbfcgm9961u49NJL8cILL7h2AY4nfddccw0eeughvPWtb8V3v/td3HzzzXj00Uex\nbt06fPrTn8aTTz6JVatW4Te/+Q1OOukkACNxV1//+tdx22234a1vfSuuv/56Jz7O5IwzzsDvf/97\nLF26FMBIN9zzzz+PM888c8yxOj/Gw2WXXYb58+fj7rvvHtf5APDwww9j5cqVuPvuu/G73/0Oq1at\nwk033QQA+PjHP46enh6sWLECn/jEJ/ClL30JLS0t474XIUcKtNm02eNhMmz26tWrsWPHDlx22WXO\nQLvPfOYzAGizJ0KgYLqDSNXxzDPP4HOf+xzWrVs3Zt/NN9+MOXPm4MMf/vAhSNmRzRVXXIFrr70W\ny5cvP9RJIYQcRtBmHxpos8l4mXTP8B133IGrrroKV199Nf7whz9M9uUJmTK+8pWv4POf/zyAkWmR\nXn31VSxcuPAQp4qQqYU2mxyu0GaTyWJSB9A9++yzeP311/Hwww9jy5Yt+MxnPuPEOxFS7VxzzTW4\n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\nRERERORYTIaJiIiIyLGYDBMRERGRYzEZJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJMBERERE5FpNh\nIiIiInIsJsNERERE5FhMhomIiIjIsZgMExEREZFjMRkmIiIiIsdiMkxEREREjsVkmIiIiIgci8kw\nERERETkWk2EiIiIiciwmw0RERETkWEyGiYiIiMixmAwTERERkWMxGSYiIiIix2IyTERERESOxWSY\niIiIiByLyTARERERORaTYSIiIiJyLCbDRERERORYTIaJiIiIyLGYDBMRERGRYzEZJiIiIiLHYjJM\nRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIiInIsJsNERERE5FhMhomIiIjIsZgMExEREZFjMRkm\nIiIiIsdiMkxEREREjsVkmIiIiIgci8kwERERETkWk2EiIiIiciwmw0RERETkWEyGiYiIiMixmAwT\nERERkWMxGSYiIiIix2IyTERERESOxWSYiIiIiByLyTARERERORaTYSIiIiJyLJdhGEaqXnzz5s2p\nemkioqM2fvz4VDfhuGLMJqITnVXcTmkyTERERESUShwmQURERESOxWSYiIiIiByLyTARERERORaT\nYSIiIiJyLCbDRERERORYTIaJiIiIyLE89957772peOGHH34Yv/3tb7F8+XKceeaZKCgoSEUzerWN\nGzdi9uzZePfdd/Hqq6/ik08+wYgRI/CDH/wAr776Kt577z1cdNFF8Hg8qW5qSu3evRtz5syBx+PB\nmDFjUF5ebrmPVq1ahZ/+9KdYvnw5XC4XzjrrrFQ3PSX0/bVo0SL8+te/xurVq7FixQrk5+fj9NNP\n5/6iLhi3Y2PMThzjdvcwbh9jRgps3LjR+N73vmcYhmF8/vnnxtVXX52KZvR6GzZsMBYuXBj12J13\n3mmUlJQYhmEYjz/+uPHSSy+lomm9RnNzszFv3jzjrrvuMl544QXDMKz3UXNzs3HJJZcYjY2NRjgc\nNv7lX/7FqK+vT2XTU8Juf7399ttdnsf9RSrG7fgYsxPDuN09jNvHXkqGSbz//vuYNm0aAGD48OFo\naGhAU1NTKprS6xnaPVE2btyIKVOmAACmTJmC9evXp6JZvYbf78czzzyDgQMHmo9Z7aOtW7dizJgx\nyMrKgt/vx7nnnostW7akqtkpY7W/rHB/kY5xOzGM2fExbncP4/axl5JkuLq6Gvn5+eb3eXl5qK6u\nTkVTer09e/bgpptuwjXXXIP169cjHA7D5/MBAPr164eqqqoUtzC13G430tLSoh4LhUJR+6iyshKB\nQCDqmMvPz3fkvrPaXwDwwgsv4Dvf+Q5uu+021NbWdvmMOnV/0RGM24lhzI6Pcbt7GLePPW+qGwB0\nvZKmTqeddhoWLFiA4uJilJWVYf78+YhEIubPud/is9tH3HdHzJo1C7m5uRg5ciSefvppLF68GOPG\njYt6DvcX6XhMdMWYnRyM2/ExbidXSirDAwcOjKooVFZWYsCAAaloSq9WUFCA4uJiAMDgwYPRv39/\nNDQ0oLW1FQBQUVERt9vEibKysqL2UUFBAQYOHBh1hcx9d8R5552HkSNHAgCmTp2K3bt3o6CggPuL\nojBux8eY3XOM293DuJ1cKUmGL7jgApSUlAAAduzYgYKCAmRmZqaiKb3aX//6VyxZsgQAUFVVhUAg\ngCuvvBKrV68GAJSUlGDSpEmpbGKvNHHiRPP4kn00ZswYbN++HY2NjWhqasKHH36I8ePHp7ilvcPC\nhQtRVlYGANiwYQNGjBjB/UVdMG7Hx5jdc4zb3cO4nVwuI0V19McffxwbN26Ex+PB3XffjTPPPDMV\nzejVmpqacNtttyEYDCISiWDBggUYOXIk7rjjDrS2tqKoqAgPP/ywo5fp2bFjBx555BEcOnQIXq8X\nBQUFePTRR3HnnXd22Udr1qzBM888A7fbjXnz5uGb3/xmqpt/3Fntr3nz5uH3v/89MjIykJWVhYce\negj5+fncX9QF43ZsjNmJYdzuHsbtYy9lyTARERERUarxDnRERERE5FhMhomIiIjIsZgMExEREZFj\nMRkmIiIiIsdiMkxEREREjsVkmIiIiIgci8kwERERETkWk2EiIiIiciwmw0RERETkWEyGiYiIiMix\nmAwTERERkWMxGSYiIiIix2IyTERERESOxWSYiIiIiByLyTARERERORaTYSIiIiJyLCbDRERERORY\nTIaJiIiIyLGYDBMRERGRYzEZJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIiInIs\nJsNERERE5FhMhomIiIjIsZgMExEREZFjMRkmIiIiIsdiMkxEREREjsVkmIiIiIgci8lwLzNnzhxc\nfvnlqW4GAGDbtm347ne/m9Tt7d69u9u/N336dGzatKnL44sXL8Zdd92VjKYdN3/+85/x5JNPAoje\nHytWrMB1110X9/cTfV6iIpEI7rvvPhQXF2PGjBm455570N7eDgAIBoO4+eabcckll+DSSy/FG2+8\nkbTXJTpZMGZ3xZh9RLJjNgC8+eabuOSSS3DxxRdj4cKFaGpqAsCYfTSYDPcin332GXJyclBYWIit\nW7emujkYM2YMnnnmmaRtb/ny5di5c2fStnciuuaaa7Bw4UIAXfeHy+VKaBuJPi8RS5YsQU1NDd54\n4w2sWrUKu3btwiuvvAIA+NWvfoWioiKUlJTgmWeewf3334/KysqkvTbRiY4x++TX22L2gQMHcN99\n9+GZZ57Bm2++icLCQrz99tsAGLOPhjfVDaAjVqxYgeLiYvj9fqxYsQLnnHMOAGDjxo144IEHcMEF\nF2DdunWIRCJ4/PHHMWbMGCxatAg5OTn49NNPUVpairPPPhtPPPEE/H4/pk6dim9961t47bXX8Oyz\nz8IwDPzsZz/DwYMH4fP5cMMNN+Dyyy/Hs88+i40bN+K//uu/AAA33HADLrroIpxxxhn42c9+hjVr\n1mDx4sWorq5GeXk5tm/fjvPPPx8zZ87Eb37zG1RWVuKBBx7A5MmTEQ6Hceedd2Lnzp2IRCK4+OKL\ncccdd2Dp0qVYuXIl1q1bh5qaGlx77bVYvHgxXnvtNbS2tmLatGlYtGgRXC4XduzYgTvuuAORSAST\nJ09OKJCsWLEC69atQ1paGjZv3oyhQ4fipptuwqOPPooDBw7glltuwVVXXQXDMPDzn/8c77//PiKR\nCM4991w8/PDD8Hg8OHjwIBYsWIBgMIgLLrgAFRUVmDFjBi6//HJs3rwZDz/8MBoaGpCfn49f/epX\nGDx4cFQbrrnmGixYsAATJ07E1q1bcfXVV2PNmjUYMmQI3nzzTbz66qsYNWoUysvLcfbZZ0ftj759\n+8IwDNx///3429/+hrS0NDzxxBM444wzbN9zY2Mj5s6di5tvvhnTp0/v0TE3YcIEFBcXAwDS0tIw\nbtw47Nu3DwBQUlKCpUuXAgAKCgowYcIE/N///R/mzJnTo9ciOtkwZjNmH++YvWrVKsyYMcN8L4sW\nLTJ/xpjdc6wM9xIdHR1Yu3YtLrnkEkydOhXvvvsuIpGI+fM9e/bgnHPOwerVq/G9730P99xzj/mz\ntWvXYvHixXj33XcRDAbNyh4AVFRU4I033sCgQYNw11134bzzzsPq1avx+9//Hg8++CAOHTqE73zn\nO6isrMTf//53rF27Fk1NTfi3f/s3ANFXtO+88w4efvhhvPbaa1i9ejXee+89LF++HN///vfx9NNP\nAwBeeuklhEIhrF69GitWrMCKFSuwZcsWzJkzB6NHj8ZPfvITXHvttfjLX/6CkpISLF++HGvXrsX+\n/fvx4osvAgDuvfdefOc738Hq1asxbtw4HDhwIKF9+Pe//x0LFy7EmjVrsGfPHixZsgQvvfQSHnjg\nAfz2t78F0Nm9tGXLFrz++ut4/fXXsWPHDrz++usAgF/84heYNGkS1q5di0mTJmH9+vUAgKamJtx0\n00247bbbsGbNGsyfPx///u//3uX1v/a1r+Gjjz4CAHzwwQcYO3YstmzZYn5//vnnm/tU3x9AZxfc\n7NmzUVJSggkTJuCPf/yj7Xs1DAO33347Lrvssi5B9cCBAyguLsbMmTMxc+ZM8+uHHnqoy3bGjh1r\nBtXKykq89957mDJlCurq6tDQ0IAhQ4aYzx0yZAj27t0b9+9A5ASM2YzZqYjZO3fuhNfrxfXXX28O\nbWtpaWHMPkpMhnuJ9957D6NHj0ZmZibS09MxYcIErFu3zvx5VlYWZsyYAQC45JJLsHPnTrS0tAAA\nLrroIuTk5Jhff/jhh+bvTZkyBUDn2ND169dj7ty5AICioiJ87Wtfwz/+8Q+43W7cf//9eOSRR/DE\nE0/gwQcftGzjuHHjkJeXh9zcXAwYMABf//rXAQAjRowwu2Kuu+46M4j16dMHX/rSl1BWVmZuwzAM\nAMDbb7+Nb33rW8jKyoLb7cbs2bPx5ptvorW1FR9//LFZrZwxYwbS09MT2odnnHEGhgwZAp/Ph9NO\nOw0XXHABXC4XRowYgaqqKgCdY9mWL18Ot9uNtLQ0jB492mzf5s2bMXPmTADAtGnTMHDgQACdQXHQ\noEGYOHEiAGDmzJnYv38/ysvLo15fD6xz5841A+vmzZvN31fJ/gCA4cOH48tf/jIA4Mtf/nKX7au/\n89hjjyE/Px833nhjl5+feuqpeOONN8yTh3z9H//xH7b77tvf/jamT5+Oiy++GBMnTkQ4HIbb7YbH\n4zGf4/f7EQqFbLdB5CSM2YzZqYjZwWAQ69evx2OPPYa//OUvKCsrw1NPPcWYfZQ4TKKXWLFiBd59\n911MmDABhmGgvb0dDQ0NuPjiiwHADJzq1w0NDQCAvn37mj/r27cv6uvro74HgLq6OgBAdnZ21HYC\ngQAA4KyzzkJ2dja8Xi+GDx9u2casrCzza4/Hg8zMTACA2+02J12VlpbikUcewb59++B2u1FeXo5v\nfetbXbYVDAaxZMkSvPLKKzAMAx0dHcjPz0ddXR1cLleXdiZCb5987/F40NHRAQCoqanBAw88gB07\ndsDtdiMQCGD+/PkAgPr6euTm5prbKCgoMNu6f/9+M+gahgG/34+amhoMGjTIfP64cePw6aefoqOj\nA/v370dxcTGeffZZNDc3o7q6Omb3GRD9t1HbrNu+fTs++uijpE7KeOGFF9DU1IRFixbhsccew3e/\n+110dHQgEonA6+0ME+Fw2PybEzkdYzZjdipidp8+fcyLHACYO3cunn76aVx77bVob29nzO4hJsO9\nQENDAzZt2oRNmzaZV3Xt7e2YPHkyamtrARwJjADMwClBU54jP1ODg8jLy4Pb7UYwGESfPn3Mbfbv\n3x9A51W/1+tFa2sr3nnnHUyePLlH7+X+++/H2WefjaeeegoAzKqGbuDAgZg6dSquueaaqMelctLY\n2Ijs7GwYhhH13o/WE088AZ/Ph//93/+F1+vF7bffbv4sOzvbnJULwKxMDBw4EMOHD8eyZctibjst\nLQ1Dhw7FmjVrMHz4cKSlpSE9PR3vvPMOvvKVryTtPRQUFOCpp57C1VdfjalTp+Lss8+O+vmBAwdw\n4403mt2lhmHA5XLhwgsv7FJpeOutt3DWWWehsLAQWVlZuOKKK/Dkk0/itttuQ15eHvbv349hw4YB\nAL744gtMmjQpae+D6ETFmH0EY3Z8yYzZRUVFCAaD5vdutxtutxt9+/ZFfn4+Y3YPcZhEL/Daa6/h\nvPPOi+re8Hg8mDRpEl577TUAQCgUwltvvQUAWL16Nc4++2ykpaUB6Oyua2xsRHt7O9auXWv5IfZ4\nPLjwwgvNwfX79+/H5s2bcf7556O5uRkPPfQQ7rnnHvz0pz/Fz3/+c4TD4R69l0AgYHYb/f3vf8cX\nX3xhBiufz2dWRi666CKsWrXKfJ2XX34Zf/nLX+D3+zFy5EisXbvW3DdtbW09aouVmpoajBgxAl6v\nFzt37sSWLVvQ3NwMoHMmtixFs27dOjOwnnPOOaiqqsK2bdsAAGVlZfjJT35iuf0JEybg2Wefxbnn\nnmv+7nPPPWfZ3abuj+4YOHAgTj31VNx5552444470NraGvXz7nS5vfXWW1i8eDEMw4BhGHj77bcx\ncuRIAEBxcTGee+45AMDnn3+OTZs24aKLLup2e4lONozZjNndkcyYXVxcjDfeeAMVFRVob2/HsmXL\ncMEFF5g/Y8zuGSbDvcCqVassD9iLLroIK1euBACccsop2Lx5My655BL84Q9/wL333ms+b+LEifjh\nD3+IyZMnIzc31+zi0mf03nvvvdiwYQOKi4tx880348EHH0RBQQF+85vfYOrUqTjjjDMwZswYnH/+\n+fjP//zPmG22my38gx/8AI888gguvfRSfPDBB1iwYAF+85vf4MMPP8S0adPw6KOP4he/+AWmTZuG\nb3zjG7jiiiswc+ZMrFu3zryCveeee/CHP/wBM2bMwPbt2227AHvSvuuuuw4vvfQSvvnNb+LFF1/E\nokWLsGzZMpSUlOAnP/kJ1qxZg5kzZ2LDhg0YO3YsgM5xV08++STuv/9+fPOb38TNN99sjo/Tfe1r\nX8O2bdswbtw4AJ3dcFu3bsV5553X5bnq/uiJSy+9FMOHD8cTTzzRo98HgDvvvBPhcNhcZzgQCODH\nP/4xAODWW29FTU0Npk+fjltvvRUPPfQQ8vPze/xaRCcLxmzG7J5IRsw+55xzsGDBAsydOxczZ86M\nGofMmN1zLkMdDU690saNG3HXXXehpKSky88WLVqE0047Dd///vdT0LKT2+zZs3HTTTdh6tSpqW4K\nEZ1AGLNTgzGbeirpleGHH34Yc+bMwdy5c/Hxxx8ne/NEx8wvf/lL3HfffQA6l0Xau3cvRo0aleJW\nER1bjNl0omLMpmRJ6gS6TZs24YsvvsDSpUuxZ88e/PSnPzXHOxH1dtdddx3uuOMOTJ8+HR6PB/fc\nc485O5noZMSYTScyxmxKlqQOk3jyySdRVFSE2bNnA+hc2+9//ud/opZPISKi3oExm4goyZXh6urq\nqCVD8vLyUF1dbRtYN2/enMyXJyI6rsaPH5/qJhwVxmwichqruH1MV5Pg3DwiohMHYzYROVFSK8MD\nBw5EdXW1+X1lZSUGDBgQ9/fmzJmTzGac1JYuXcr91Q3cX93D/ZW4k2FsbU9j9qxZs45ls04qK1eu\n5P7qBu6v7uH+6h5Z+lCX1MrwBRdcYC4ls2PHDhQUFPBWgEREvRRjNhFRkivD48aNw6hRozBnzhx4\nPB7cfffdydw8ERElEWM2EVGSk2EA+NGPfpTsTRIR0THCmE1ETsfbMRMRERGRYzEZJiIiIiLHYjJM\nRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIiInIsJsNERERE5FhMhomIiIjIsZgMExEREZFjMRkm\nIiIiIsdiMkxEREREjsVkmIiIiIgci8kwERERETkWk2EiIiIiciwmw0RERETkWEyGiYiIiMixmAwT\nERERkWMxGSYiIiIix2IyTERERESOxWSYiIiIiByLyTARERERORaTYSIiIiJyLCbDRERERORYTIaJ\niIiIyLGYDBMRERGRYzEZJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIiInIsJsNE\nRERE5FjeVDegt/F6vRgyZAiysrJS3RRbo0ePTnUTEhYOh7F//360tLSkuilEdJI6/fTTkZubm+pm\n2Bo7dmyqm9AtBw4cQHV1daqbQXTcMBnWuN1u5OXlIT8/P9VNsTVo0KBUNyFhwWAQhw4dYjJMRMeE\ny+VCXl4eCgsLU90UW0VFRaluQrfU1tYyGSZH4TAJIiIiInIsJsNERERE5FhMhomIiIjIsZgMExER\nEZFjMRkmIiIiIsdiMkxEREREjsVkmIiIiIgci8kwERERETkWk2EiIiIiciwmw0RERETkWEyGiYiI\niMixmAwTERERkWMxGSYiIiIix2IyTERERESOxWSYiIiIiByLyTARERERORaTYSIiIiJyLCbDRERE\nRORYTIaJiIiIyLGYDBMRERGRYzEZJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIi\nInIsJsNERERE5FhMhomIiIjIsZgMExEREZFjMRkmIiIiIsdiMkxEREREjsVkmIiIiIgci8kwERER\nETkWk2EiIiIiciwmw0RERETkWN6e/NLGjRtxyy234Etf+hIMw8CZZ56J7373u/jxj38MwzAwYMAA\n/PKXv4TP50t2e4mIqJsYs4mI7PUoGQaACRMm4Ne//rX5/aJFizBv3jxMnz4dTzzxBJYvX445c+Yk\npZFERHR0GLOJiKz1eJiEYRhR32/cuBFTpkwBAEyZMgXr168/upYREVHSMGYTEVnrcWV4z549uOmm\nm1BfX48f/vCHCIfDZhdbv379UFVVlbRGEhHR0WHMJiKy5jL0ckECKioqsGXLFhQXF6OsrAzz589H\nc3MzNmzYAADYv38/7rjjDrz00ksxt7N58+aetZqIqBcYP358qpuQEMZsIqJOVnG7R5XhgoICFBcX\nAwAGDx6M/v37Y/v27WhtbUVaWhoqKiowcODAhLfXm8appaWlYfTo0cjPz091UyzdcMMN+O///u9U\nNyNhwWAQH3/8MZqamlLy+kuXLu1Vx1dvx/2VuKVLl6a6CQlLdsyeNWvWsWpqt7lcLowdOxaFhYWp\nboql733ve/j973+f6mZ0y44dO/DFF1+k5LVXrlzZq46v3o77q3tWrlxp+XiPxgz/9a9/xZIlSwAA\nVVVVCAQCuPLKK7F69WoAQElJCSZNmtTDphIRUTIxZhMR2etRZXjq1Km47bbb8NZbbyESieC+++7D\nyJEjcccdd+CVV15BUVERrrjiimS3lYiIeoAxm4jIXo+S4aysLDz11FNdHpfKAxER9R6M2URE9ngH\nOiIiIiJyLCbDRERERORYTIaJiIiIyLGYDBMRERGRYzEZJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJ\nMBERERE5FpNhIiIiInIsJsNERERE5FhMhomIiIjIsZgMExEREZFjMRkmIiIiIsdiMkxEREREjsVk\nmIiIiIgci8kwERERETkWk2EiIiIiciwmw0RERETkWEyGiYiIiMixmAwTERERkWMxGSYiIiIix2Iy\nTERERESOxWSYiIiIiByLyTARERERORaTYSIiIiJyLCbDRERERORYTIaJiIiIyLGYDBMRERGRYzEZ\nJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIiInIsJsNERERE5FhMhomIiIjIsZgM\nExEREZFjMRkmIiIiIsdiMkxEREREjsVkmIiIiIgcy5vqBvQ2kUgEZWVlqKqqSnVTbO3atSvVTUhY\na2srWltbU90MIjpJGYaBAwcOoLa2NtVNsfXJJ5+kugndUlNTk+omEB1XTIY1HR0dqKysTHUzYtq/\nf3+qm0BE1GtUVVX16gJGaWlpqptARDFwmAQRERERORaTYSIiIiJyLCbDRERERORYTIaJiIiIyLGY\nDBMRERGRYzEZJiIiIiLHYjJMRERERI7FZJiIiIiIHIvJMBERERE5FpNhIiIiInIsJsNERERE5FhM\nhomIiIjIsZgMExEREZFjMRkmIiIiIsdiMkxEREREjsVkmIiIiIgci8kwERERETkWk2EiIiIiciwm\nw0RERETkWEyGiYiIiMixmAwTERERkWMxGSYiIiIix2IyTERERESOxWSYiIiIiByLyTARERERORaT\n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\nTkSuQmCC\n",
    456       "text/plain": [
    457        "<matplotlib.figure.Figure at 0x7f874c239fd0>"
    458       ]
    459      },
    460      "metadata": {},
    461      "output_type": "display_data"
    462     }
    463    ],
    464    "source": [
    465     "fig, ((ax1, ax2), (ax3, ax4)) = plt.subplots(2, 2, figsize=(12, 12))\n",
    466     "ax1.imshow(X_tilde_10, cmap='gray')\n",
    467     "ax1.set(title='Approximated Image with k = 10')\n",
    468     "ax2.imshow(X_tilde_20, cmap='gray')\n",
    469     "ax2.set(title='Approximated Image with k = 20')\n",
    470     "ax3.imshow(X_tilde_30, cmap='gray')\n",
    471     "ax3.set(title='Approximated Image with k = 30')\n",
    472     "ax4.imshow(X_tilde_60, cmap='gray')\n",
    473     "ax4.set(title='Approximated Image with k = 60');"
    474    ]
    475   },
    476   {
    477    "cell_type": "markdown",
    478    "metadata": {},
    479    "source": [
    480     "The number of variables in $X$ is $200$. When reducing the dimension to $k=60$, which uses half of the principal components, the approximated image is close to the original one.\n",
    481     "\n",
    482     "Moving forward, we do not have to do PCA by hand. Luckly, [scikit-learn](http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html) has an implementation that we can use. Next, let us show an example in quantitative finance using sklearn."
    483    ]
    484   },
    485   {
    486    "cell_type": "markdown",
    487    "metadata": {},
    488    "source": [
    489     "## PCA on a Portfolio"
    490    ]
    491   },
    492   {
    493    "cell_type": "markdown",
    494    "metadata": {},
    495    "source": [
    496     "Construct a portfolio with 10 stocks, IBM, MSFT, FB, T, INTC, ABX, NEM, AU, AEM, GFI. 5 of them are technology related and 5 of them are gold mining companies.\n",
    497     "\n",
    498     "In this case, there are 10 variables (companies), and each column is a variable."
    499    ]
    500   },
    501   {
    502    "cell_type": "code",
    503    "execution_count": 20,
    504    "metadata": {
    505     "collapsed": false
    506    },
    507    "outputs": [],
    508    "source": [
    509     "symbol = ['IBM','MSFT', 'FB', 'T', 'INTC', 'ABX','NEM', 'AU', 'AEM', 'GFI']\n",
    510     "\n",
    511     "start = \"2015-09-01\"\n",
    512     "end = \"2016-11-01\"\n",
    513     "\n",
    514     "portfolio_returns = get_pricing(symbol, start_date=start, end_date=end, fields=\"price\").pct_change()[1:]"
    515    ]
    516   },
    517   {
    518    "cell_type": "code",
    519    "execution_count": 21,
    520    "metadata": {
    521     "collapsed": false
    522    },
    523    "outputs": [
    524     {
    525      "name": "stdout",
    526      "output_type": "stream",
    527      "text": [
    528       "The number of timestamps is 295.\n",
    529       "The number of stocks is 10.\n",
    530       "79.48% of the variance is explained by the first 2 PCs\n"
    531      ]
    532     }
    533    ],
    534    "source": [
    535     "from sklearn.decomposition import PCA\n",
    536     "num_pc = 2\n",
    537     "\n",
    538     "X = np.asarray(portfolio_returns)\n",
    539     "[n,m] = X.shape\n",
    540     "print 'The number of timestamps is {}.'.format(n)\n",
    541     "print 'The number of stocks is {}.'.format(m)\n",
    542     "\n",
    543     "pca = PCA(n_components=num_pc) # number of principal components\n",
    544     "pca.fit(X)\n",
    545     "\n",
    546     "percentage =  pca.explained_variance_ratio_\n",
    547     "percentage_cum = np.cumsum(percentage)\n",
    548     "print '{0:.2f}% of the variance is explained by the first 2 PCs'.format(percentage_cum[-1]*100)\n",
    549     "\n",
    550     "pca_components = pca.components_"
    551    ]
    552   },
    553   {
    554    "cell_type": "markdown",
    555    "metadata": {},
    556    "source": [
    557     "Notice that the grand bulk of the variance of the returns of these assets can be explained by the first two principal components.\n",
    558     "\n",
    559     "Now we collect the first two principal components and plot their contributions."
    560    ]
    561   },
    562   {
    563    "cell_type": "code",
    564    "execution_count": 22,
    565    "metadata": {
    566     "collapsed": false
    567    },
    568    "outputs": [
    569     {
    570      "data": {
    571       "image/png": "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\nqlUVHBzs8FlStWpVh/fW1Vi0aJG6dOmiFi1aKCoqSklJSW5/lpQrV06dOnXSmjVrbNO++OILBQcH\nKywsTHv37tXp06dth+RYtWzZ0vaPprxs377dqZf17t1bjz32mG0+fdRx21b00Uvoo/RRLvpQzFiv\nHpOamqrWrVtfcfmsrKw8TyC97rrrHL49KFu2rMqVK2f72fphkPtblLzWcyW5t1+pUiWnk0//jr96\njbkbSsWKFZ2Wc/Uarfsn97qtr/n06dP5qjOv/WD/BrdYLFfcnxaL5S9fwx9//OHwoe0O6zePVtYa\nMjMzdfr0aQ0aNEhVq1bVpEmTFBgYKC8vLw0ZMsTt9Vtfo6u68rOf7V+79W/Ufr15/d3mfn3WD8jM\nzExlZWXJYrE41Wbdtv175K/2e1ZWlv744w9FRUU5zD9//rzDScxX+v3lZfHixVqyZIlWr16thQsX\nys/PTyNGjNDdd9/t8jkoufLbA9xVtmxZhxGdq/lbvZIhQ4bojz/+0OOPP64GDRqofPnytnN53NWt\nWzcNGzZMaWlpqlWrltauXau77rpL0uX36+jRox3+QWut+dixY6pVq5bTOjMyMlS/fn2X26SP0kev\nhD5KHyUwFTPXX3+9AgMD9fXXX9uaRG5fffWVgoODVa9ePfn4+OT5jWBmZmaejaMwnDlzxuHn7Oxs\n25strysGZWdn52v9vr6+tm9x7GVmZjq9yfO7Xut67C9z6uqD6Upy74fTp0/bvskpKNWqVXM40dQd\nueuyvr7KlStr48aNOn78uBYuXOjwzZ6734pJl7+BdHVvmCvt57/zO5Ty3u/Spdfn6+srY4zD36R1\n2xaLRT4+Pm79o8TX11fVqlXTu+++6zQv92FF+eXr66tRo0Zp1KhRSklJ0euvv64nn3xSN954o+1y\n0ig98tsDJOd/SGRnZ+f7ct+55feze9euXdq9e7fmzZtnu8eQdOl9n5/PwZiYGFWpUkVr1qxR06ZN\nlZaWpu7du0u6/FkxZcoURUdHOz3XVc/z8/P7y3+400fpo1dCH6WPckheMXTvvfdq3bp1WrdundO8\n/fv3a9y4cXr//fclXRq2/Pnnnx0aZkZGhvbt26eIiIgiqXfz5s0OP1uHu6XLH5YZGRm2+a4uverq\n24Pw8HDt2bPH4YPk4sWL+uWXX/K8ipS7GjduLIvF4nRzuqSkJPn6+iooKChf68trPwQHB191fXlp\n0qSJ075Yt26dBg0a5DAsbm/Xrl0Oy2/btk0Wi0XBwcG2K2LZH+f7zTff5OuwnEaNGqls2bIO+/HC\nhQu69957tXbt2ivu5xtvvNHtbeVly5YtDn8727ZtU8WKFXXDDTcoPDxcxpg8t12/fn1VqFDBrW00\nbdpUGRkZKleunAICAmwPY8xVXX7WWm96ero+++wz2/TAwEDbsfR79uzJ93pRMuSnB1jPu7APBPZX\nnbpa+fnslpTnZ8nOnTu1a9eufI1alS1bVp07d9Y333yjtWvXqkmTJrbPCOuXhGlpaQ7vQ19fX3l7\ne7s8N6ZJkybasmWLw7QVK1bYzs+hj9JH6aP00SvxSGA6f/68FixYoK5duyoiIkIdOnTQggULdO7c\nOdsyy5YtU2xsrJo2baru3bvrk08+8USpHjFw4EB16dJFo0aN0osvvqg9e/YoOTlZ77//vgYPHqzw\n8HCNGjVK0qXGevLkST3++OPat2+ftm/frtGjR6ty5cq6/fbb3d6m9RuctWvX5vu46S1btuidd95R\nSkqK3nzzTf3vf/9Tr169JF06brZMmTJavHixUlNTtX79eq1cudLh+ZUrV5YxRt9++6127drltP6+\nffvK29tbjzzyiH777Tft2rVL48aNU1ZWlgYNGpSvWu3VqlVLPXr00Pz58/X1118rNTVV77//vt5+\n+23de++9tmOZ3ZWUlGTbD2+99ZY2btzo8Dtw5x8NV1rGui/GjRunAwcOKCkpSbNmzZKfn5/tQyv3\nOq677jpNmDBBu3fvVlJSkl588UU1b95cdevWVZMmTVSmTBktW7ZMBw8e1GeffaZXXnlFLVq00O7d\nu12eE2CvRo0a6tmzp+bPn6//+7//U0pKiqZNm6Zff/1VTZs2LfD9nPv1Xbx4UdOnT9e+ffv0/fff\na/ny5brttttUsWJFNWvWTNHR0XryySf1448/KiUlRa+99pq++uor3X///W5vMzY2VgEBARo9erS2\nbNmiQ4cOacWKFbr99tv10UcfuawtN+vJ2N9//7127NihzMxMPfLII1qwYIEOHDigQ4cO6fXXX9eZ\nM2fUvHnzfOwV5JcxRi+88ILCwsK0YMECh3k5OTmaN2+e2rZtq6ZNm6pPnz4Ol+GVLn0jO2nSJLVu\n3VoREREaNGiQ07kgVys/PcB6rP9LL72k1NRUffbZZ/r666//dg3ufHbbCw4Olq+vr9566y3b8o8/\n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\nIFsvK7548WKVlZXps88+07Rp05SSktIg272Sb+5tKgoKCuwuoUnLy8uTy+Wyuwy/xe8sAADwV7YG\npk6dOqlTp06KiopSRUWF5s+fr2eeeUbGGFVWVnqOKknyfNgMCQm57Hbj4uIarearVUhIiLTlmN1l\nNFm9e/dWz5497S7DL+Xk5PA7ew0iBAMArhU+n5J39OhRZWZmqrq62mu8Z8+eKi8vV3BwsIwxnnOZ\nahQUFCg0NLTWVD0AAAAAaCw+D0wFBQV64YUXtHfvXq/xgwcPKiAgQEOGDFFgYKCys7O9lu/cuVMJ\nCQk+rBQAAABAU+fzKXnx8fGKiYnRK6+8ouTkZIWHh+uLL77Qn//8Z40YMUJt2rTRxIkTtXz5ckVE\nRKhHjx5atWqVSkpKlJiY6OtyAQAAADRhPg9MzZo10+9//3v97ne/08yZM+V2u9W1a1c9/fTTeuKJ\nJyRJU6ZMkTFGc+bM0YkTJxQdHa2VK1fWutQ4AAAAADQmWy760KFDh0teEc/hcCgpKUlJSUk+rAoA\nAAAAvNn+xbUAAAAA4K8ITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAA\nABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAE\nAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABg\ngcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAA\nAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYI\nTAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABgwZbAdPbsWaWlpemBBx5Q3759NXTo\nUK1Zs8az/NSpU3rllVfUr18/xcbGasyYMdq/f78dpQIAAABowmwJTCkpKVq9erWee+45bd68WY89\n9pjmzZun9evXS5JmzJih3bt3KzU1VevXr9fNN9+sJ598Uv/3f/9nR7kAAAAAmiifBya3262//OUv\nSkpK0v3336+wsDCNGzdOTqdTmzdv1uHDh/Xpp59q5syZ6tevnyIiIvTqq6+qRYsWXkehAAAAAKCx\n+TwwBQcHKzs7W4899pjX+PXXX6+ysjLt3r1bzZo1k9Pp9Cxr0aKF7rzzTu3atcvX5QIAAABowmyZ\nkte+fXu1bt3ac7uqqkpffPGF+vTpo8LCQrVv314BAQFe9wkLC1NBQYGvSwUAAADQhPnFVfLmzp0r\nl8ulSZMmqaKiQoGBgbXWCQoKktvttqE6AAAAAE1VC7sLmD17tjIzM7V48WKFhYXZXQ4AAAAAeNgW\nmKqrqzVjxgxt3bpVS5cu1cCBAyV9f45TXUeSXC6XQkJC6rXtnJycBq31WsB0Rnvl5eXJ5XLZXYbf\n4ncWAAD4K9sC09y5c5WVlaX09HTFxcV5xsPDw3Xy5Em53W4FBwd7xgsKCtS9e/d6bfvC7eF7ISEh\n0pZjdpfRZPXu3Vs9e/a0uwy/lJOTw+/sNYgQDAC4VthyDtP777+vDRs26J133qn1Qal///6SpJ07\nd3rGKisrtWfPHiUkJPiyTAAAAABNnM+PMFVWVio1NVUjRoxQeHi4jh8/7rW8S5cuevTRR7Vw4ULd\ncMMNuuGGG/Tmm28qMDBQo0aN8nW5AAAAAJownwemf/zjHyovL9d7772n9957zzNujJHD4VB+fr7m\nzJmjN954Q88++6wqKysVFxenVatWeU3RAwAAAIDG5vPAdOeddyo/P/+S67Rq1UrJyclKTk72UVUA\nAAAAUJtffA8TAAAAAPgjAhMAAAAAWCAwAQAAAIAFAhMAAAAAWCAwAQAAAIAFAhMAAAAAWCAwAQAA\nAIAFAhMAAAAAWCAwAQAAAIAFAhMAAAAAWCAwAQBQh3379mn06NHq06eP7rnnHqWmpsoYI0mqrq5W\namqqBgwYoJiYGA0fPly7d++2uWIAQGMgMAEAcJFDhw4pMTFRCQkJ+uijj/Tyyy9r9erVWr58uSRp\n4cKF+uCDDzR79mxt2rRJd999tyZPnqxDhw7ZXDkAoKG1sLsAAAD8zdtvv617771XTz31lCSpS5cu\natu2rYKDg+V2u5WRkaHnn39egwcPliRNnz5d2dnZSk9P12uvvWZn6QCABsYRJgAALmCM0eeff64H\nH3zQa9zpdCo2Nla5ubk6c+aMnE5nreW7du3yZakAAB8gMAEAcIEjR46osrJSAQEBevbZZ9W/f3/d\nd999+uMf/yhJKiwslCR17drV635hYWEqLS1VVVWVz2sGADQepuQBAHCBsrIyGWP0m9/8Rk8++aR+\n9atfaceOHXr99dd16tQpSZLD4VDr1q297hcUFCRJcrvdCggI8HndAIDGQWACAOACZ8+elSQ98sgj\nGjVqlCQpKipK33zzjVavXq0xY8bYWR4AwMcITAAAXKBNmzaSpF69enmNx8XFKTMzU9L35zlVVlZ6\njipJksvlkiSFhIRcdh85OTkNVS4AoJERmAAAuMDNN9+sZs2a6cSJE17j1dXVkqTIyEgZY1RYWKio\nqCjP8oKCAoWGhtaaqleXuLi4hi0aAHBFruQPV1z0AQCACwQFBen222/X9u3bvcZzcnJ08803y+l0\nKjAwUNnZ2V7Ld+7cqYSEBB9WCgDwBQITAAAXmTp1qj777DP94Q9/UFFRkd5991198sknmjRpklq3\nbq2JEydq+fLl2r59u44cOaL58+erpKREiYmJdpcOAGhgTMkDAOAi/fr10+LFi7VkyRKlpaXpxhtv\n1Jw5czRixAhJ0pQpU2SM0Zw5c3TixAlFR0dr5cqVtS41DgC4+hGYAACow5AhQzRkyJA6lzkcDiUl\nJSkpKcnHVQEAfI0peQAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYI\nTAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAA\nABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABYITAAAAABggcAEAAAAABZsC0zGGC1ZskTR\n0dFKS0vzWlZdXa3U1FQNGDBAMTExGj58uHbv3m1TpQAAAACaKlsCU1lZmSZOnKgPP/xQzZs3r7V8\n4cKF+uCDDzR79mxt2rRJd999tyZPnqxDhw7ZUC0AAACApsqWwLR582a1bNlS69atU7Nm3iW43W5l\nZGRo6tSpGjx4sLp3767p06crIiJC6enpdpQLAAAAoIlqYcdOhwwZovHjx9e5LDc3V2fOnJHT6fQa\ndzqdyszM9EV5AAAAACDJpiNMXbp0sVxWWFgoSeratavXeFhYmEpLS1VVVdWotQEAAABADb+7Sl5F\nRYUcDodat27tNR4UFCTp+yl7AAAAAOALfheYAAAAAMBf2HIO06UEBwfLGKPKykrPUSVJcrlckqSQ\nkJDLbiMnJ6fR6rtaFRQU2F1Ck5aXl+f5GUZt/M4CAAB/5XeBKTw8XNL35zJFRUV5xgsKChQaGlpr\n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\nUGA+/vhj06dPHzNv3jxjjDFHjhwxkZGR5qGHHjLbtm0zx44dM8YYM2bMGPPkk096rTN06FCTkZFh\nCgsLzebNm01kZKRZsWKFMcaY06dPmwceeMBMnDjRHDhwwOzfv9/84he/MCNHjvTaxubNm40xxsyY\nMcPEx8ebSZMmmfz8fJOfn29GjRpl+vfvb6qqqowxxrzwwgtm4MCB5q9//av59ttvzdatW01sbKz5\n85//7Hl8AwcONMnJyZaPf/HixSY+Pt5kZWWZwsJCk5qaam699VaTn59vjDFmwYIFpm/fvubDDz80\nhYWFJisry/Tv398888wzXvu4//77zdKlS01BQYFJTU01kZGRZvz48WbLli2msLDQ/PrXvza33367\nqays9Dx/99xzj5k+fbo5dOiQ2bdvn7n//vvNww8/7NnutGnTzN1332127NhhioqKzKZNm0zfvn3N\n66+/7vX6/exnPzPLli0zBQUFZufOnV6vnzHGjB071iQkJJjPP//c/POf/zQLFiwwvXr1Mvv27av3\n63fw4EETGRlpVq9ebb777jtjjDGjRo0yTzzxhDl48KA5evSoycjIMNHR0SYnJ6c+P3oAUC/0KfoU\nfQp1ITDBZyIjI83jjz/uNTZr1izTr18/Y8y/3qRmzZrltU5djejidR588EEzbdo0Y4wxH330kYmO\njvY0MmOM+fvf/25+/etfm7KysjobUVRUlCksLPSsn5ubayIjI83nn39ujDGmpKTEHD16tFZdTz/9\ntOf2pRrR2bNnzZ133mnefvttr/Hk5GSzbds2c/r0adO3b1/z5ptvei1///33TXR0tCktLfXs48IG\nUlZWZiIjI80rr7ziGcvLyzNRUVGeBjdmzBjTp08fT2MyxpjMzEwTFRVlDh06ZI4dO2aioqLM2rVr\nvfadmppq4uLizLlz54wx379+iYmJXutMmjTJ0+D/+te/msjISLNt2zavdYYPH+5ppvV5/UpLS01k\nZKTZsGGDZ3mfPn1Menq6133++7//25w8edIAQEOhT9Gn6FOoCxd9gE/FxsZ63e7Vq5fWrl3rNU2h\nV69el91OTEyM1+0OHTqovLxckvSPf/xD7dq1U6dOnTzLe/furddff12SVFFRUWt71113ncLCwjy3\nb731VknS0aNHPWPLly/Xrl279N133+n8+fM6c+aM4uLiLlurJBUUFKi8vNxz6L7GvHnzJEkHDx5U\nZWWlbrvtNq/lsbGxqq6u1v79+zVgwABJUmRkpGd5u3btJH0/DeHCx2KMkdvt9ozdcsstCgwMG+xC\nXgAABfRJREFU9Nzu1auXjDEqLi7WuXPnJKnWvmNiYlRRUaHDhw/rlltukfT983ihDh06qKCgQJL0\nt7/9TQ6HQ/Hx8V7r/PSnP1VWVlatbV+8nZrXry4JCQlaunSpSktLlZCQoNtvv73WNgCgIdCn6FM1\n2754O/SppovABJ+6+KTYoKAgSfJ6E2rTps1ltxMQEFBrzBjj2daFb7o/pK5WrVqpefPmcrlckqTE\nxESVl5frpZdeUkREhFq1aqWZM2fWe/vl5eVyOByex3sxt9sth8NR67HX3L6wqdT12C98vDVXaqp5\nPup6fDXbdblcnvnfwcHBda5zYeO++Hm98KpQFRUVMsbonnvu8dr3+fPn1bJlS6/7Xer1q8sbb7yh\n1atXKzMzU6tWrVKbNm00btw4PfPMM5b3AYAfgj5Fn7J6DPSppovABJ+qOXG2Rs2b3HXXXec52fXH\nat++vdcb9w+p6/Tp0zp//rzatm2rr776Sl9//bVSU1P1wAMPeNZxuVy67rrr6rX9Dh061Ppr2oVC\nQkLqXF7TCNu2bXslD6eWix9fzX7atm3r+cudy+XSTTfdVGud+l75KSQkRA6HQ2vXrm3wKzu1atVK\nEyZM0IQJE1RSUqIPPvhAb731ljp16qRRo0Y16L4ANG30KfrUD0GfurZxlTz41Jdfful1Oy8vT6Gh\noQ36xnXrrbeqvLzc6+o6+fn5evzxx1VcXFznfb777jsdPnzYc7vmcqHdunXT2bNnJf1rWoEkHThw\nQF999dUl/9p0oc6dO6tdu3bKzc31Gn/mmWe0Zs0adevWTW3atKm1fN++fWrevHm9pn9cyldffeXV\n5PLy8uRwONStWzf16tVLDoej1r5zc3MVEhKin/zkJ/XaR800lvLycoWFhXn+NW/eXB07drzimi/8\nS+zmzZtVXV0tSbrxxhuVlJSkHj166Ouvv77i7QLApdCn6FP1RZ9qOghM8Kni4mK98847Kigo0Ecf\nfaQtW7Zo2LBhDbqPIUOGKCwsTC+99JK+/vpr5efna968eTpz5oy6dOlS533atm2refPmaf/+/dq/\nf78WLFigzp07Kz4+Xt26dVNISIjWrFmjoqIiZWdn66WXXtLgwYNVVFSkwsLCy9bUsmVLjRkzRn/6\n05+0detWHTlyRGlpacrKylLfvn3VsmVLjRs3Tn/605+0ceNGFRUV6dNPP1VaWpqGDRumDh06/Kjn\npE2bNnr55Zf19ddfKzc3V2+99ZZuv/12de3aVZ06ddLQoUO1dOlSZWVlqaioSGvXrtV7772n8ePH\nq1mz+r1NxMbG6o477lBycrJ2796t4uJibd26VSNHjtTy5cvrXWvNXwD37NmjAwcO6NSpU5o9e7bm\nzp2rQ4cO6dtvv9WmTZt0+PDhWvPQAeDHok/Rpy6HPtX0MCUPPjVy5EgdP35cjz32mM6ePasHH3xQ\n//7v/+5ZbvVN6ReOX26dZs2aKT09XSkpKRo1apQCAgJ01113acaMGV7rXriddu3aafTo0Zo+fbqO\nHj2qiIgILVmyRNL389cXLFig1157TY888ogiIyOVkpKiyspKTZkyRaNHj9auXbsuWZskTZkyRefO\nnVNKSorKy8vVvXt3vfXWW54TbJ999lm1bNlSS5YsUUlJiW644QaNGDHCa/7zxXVb7fPi9Xr27Cmn\n06mnnnpK3333nWJjY/Wb3/zGs3z+/Pn63e9+p9mzZ6usrEydO3fW008/rQkTJlxy3xd7++239cYb\nb+j555/XyZMnddNNN2n8+PGaPHnyJeu9cLx169aaMGGCMjIytH37dm3atEkrVqzQokWLNHr0aJ07\nd05hYWF68cUXdd99912yHgC4UvQp+hR9ChdzmPoeqwV+pKioKE2bNs2r8fiDmTNnKjc3V59++qnd\npTSKsWPHqmXLllqxYoXdpQCAX6NP2YM+BX/HlDwAAAAAsEBggs/U51A5GgfPOwBcHn3KPjzv8GdM\nyQMAAAAACxxhAgAAAAALBCYAAAAAsEBgAgAAAAALBCYAAAAAsEBgAgAAAAAL/w/sbkikHaIV9wAA\nAABJRU5ErkJggg==\n",
    572       "text/plain": [
    573        "<matplotlib.figure.Figure at 0x7f874c22f890>"
    574       ]
    575      },
    576      "metadata": {},
    577      "output_type": "display_data"
    578     }
    579    ],
    580    "source": [
    581     "x = np.arange(1,len(percentage)+1,1)\n",
    582     "\n",
    583     "plt.subplot(1, 2, 1)\n",
    584     "plt.bar(x, percentage*100, align = \"center\")\n",
    585     "plt.title('Contribution of principal components',fontsize = 16)\n",
    586     "plt.xlabel('principal components',fontsize = 16)\n",
    587     "plt.ylabel('percentage',fontsize = 16)\n",
    588     "plt.xticks(x,fontsize = 16) \n",
    589     "plt.yticks(fontsize = 16)\n",
    590     "plt.xlim([0, num_pc+1])\n",
    591     "\n",
    592     "plt.subplot(1, 2, 2)\n",
    593     "plt.plot(x, percentage_cum*100,'ro-')\n",
    594     "plt.xlabel('principal components',fontsize = 16)\n",
    595     "plt.ylabel('percentage',fontsize = 16)\n",
    596     "plt.title('Cumulative contribution of principal components',fontsize = 16)\n",
    597     "plt.xticks(x,fontsize = 16) \n",
    598     "plt.yticks(fontsize = 16)\n",
    599     "plt.xlim([1, num_pc])\n",
    600     "plt.ylim([50,100]);"
    601    ]
    602   },
    603   {
    604    "cell_type": "markdown",
    605    "metadata": {},
    606    "source": [
    607     "From these principal components we can construct \"statistical risk factors\", similar to more conventional common risk factors. These should give us an idea of how much of the portfolio's returns comes from some unobservable statistical feature."
    608    ]
    609   },
    610   {
    611    "cell_type": "code",
    612    "execution_count": 23,
    613    "metadata": {
    614     "collapsed": false
    615    },
    616    "outputs": [
    617     {
    618      "data": {
    619       "text/html": [
    620        "<div>\n",
    621        "<table border=\"1\" class=\"dataframe\">\n",
    622        "  <thead>\n",
    623        "    <tr style=\"text-align: right;\">\n",
    624        "      <th></th>\n",
    625        "      <th>factor 1</th>\n",
    626        "      <th>factor 2</th>\n",
    627        "    </tr>\n",
    628        "  </thead>\n",
    629        "  <tbody>\n",
    630        "    <tr>\n",
    631        "      <th>2015-09-02 00:00:00+00:00</th>\n",
    632        "      <td>0.048380</td>\n",
    633        "      <td>0.039362</td>\n",
    634        "    </tr>\n",
    635        "    <tr>\n",
    636        "      <th>2015-09-03 00:00:00+00:00</th>\n",
    637        "      <td>0.018534</td>\n",
    638        "      <td>-0.025975</td>\n",
    639        "    </tr>\n",
    640        "    <tr>\n",
    641        "      <th>2015-09-04 00:00:00+00:00</th>\n",
    642        "      <td>0.009092</td>\n",
    643        "      <td>-0.040054</td>\n",
    644        "    </tr>\n",
    645        "    <tr>\n",
    646        "      <th>2015-09-08 00:00:00+00:00</th>\n",
    647        "      <td>-0.014046</td>\n",
    648        "      <td>0.044859</td>\n",
    649        "    </tr>\n",
    650        "    <tr>\n",
    651        "      <th>2015-09-09 00:00:00+00:00</th>\n",
    652        "      <td>0.071044</td>\n",
    653        "      <td>-0.029646</td>\n",
    654        "    </tr>\n",
    655        "  </tbody>\n",
    656        "</table>\n",
    657        "</div>"
    658       ],
    659       "text/plain": [
    660        "                           factor 1  factor 2\n",
    661        "2015-09-02 00:00:00+00:00  0.048380  0.039362\n",
    662        "2015-09-03 00:00:00+00:00  0.018534 -0.025975\n",
    663        "2015-09-04 00:00:00+00:00  0.009092 -0.040054\n",
    664        "2015-09-08 00:00:00+00:00 -0.014046  0.044859\n",
    665        "2015-09-09 00:00:00+00:00  0.071044 -0.029646"
    666       ]
    667      },
    668      "execution_count": 23,
    669      "metadata": {},
    670      "output_type": "execute_result"
    671     }
    672    ],
    673    "source": [
    674     "factor_returns = X.dot(pca_components.T)\n",
    675     "factor_returns = pd.DataFrame(columns=[\"factor 1\", \"factor 2\"], \n",
    676     "                              index=portfolio_returns.index,\n",
    677     "                              data=factor_returns)\n",
    678     "factor_returns.head()"
    679    ]
    680   },
    681   {
    682    "cell_type": "markdown",
    683    "metadata": {},
    684    "source": [
    685     "The factor returns here are an analogue to the principal component matrix $\\mathbf{V}$ in the image processing example. "
    686    ]
    687   },
    688   {
    689    "cell_type": "code",
    690    "execution_count": 24,
    691    "metadata": {
    692     "collapsed": true
    693    },
    694    "outputs": [],
    695    "source": [
    696     "factor_exposures = pd.DataFrame(index=[\"factor 1\", \"factor 2\"], \n",
    697     "                                columns=portfolio_returns.columns,\n",
    698     "                                data = pca.components_).T"
    699    ]
    700   },
    701   {
    702    "cell_type": "code",
    703    "execution_count": 25,
    704    "metadata": {
    705     "collapsed": false
    706    },
    707    "outputs": [
    708     {
    709      "data": {
    710       "text/html": [
    711        "<div>\n",
    712        "<table border=\"1\" class=\"dataframe\">\n",
    713        "  <thead>\n",
    714        "    <tr style=\"text-align: right;\">\n",
    715        "      <th></th>\n",
    716        "      <th>factor 1</th>\n",
    717        "      <th>factor 2</th>\n",
    718        "    </tr>\n",
    719        "  </thead>\n",
    720        "  <tbody>\n",
    721        "    <tr>\n",
    722        "      <th>Equity(3766 [IBM])</th>\n",
    723        "      <td>-0.005298</td>\n",
    724        "      <td>0.264700</td>\n",
    725        "    </tr>\n",
    726        "    <tr>\n",
    727        "      <th>Equity(5061 [MSFT])</th>\n",
    728        "      <td>0.014303</td>\n",
    729        "      <td>0.269216</td>\n",
    730        "    </tr>\n",
    731        "    <tr>\n",
    732        "      <th>Equity(42950 [FB])</th>\n",
    733        "      <td>0.014244</td>\n",
    734        "      <td>0.286379</td>\n",
    735        "    </tr>\n",
    736        "    <tr>\n",
    737        "      <th>Equity(6653 [T])</th>\n",
    738        "      <td>-0.026329</td>\n",
    739        "      <td>0.131497</td>\n",
    740        "    </tr>\n",
    741        "    <tr>\n",
    742        "      <th>Equity(3951 [INTC])</th>\n",
    743        "      <td>0.006932</td>\n",
    744        "      <td>0.218811</td>\n",
    745        "    </tr>\n",
    746        "    <tr>\n",
    747        "      <th>Equity(64 [ABX])</th>\n",
    748        "      <td>-0.452318</td>\n",
    749        "      <td>0.300992</td>\n",
    750        "    </tr>\n",
    751        "    <tr>\n",
    752        "      <th>Equity(5261 [NEM])</th>\n",
    753        "      <td>-0.361989</td>\n",
    754        "      <td>0.403250</td>\n",
    755        "    </tr>\n",
    756        "    <tr>\n",
    757        "      <th>Equity(629 [AU])</th>\n",
    758        "      <td>-0.486184</td>\n",
    759        "      <td>-0.141009</td>\n",
    760        "    </tr>\n",
    761        "    <tr>\n",
    762        "      <th>Equity(154 [AEM])</th>\n",
    763        "      <td>-0.359356</td>\n",
    764        "      <td>0.307325</td>\n",
    765        "    </tr>\n",
    766        "    <tr>\n",
    767        "      <th>Equity(9936 [GFI])</th>\n",
    768        "      <td>-0.545605</td>\n",
    769        "      <td>-0.585436</td>\n",
    770        "    </tr>\n",
    771        "  </tbody>\n",
    772        "</table>\n",
    773        "</div>"
    774       ],
    775       "text/plain": [
    776        "                     factor 1  factor 2\n",
    777        "Equity(3766 [IBM])  -0.005298  0.264700\n",
    778        "Equity(5061 [MSFT])  0.014303  0.269216\n",
    779        "Equity(42950 [FB])   0.014244  0.286379\n",
    780        "Equity(6653 [T])    -0.026329  0.131497\n",
    781        "Equity(3951 [INTC])  0.006932  0.218811\n",
    782        "Equity(64 [ABX])    -0.452318  0.300992\n",
    783        "Equity(5261 [NEM])  -0.361989  0.403250\n",
    784        "Equity(629 [AU])    -0.486184 -0.141009\n",
    785        "Equity(154 [AEM])   -0.359356  0.307325\n",
    786        "Equity(9936 [GFI])  -0.545605 -0.585436"
    787       ]
    788      },
    789      "execution_count": 25,
    790      "metadata": {},
    791      "output_type": "execute_result"
    792     }
    793    ],
    794    "source": [
    795     "factor_exposures"
    796    ]
    797   },
    798   {
    799    "cell_type": "markdown",
    800    "metadata": {},
    801    "source": [
    802     "The factor exposures are an analogue to the eigenvector matrix $\\mathbf{L}$ in the image processing example."
    803    ]
    804   },
    805   {
    806    "cell_type": "code",
    807    "execution_count": 26,
    808    "metadata": {
    809     "collapsed": true
    810    },
    811    "outputs": [],
    812    "source": [
    813     "labels = factor_exposures.index\n",
    814     "data = factor_exposures.values"
    815    ]
    816   },
    817   {
    818    "cell_type": "code",
    819    "execution_count": 27,
    820    "metadata": {
    821     "collapsed": false
    822    },
    823    "outputs": [
    824     {
    825      "data": {
    826       "image/png": "iVBORw0KGgoAAAANSUhEUgAAA1wAAAIJCAYAAACx0Tw0AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd8VFXawPHfnZn0PmkkgdCEUKRDUGmBEAgB7LAoSLGs\n767sKrGsoNjoimLBspbVpQiCC0hHAUEEBBIg0rskkEB6rzNz3j/GDAmpIjFEnu9+9gMz99xznnvv\nyMxzT7maUkohhBBCCCGEEOK609V3AEIIIYQQQgjxZyUJlxBCCCGEEELUEUm4hBBCCCGEEKKOSMIl\nhBBCCCGEEHVEEi4hhBBCCCGEqCOScAkhhBBCCCFEHZGESwghrqMjR44wfvx4oqKiGDx4MKNGjSI2\nNvaa60tLS2Pr1q2218uXL//dMc6fP58ePXoQFRXFkCFDiIyM5JVXXqGoqAiAhx56iDVr1lRbR3Fx\nMatWrfrNbb/11lv07duXlStXVthWUlLCvHnzGDJkiC2uefPmUVJS8pvbKZWbm8tdd93F4MGDycrK\nKtf+888/z7Zt26rc9/LlywwfPvya2wZYv349eXl5v6uOUj///DNhYWH87W9/q7DtoYceok+fPkRF\nRREZGcmwYcNYsGBBuTLbt29n1KhRDBkyhIiICJ544gnOnDlj256fn8/TTz9N+/btr0u81ZkwYUKl\nn5/KPpuvvvqq7bMJcObMGSZOnEhERITtv7Gy1zE2NpaRI0cSFRXFfffdR0xMTJ0fjxBCVEsJIYS4\nbnr37q22b99ue/3tt9+qnj17qsLCwmuqb+3ateqFF15QSillMplU9+7df3eM7733nnrxxRdtr0tK\nStTf//539eabbyqllBozZoxavXp1tXUcOHBAjR8//je3PXDgQLV79+5Ktz355JPq8ccfVzk5OUop\npbKystTjjz+unnnmmd/cTql9+/apsLCwWrVfFyIjI9WlS5euS13vv/++eu655yrddvU1S0lJUQMG\nDFA7duxQSin1/fffq169eqkDBw7Yynz11VfqtttuU2lpaUoppYYPH67eeust1b59++sSb3XGjx+v\nVq5cWeH9mj6bly5dUrfffrtatmyZrcyBAwfU7bffrnbu3KmKiopUz5491d69e5VSSm3btk316dOn\njo9GCCGqZ6jvhE8IIf4s0tPTSU1NpVOnTrb3IiIi6NixIw4ODgB8/PHHLFu2DIPBQFhYGM8//zwA\n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\nAx577DE2bNjA6dOn8fLyIjMz01a+9O9fffUV8fHxrFq1CkdHR+bNm0dycnK1bXl7e2MwGFixYoVt\nDk6pixcv1hhrZGRkjXf+vb29ycjIKPdeaQ9D2dXtrubj40NmZiaNGjUCrMdZU+9KaGgos2fPJiUl\nBV9fX9v7OTk5fP755/zzn/+ssl4/Pz9atmzJ119/XaHe0iS2Ol5eXuWOs7CwkKysrHJl/Pz8GDBg\nAKNHj66xvqoYjUZefPFFXnzxRXbu3MnEiRPp27cvTk5OtjKlx1gqIyOj1j06zz77bKWrKjo6OtKh\nQwc2bdrE+PHjy2374osvCA8Pp0mTJrVqY/369Wzbto0vv/wSDw8Pli9fXuOKlmBNsHJycmyvq0uG\nq/ts9uzZk02bNnH33XeXe3/r1q04Ojpyxx13cPz4cSZNmsS8efPo2rVrrY5LCCHqkgwpFEKI6yQp\nKYknnniCo0eP2t77+eefuXTpEh06dGDAgAFs3bqVnJwcTCYTTzzxBDt37iQtLY0WLVrg6OjIxYsX\n+eGHH8jPzwesvS2lQ8IMBgMWi4X8/Hz0ej39+vXjyy+/BKCgoIApU6bY7v5XNmzvt+rYsSNpaWnE\nxcUBsHbtWho1akRQUBAGg4Hc3NxK9+vfvz9fffUVYP1h/d133xEWFlZtWy1atGDIkCFER0fbenQy\nMzOJjo62JT9hYWGV1tupUydSUlL4+eefAetwuueee67Wx9mtWzdSU1M5fPgwYF3A5P333weunMfw\n8HBWr15NYWEhYE2Sa7MsvsFgsF3vhx56yNbT165dO+zt7dHpyn8N9+vXj++++852zF999RX9+/ev\n9bFU5cknn+Sjjz7ixx9/tL335ZdfsmDBgnK9mEqpaj87aWlpBAUF4eHhQUZGBhs2bLB9VqvTuXNn\n2xDM/fv3Ex8ff03HMW7cOA4dOsSnn35qizM2NpaXX37ZduNh8uTJvPzyy5JsCSFuGNLDJYQQ10nn\nzp2ZPn06L7/8Mrm5uVgsFnx8fHj77bcJCAggICCARx55hLvuugt7e3v69evH0KFDadu2Lf/85z8Z\nMmQIrVu3ZvLkyfzjH/9gwYIF9OrVi88//5wRI0awfPlyunbtSv/+/fn3v//NK6+8wtSpU1m+fDma\npnHnnXfi7+/PxYsX0TTtmo+jdF8nJyfefvttXn31VQoLCzEajcybNw+wJilz586lT58+/PDDD+Xa\n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\nAAAmIXABAAAAgEkIXAAAAABgEgIXAAAAAJiEwAUAAAAAJiFwAQAAAIBJCFwAAAAAYBICFwAAAACY\nhMAFAAAAACYhcAEAAACASbzcXcCVstvtmjBhgtLT02W1WhUfH6969eoVOua1115TSkqKnE6nevTo\noYceeshN1QIAAACoyjxuhGvFihUKCgrSggULNHLkSCUkJBTav2vXLm3cuFELFy7UwoULtXTpUh0/\nftxN1QIAAACoyjwucCUnJ6tHjx6SpE6dOmnz5s2F9gcEBCgvL095eXk6d+6crFarfH193VEqAAAA\ngCrO46YUZmZmymazSZIMw5DFYpHdbpeXV8FXuf7669W7d291795dDodDo0ePlr+/vztLBgAAAFBF\nVerAtXjxYiUmJsowDEmS0+lUWlpaoWMcDkehzwcOHNDatWuVlJSkvLw8DRkyRHfccYcrpAEAAABA\nRanUgWvQoEEaNGhQoW0TJ05UZmamwsPDZbfbJck1uiVJW7duVZs2beTt7S1vb2+Fh4dr165dio6O\nLrat1NTU8v8CqBD0nWej/zwb/ee56DvPRv95Lvqu6qnUgasoMTExWr16tWJiYpSUlHRJkGrYsKHm\nzZsnSbpw4YJ+/vln1a9fv9hrRkVFmVYvAAAAgKrL4wJXnz59tH79esXFxcnHx0fTp0+XJM2ePVvR\n0dFq27atOnfurCFDhsgwDN17772qW7eum6sGAAAAUBUZTqfT6e4iAAAAAOBa5HHLwgMAAACApyBw\nAQAAAIBJCFwAAAAAYBKPWzTjatntdk2YMEHp6emyWq2Kj49XvXr1Ch3z008/adKkSTIMQ927d9eo\nUaPcVC3+qDT9FxERoaioKDmdThmGoblz57re5Qb3Kk3/XTRu3Dj5+PgoPj6+gqtEUUrTd7NmzdI3\n33wjSerSpYseffRRd5SKIpSm/1atWqX3339fVqtV0dHReuKJJ9xULX6vNH2Xk5OjcePGyd/fXzNn\nznRTpfij+Ph4bdmyRYZh6K9//atat27t2rdhwwa99tprslqtuu222/hds5Ipru/y8vL03HPPadeu\nXVqyZEmprlflRrhWrFihoKAgLViwQCNHjlRCQsIlxzz33HOaNm2aEhMTtWfPHp0/f94NlaIopem/\nwMBAzZs3T//+9781b948wlYlUpr+k6T169fr4MGDFVwdilNS3x06dEi7d+/WokWLtGDBAn300Uc6\n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\nktq2basNGzZIkux2u1JSUtS2bdti2734nJVUEJKmT5+unJwcZWVladasWVq0aJHS0tIKreJ38fmy\nTZs2KTw8XJLUrl07ff3115Kk7du3KyQkRIGBgUpISFCNGjXUv39/jRkzRj/88INq1KihnJwcnT9/\nXvn5+fruu++KrC0yMlJff/21zpw5I0lasGCBtmzZUuiYVq1aadu2ba5jNmzYoHbt2pXmlhdp6NCh\n+uyzz5SSkuLatmrVKk2aNMl1nwEA7sMIFwCgTC6OysTExOhf//qXhg4dqmbNmmns2LF66623FB0d\nrWnTpmns2LHy8fFRvXr11LVrV+3bt08JCQmaNGmSpk2bpu+//1733XefnE6nbr/9drVv375QePij\noUOHavfu3RoyZIgcDoe6deumwMBA/eUvf9HDDz+skJAQvfDCCxo7dqxrGfQjR47okUceUUZGhqZM\nmSKpYOGPKVOmaNGiRcrPz9eMGTNkGIZCQkI0ZMgQBQYGyjAMTZ48WYGBgRowYIDuueceNWjQQC1b\ntrzkPkgFYSouLk7333+/fH19Vbt27UILfkhSaGioHn/8cT344IPy8fFRaGioa7rl5Ua6ihsBCwkJ\n0fz58/X8889r+vTp8vPzU1hYmObOnatq1arpww8/1PLly7V371798MMP+uSTT/Tss8/qhhtuKK57\nAQDlxHD+fo4EAADXmO7du2vu3LmqX7++u0sBAFRBTCkEAFzTSvN8FAAAZmGECwAAAABMwggXAAAA\nAJiEwAUAAAAAJiFwAQAAAIBJCFwAAAAAYBICFwAAAACYhMAFAAAAACb5/4HD3VBvuTDRAAAAAElF\nTkSuQmCC\n",
    827       "text/plain": [
    828        "<matplotlib.figure.Figure at 0x7f873069dc10>"
    829       ]
    830      },
    831      "metadata": {},
    832      "output_type": "display_data"
    833     }
    834    ],
    835    "source": [
    836     "plt.subplots_adjust(bottom = 0.1)\n",
    837     "plt.scatter(\n",
    838     "    data[:, 0], data[:, 1], marker='o', s=300, c='m',\n",
    839     "    cmap=plt.get_cmap('Spectral'))\n",
    840     "plt.title('Scatter Plot of Coefficients of PC1 and PC2')\n",
    841     "plt.xlabel('factor exposure of PC1')\n",
    842     "plt.ylabel('factor exposure of PC2')\n",
    843     "\n",
    844     "for label, x, y in zip(labels, data[:, 0], data[:, 1]):\n",
    845     "    plt.annotate(\n",
    846     "        label,\n",
    847     "        xy=(x, y), xytext=(-20, 20),\n",
    848     "        textcoords='offset points', ha='right', va='bottom',\n",
    849     "        bbox=dict(boxstyle='round,pad=0.5', fc='yellow', alpha=0.5),\n",
    850     "        arrowprops=dict(arrowstyle = '->', connectionstyle='arc3,rad=0')\n",
    851     "    );"
    852    ]
    853   },
    854   {
    855    "cell_type": "markdown",
    856    "metadata": {},
    857    "source": [
    858     "Creating statistical risk factors allows us to further break down the returns of a portfolio to get a better idea of the risk. This can be used as an additional step after performance attribution with more common risk factors, such as those in the [Quantopian Risk Model](https://www.quantopian.com/risk-model), to try to account for additional unknown risks.\n",
    859     "\n",
    860     "\n",
    861     "## References:\n",
    862     "- Datta, B.N., 2010. *Numerical linear algebra and applications*. Siam.\n",
    863     "- Qian, E.E., Hua, R.H. and Sorensen, E.H., 2007. *Quantitative equity portfolio management: modern techniques and applications*. CRC Press."
    864    ]
    865   },
    866   {
    867    "cell_type": "markdown",
    868    "metadata": {
    869     "collapsed": true
    870    },
    871    "source": [
    872     "*This presentation is for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation for any security; nor does it constitute an offer to provide investment advisory or other services by Quantopian, Inc. (\"Quantopian\"). Nothing contained herein constitutes investment advice or offers any opinion with respect to the suitability of any security, and any views expressed herein should not be taken as advice to buy, sell, or hold any security or as an endorsement of any security or company. In preparing the information contained herein, Quantopian, Inc. has not taken into account the investment needs, objectives, and financial circumstances of any particular investor. Any views expressed and data illustrated herein were prepared based upon information, believed to be reliable, available to Quantopian, Inc. at the time of publication. Quantopian makes no guarantees as to their accuracy or completeness. All information is subject to change and may quickly become unreliable for various reasons, including changes in market conditions or economic circumstances.*"
    873    ]
    874   }
    875  ],
    876  "metadata": {
    877   "kernelspec": {
    878    "display_name": "Python 2",
    879    "language": "python",
    880    "name": "python2"
    881   },
    882   "language_info": {
    883    "codemirror_mode": {
    884     "name": "ipython",
    885     "version": 2
    886    },
    887    "file_extension": ".py",
    888    "mimetype": "text/x-python",
    889    "name": "python",
    890    "nbconvert_exporter": "python",
    891    "pygments_lexer": "ipython2",
    892    "version": "2.7.12"
    893   }
    894  },
    895  "nbformat": 4,
    896  "nbformat_minor": 1
    897 }