{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# アイスクリーム統計学 + Python (第7章〜第9章)\n", "\n", "[アイスクリーム統計学にようこそ!](http://kogolab.chillout.jp/elearn/icecream/index.html)\n", "のページを読み進めながら、以下の課題を Python を使って解いてください。\n", "\n", "* [アイスクリーム統計学・第1章〜第3章(散布図と相関、相関係数、無相関検定)](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%82%A2%E3%82%A4%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%A0%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%91%E7%AB%A0%E3%80%9C%E7%AC%AC%EF%BC%93%E7%AB%A0.ipynb)\n", "* [アイスクリーム統計学・第4章〜第6章(単回帰、偏相関、重回帰)](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%82%A2%E3%82%A4%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%A0%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%94%E7%AB%A0%E3%80%9C%E7%AC%AC%EF%BC%96%E7%AB%A0.ipynb)\n", "* [アイスクリーム統計学・第7章〜第9章(相関行列、因子分析1、因子分析2)](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%82%A2%E3%82%A4%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%A0%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%97%E7%AB%A0%E3%80%9C%E7%AC%AC%EF%BC%99%E7%AB%A0.ipynb)\n", "* [アイスクリーム統計学・第10章(主成分分析とクラスター分析)](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%82%A2%E3%82%A4%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%A0%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%91%EF%BC%90%E7%AB%A0.ipynb)\n", "* [ハンバーガー統計学・第1章〜第2章(平均と分散、信頼区間)](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%83%8F%E3%83%B3%E3%83%8F%E3%82%99%E3%83%BC%E3%82%AB%E3%82%99%E3%83%BC%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%91%E7%AB%A0%E3%80%9C%E7%AC%AC%EF%BC%92%E7%AB%A0.ipynb)\n", "* [ハンバーガー統計学・第3章〜第5章(カイ2乗検定、t検定 (対応なし・対応あり))](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%83%8F%E3%83%B3%E3%83%8F%E3%82%99%E3%83%BC%E3%82%AB%E3%82%99%E3%83%BC%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%93%E7%AB%A0%E3%80%9C%E7%AC%AC%EF%BC%95%E7%AB%A0.ipynb)\n", "* [ハンバーガー統計学・第6章〜第7章(分散分析 (1要因、2要因) )](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%83%8F%E3%83%B3%E3%83%8F%E3%82%99%E3%83%BC%E3%82%AB%E3%82%99%E3%83%BC%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%96%E7%AB%A0%E3%80%9C%E7%AC%AC%EF%BC%97%E7%AB%A0.ipynb)\n", "* [ハンバーガー統計学・第8章 (分布と仮説検定)](http://nbviewer.jupyter.org/github/maskot1977/ipython_notebook/blob/master/%E3%83%8F%E3%83%B3%E3%83%8F%E3%82%99%E3%83%BC%E3%82%AB%E3%82%99%E3%83%BC%E7%B5%B1%E8%A8%88%E5%AD%A6%E3%83%BB%E7%AC%AC%EF%BC%98%E7%AB%A0.ipynb)\n", "\n", "### Jupyter Notebook (IPython Notebook) とは\n", "* Python という名のプログラミング言語が使えるプログラミング環境。計算コードと計算結果を同じ場所に時系列で保存できるので、実験系における実験ノートのように、いつどんな処理を行って何を得たのか記録して再現するのに便利。\n", "* [当学演習室での Jupyter Notebook の起動方法](https://raw.githubusercontent.com/maskot1977/-/master/%E6%BC%94%E7%BF%92%E5%AE%A4.txt)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 7. [相関行列](http://kogolab.chillout.jp/elearn/icecream/chap7/sec0.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.1 [多変量データ](http://kogolab.chillout.jp/elearn/icecream/chap7/sec1.html)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "本文を読んで概念を学んでください。また、 [調査票](https://github.com/maskot1977/ipython_notebook/blob/master/toydata/chosahyo.pdf)を読んで、アンケート内容を把握してください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.2 [変数をまとめる](http://kogolab.chillout.jp/elearn/icecream/chap7/sec2.html)\n", "ここでは、人を「サンプル」と見なし、バニラ、ストロベリーなどの味の好みを「変数」と見なします。(逆に、バニラ、ストロベリーなどのアイスを「サンプル」と見なし、人の好みを「変数」と見なすこともできます。)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__課題7.2__:[アイスクリームアンケート調査結果](https://raw.githubusercontent.com/maskot1977/ipython_notebook/master/toydata/icecream_chosa.txt)をダウンロードして、次のコードを実行してください。" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# URL によるリソースへのアクセスを提供するライブラリをインポートする。\n", "import urllib # Python 2 の場合\n", "# import urllib.request # Python 3 の場合" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# ウェブ上のリソースを指定する\n", "url = 'https://raw.githubusercontent.com/maskot1977/ipython_notebook/master/toydata/icecream_chosa.txt'" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "('icecream_chosa.txt', )" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 指定したURLからリソースをダウンロードし、名前をつける。\n", "urllib.urlretrieve(url, 'icecream_chosa.txt') # Python 2 の場合\n", "# urllib.request.urlretrieve(url, 'icecream_chosa.txt') # Python 3 の場合" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ID gender age birth_order frequency vanilla strawberry milk_tea macadamia_nuts cookie chocolate melon coffee almond rum_raisin mint banana caramel walnut cassis chocolate_chips orange green_tea marron chocolate_mint adzuki-bean \r\n", "1 2 20 2 5 7 7 8 3 9 9 6 8 3 2 1 7 9 3 3 9 7 8 8 1 7 \r\n", "2 2 21 2 1 7 8 9 9 9 9 2 7 7 9 5 4 7 8 9 9 4 7 7 8 9 \r\n", "3 2 21 3 2 7 4 3 3 6 4 7 7 6 3 3 4 6 3 3 6 7 3 7 3 3 \r\n", "4 2 21 4 3 9 6 6 5 8 6 8 9 6 5 4 4 9 5 4 8 9 1 2 1 3 \r\n", "5 2 21 4 2 9 5 7 5 6 8 4 4 4 6 9 6 6 6 5 9 6 6 6 9 1 \r\n", "6 2 21 2 5 5 7 5 5 5 7 5 8 5 8 9 5 9 5 8 8 9 9 5 9 1 \r\n", "7 2 21 2 2 9 7 6 3 7 9 4 6 5 2 2 6 7 5 5 9 9 3 5 2 3 \r\n", "8 2 20 2 4 7 7 6 8 7 6 5 8 7 5 6 5 6 7 9 5 6 8 5 6 8 \r\n", "9 2 21 2 4 7 7 4 8 7 7 4 7 6 3 5 5 7 7 6 8 6 3 3 7 3 \r\n" ] } ], "source": [ "#最初の数レコードだけ確認する\n", "!head icecream_chosa.txt" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# バニラ、ストロベリーなどの変数間の関係を見るための「行列」 matrix に格納する。\n", "# Pythonにおける「長さnのリスト(n個の要素が入ったリスト)」は、数学における「n次元の列ベクトル」と同じ意味。\n", "# Pythonにおける「リストのリスト(長さnのリストがm個入ったもの)」は、数学における「m行n列の行列」と同じ意味。\n", "# 変数の名前は val_names というリストに入れる\n", "matrix = []\n", "val_names = []\n", "for i, line in enumerate(open(\"icecream_chosa.txt\")):\n", " if i == 0:\n", " for j, val in enumerate(line.split()):\n", " val_names.append(val)\n", " matrix.append([])\n", " else:\n", " for j, val in enumerate(line.split()):\n", " matrix[j].append(float(val))" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import pandas as pd # データフレームワーク処理のライブラリをインポート" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...70717273747576777879
ID1.02.03.04.05.06.07.08.09.010.0...71.072.073.074.075.076.077.078.079.080.0
gender2.02.02.02.02.02.02.02.02.02.0...1.01.01.01.01.01.01.01.01.01.0
age20.021.021.021.021.021.021.020.021.022.0...22.024.020.020.021.020.020.023.023.022.0
birth_order2.02.03.04.04.02.02.02.02.04.0...4.01.02.02.02.02.03.01.04.02.0
frequency5.01.02.03.02.05.02.04.04.04.0...4.02.02.05.06.04.06.05.07.02.0
vanilla7.07.07.09.09.05.09.07.07.05.0...7.06.06.08.04.05.07.04.09.08.0
strawberry7.08.04.06.05.07.07.07.07.05.0...7.07.06.08.06.06.05.08.07.05.0
milk_tea8.09.03.06.07.05.06.06.04.09.0...6.05.05.04.02.04.06.08.07.05.0
macadamia_nuts3.09.03.05.05.05.03.08.08.05.0...6.06.08.08.03.09.06.09.05.02.0
cookie9.09.06.08.06.05.07.07.07.08.0...8.04.08.09.06.06.08.09.04.05.0
chocolate9.09.04.06.08.07.09.06.07.08.0...9.08.07.07.06.07.09.09.06.04.0
melon6.02.07.08.04.05.04.05.04.05.0...6.08.03.03.08.04.04.04.07.07.0
coffee8.07.07.09.04.08.06.08.07.06.0...5.07.06.06.05.03.04.08.07.01.0
almond3.07.06.06.04.05.05.07.06.03.0...5.06.07.06.04.06.04.09.04.05.0
rum_raisin2.09.03.05.06.08.02.05.03.03.0...5.08.07.03.02.05.05.01.05.05.0
mint1.05.03.04.09.09.02.06.05.03.0...4.04.08.08.02.04.04.09.08.03.0
banana7.04.04.04.06.05.06.05.05.08.0...5.04.06.05.03.05.03.06.09.04.0
caramel9.07.06.09.06.09.07.06.07.07.0...7.02.07.04.02.05.09.08.07.05.0
walnut3.08.03.05.06.05.05.07.07.02.0...5.06.08.08.03.05.05.09.04.05.0
cassis3.09.03.04.05.08.05.09.06.08.0...5.08.07.08.02.05.05.05.05.05.0
chocolate_chips9.09.06.08.09.08.09.05.08.08.0...9.04.08.09.06.07.09.09.08.05.0
orange7.04.07.09.06.09.09.06.06.06.0...7.07.05.08.08.07.07.09.08.07.0
green_tea8.07.03.01.06.09.03.08.03.06.0...3.08.08.09.01.04.06.09.05.01.0
marron8.07.07.02.06.05.05.05.03.02.0...7.03.08.06.01.04.05.04.05.01.0
chocolate_mint1.08.03.01.09.09.02.06.07.01.0...6.02.08.09.02.04.06.09.08.05.0
adzuki-bean7.09.03.03.01.01.03.08.03.01.0...8.06.07.04.02.04.07.09.04.05.0
\n", "

26 rows × 80 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 6 7 8 9 \\\n", "ID 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 \n", "gender 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 \n", "age 20.0 21.0 21.0 21.0 21.0 21.0 21.0 20.0 21.0 22.0 \n", "birth_order 2.0 2.0 3.0 4.0 4.0 2.0 2.0 2.0 2.0 4.0 \n", "frequency 5.0 1.0 2.0 3.0 2.0 5.0 2.0 4.0 4.0 4.0 \n", "vanilla 7.0 7.0 7.0 9.0 9.0 5.0 9.0 7.0 7.0 5.0 \n", "strawberry 7.0 8.0 4.0 6.0 5.0 7.0 7.0 7.0 7.0 5.0 \n", "milk_tea 8.0 9.0 3.0 6.0 7.0 5.0 6.0 6.0 4.0 9.0 \n", "macadamia_nuts 3.0 9.0 3.0 5.0 5.0 5.0 3.0 8.0 8.0 5.0 \n", "cookie 9.0 9.0 6.0 8.0 6.0 5.0 7.0 7.0 7.0 8.0 \n", "chocolate 9.0 9.0 4.0 6.0 8.0 7.0 9.0 6.0 7.0 8.0 \n", "melon 6.0 2.0 7.0 8.0 4.0 5.0 4.0 5.0 4.0 5.0 \n", "coffee 8.0 7.0 7.0 9.0 4.0 8.0 6.0 8.0 7.0 6.0 \n", "almond 3.0 7.0 6.0 6.0 4.0 5.0 5.0 7.0 6.0 3.0 \n", "rum_raisin 2.0 9.0 3.0 5.0 6.0 8.0 2.0 5.0 3.0 3.0 \n", "mint 1.0 5.0 3.0 4.0 9.0 9.0 2.0 6.0 5.0 3.0 \n", "banana 7.0 4.0 4.0 4.0 6.0 5.0 6.0 5.0 5.0 8.0 \n", "caramel 9.0 7.0 6.0 9.0 6.0 9.0 7.0 6.0 7.0 7.0 \n", "walnut 3.0 8.0 3.0 5.0 6.0 5.0 5.0 7.0 7.0 2.0 \n", "cassis 3.0 9.0 3.0 4.0 5.0 8.0 5.0 9.0 6.0 8.0 \n", "chocolate_chips 9.0 9.0 6.0 8.0 9.0 8.0 9.0 5.0 8.0 8.0 \n", "orange 7.0 4.0 7.0 9.0 6.0 9.0 9.0 6.0 6.0 6.0 \n", "green_tea 8.0 7.0 3.0 1.0 6.0 9.0 3.0 8.0 3.0 6.0 \n", "marron 8.0 7.0 7.0 2.0 6.0 5.0 5.0 5.0 3.0 2.0 \n", "chocolate_mint 1.0 8.0 3.0 1.0 9.0 9.0 2.0 6.0 7.0 1.0 \n", "adzuki-bean 7.0 9.0 3.0 3.0 1.0 1.0 3.0 8.0 3.0 1.0 \n", "\n", " ... 70 71 72 73 74 75 76 77 78 \\\n", "ID ... 71.0 72.0 73.0 74.0 75.0 76.0 77.0 78.0 79.0 \n", "gender ... 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 \n", "age ... 22.0 24.0 20.0 20.0 21.0 20.0 20.0 23.0 23.0 \n", "birth_order ... 4.0 1.0 2.0 2.0 2.0 2.0 3.0 1.0 4.0 \n", "frequency ... 4.0 2.0 2.0 5.0 6.0 4.0 6.0 5.0 7.0 \n", "vanilla ... 7.0 6.0 6.0 8.0 4.0 5.0 7.0 4.0 9.0 \n", "strawberry ... 7.0 7.0 6.0 8.0 6.0 6.0 5.0 8.0 7.0 \n", "milk_tea ... 6.0 5.0 5.0 4.0 2.0 4.0 6.0 8.0 7.0 \n", "macadamia_nuts ... 6.0 6.0 8.0 8.0 3.0 9.0 6.0 9.0 5.0 \n", "cookie ... 8.0 4.0 8.0 9.0 6.0 6.0 8.0 9.0 4.0 \n", "chocolate ... 9.0 8.0 7.0 7.0 6.0 7.0 9.0 9.0 6.0 \n", "melon ... 6.0 8.0 3.0 3.0 8.0 4.0 4.0 4.0 7.0 \n", "coffee ... 5.0 7.0 6.0 6.0 5.0 3.0 4.0 8.0 7.0 \n", "almond ... 5.0 6.0 7.0 6.0 4.0 6.0 4.0 9.0 4.0 \n", "rum_raisin ... 5.0 8.0 7.0 3.0 2.0 5.0 5.0 1.0 5.0 \n", "mint ... 4.0 4.0 8.0 8.0 2.0 4.0 4.0 9.0 8.0 \n", "banana ... 5.0 4.0 6.0 5.0 3.0 5.0 3.0 6.0 9.0 \n", "caramel ... 7.0 2.0 7.0 4.0 2.0 5.0 9.0 8.0 7.0 \n", "walnut ... 5.0 6.0 8.0 8.0 3.0 5.0 5.0 9.0 4.0 \n", "cassis ... 5.0 8.0 7.0 8.0 2.0 5.0 5.0 5.0 5.0 \n", "chocolate_chips ... 9.0 4.0 8.0 9.0 6.0 7.0 9.0 9.0 8.0 \n", "orange ... 7.0 7.0 5.0 8.0 8.0 7.0 7.0 9.0 8.0 \n", "green_tea ... 3.0 8.0 8.0 9.0 1.0 4.0 6.0 9.0 5.0 \n", "marron ... 7.0 3.0 8.0 6.0 1.0 4.0 5.0 4.0 5.0 \n", "chocolate_mint ... 6.0 2.0 8.0 9.0 2.0 4.0 6.0 9.0 8.0 \n", "adzuki-bean ... 8.0 6.0 7.0 4.0 2.0 4.0 7.0 9.0 4.0 \n", "\n", " 79 \n", "ID 80.0 \n", "gender 1.0 \n", "age 22.0 \n", "birth_order 2.0 \n", "frequency 2.0 \n", "vanilla 8.0 \n", "strawberry 5.0 \n", "milk_tea 5.0 \n", "macadamia_nuts 2.0 \n", "cookie 5.0 \n", "chocolate 4.0 \n", "melon 7.0 \n", "coffee 1.0 \n", "almond 5.0 \n", "rum_raisin 5.0 \n", "mint 3.0 \n", "banana 4.0 \n", "caramel 5.0 \n", "walnut 5.0 \n", "cassis 5.0 \n", "chocolate_chips 5.0 \n", "orange 7.0 \n", "green_tea 1.0 \n", "marron 1.0 \n", "chocolate_mint 5.0 \n", "adzuki-bean 5.0 \n", "\n", "[26 rows x 80 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# # できあがったMatrixの中身を確認してください。\n", "pd.DataFrame(matrix, index=val_names)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# バニラ、ストロベリーなどアイスクリームの種類に関するデータは5行目以降なので、Matrixを作り直してください。\n", "matrix = []\n", "val_names = []\n", "sta = 5\n", "for i, line in enumerate(open(\"icecream_chosa.txt\")):\n", " if i == 0:\n", " for j, val in enumerate(line.split()):\n", " if j < sta:\n", " continue\n", " val_names.append(val)\n", " matrix.append([])\n", " else:\n", " for j, val in enumerate(line.split()):\n", " if j < sta:\n", " continue\n", " matrix[j - sta].append(float(val))" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...70717273747576777879
vanilla7.07.07.09.09.05.09.07.07.05.0...7.06.06.08.04.05.07.04.09.08.0
strawberry7.08.04.06.05.07.07.07.07.05.0...7.07.06.08.06.06.05.08.07.05.0
milk_tea8.09.03.06.07.05.06.06.04.09.0...6.05.05.04.02.04.06.08.07.05.0
macadamia_nuts3.09.03.05.05.05.03.08.08.05.0...6.06.08.08.03.09.06.09.05.02.0
cookie9.09.06.08.06.05.07.07.07.08.0...8.04.08.09.06.06.08.09.04.05.0
chocolate9.09.04.06.08.07.09.06.07.08.0...9.08.07.07.06.07.09.09.06.04.0
melon6.02.07.08.04.05.04.05.04.05.0...6.08.03.03.08.04.04.04.07.07.0
coffee8.07.07.09.04.08.06.08.07.06.0...5.07.06.06.05.03.04.08.07.01.0
almond3.07.06.06.04.05.05.07.06.03.0...5.06.07.06.04.06.04.09.04.05.0
rum_raisin2.09.03.05.06.08.02.05.03.03.0...5.08.07.03.02.05.05.01.05.05.0
mint1.05.03.04.09.09.02.06.05.03.0...4.04.08.08.02.04.04.09.08.03.0
banana7.04.04.04.06.05.06.05.05.08.0...5.04.06.05.03.05.03.06.09.04.0
caramel9.07.06.09.06.09.07.06.07.07.0...7.02.07.04.02.05.09.08.07.05.0
walnut3.08.03.05.06.05.05.07.07.02.0...5.06.08.08.03.05.05.09.04.05.0
cassis3.09.03.04.05.08.05.09.06.08.0...5.08.07.08.02.05.05.05.05.05.0
chocolate_chips9.09.06.08.09.08.09.05.08.08.0...9.04.08.09.06.07.09.09.08.05.0
orange7.04.07.09.06.09.09.06.06.06.0...7.07.05.08.08.07.07.09.08.07.0
green_tea8.07.03.01.06.09.03.08.03.06.0...3.08.08.09.01.04.06.09.05.01.0
marron8.07.07.02.06.05.05.05.03.02.0...7.03.08.06.01.04.05.04.05.01.0
chocolate_mint1.08.03.01.09.09.02.06.07.01.0...6.02.08.09.02.04.06.09.08.05.0
adzuki-bean7.09.03.03.01.01.03.08.03.01.0...8.06.07.04.02.04.07.09.04.05.0
\n", "

21 rows × 80 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 6 7 8 9 ... 70 \\\n", "vanilla 7.0 7.0 7.0 9.0 9.0 5.0 9.0 7.0 7.0 5.0 ... 7.0 \n", "strawberry 7.0 8.0 4.0 6.0 5.0 7.0 7.0 7.0 7.0 5.0 ... 7.0 \n", "milk_tea 8.0 9.0 3.0 6.0 7.0 5.0 6.0 6.0 4.0 9.0 ... 6.0 \n", "macadamia_nuts 3.0 9.0 3.0 5.0 5.0 5.0 3.0 8.0 8.0 5.0 ... 6.0 \n", "cookie 9.0 9.0 6.0 8.0 6.0 5.0 7.0 7.0 7.0 8.0 ... 8.0 \n", "chocolate 9.0 9.0 4.0 6.0 8.0 7.0 9.0 6.0 7.0 8.0 ... 9.0 \n", "melon 6.0 2.0 7.0 8.0 4.0 5.0 4.0 5.0 4.0 5.0 ... 6.0 \n", "coffee 8.0 7.0 7.0 9.0 4.0 8.0 6.0 8.0 7.0 6.0 ... 5.0 \n", "almond 3.0 7.0 6.0 6.0 4.0 5.0 5.0 7.0 6.0 3.0 ... 5.0 \n", "rum_raisin 2.0 9.0 3.0 5.0 6.0 8.0 2.0 5.0 3.0 3.0 ... 5.0 \n", "mint 1.0 5.0 3.0 4.0 9.0 9.0 2.0 6.0 5.0 3.0 ... 4.0 \n", "banana 7.0 4.0 4.0 4.0 6.0 5.0 6.0 5.0 5.0 8.0 ... 5.0 \n", "caramel 9.0 7.0 6.0 9.0 6.0 9.0 7.0 6.0 7.0 7.0 ... 7.0 \n", "walnut 3.0 8.0 3.0 5.0 6.0 5.0 5.0 7.0 7.0 2.0 ... 5.0 \n", "cassis 3.0 9.0 3.0 4.0 5.0 8.0 5.0 9.0 6.0 8.0 ... 5.0 \n", "chocolate_chips 9.0 9.0 6.0 8.0 9.0 8.0 9.0 5.0 8.0 8.0 ... 9.0 \n", "orange 7.0 4.0 7.0 9.0 6.0 9.0 9.0 6.0 6.0 6.0 ... 7.0 \n", "green_tea 8.0 7.0 3.0 1.0 6.0 9.0 3.0 8.0 3.0 6.0 ... 3.0 \n", "marron 8.0 7.0 7.0 2.0 6.0 5.0 5.0 5.0 3.0 2.0 ... 7.0 \n", "chocolate_mint 1.0 8.0 3.0 1.0 9.0 9.0 2.0 6.0 7.0 1.0 ... 6.0 \n", "adzuki-bean 7.0 9.0 3.0 3.0 1.0 1.0 3.0 8.0 3.0 1.0 ... 8.0 \n", "\n", " 71 72 73 74 75 76 77 78 79 \n", "vanilla 6.0 6.0 8.0 4.0 5.0 7.0 4.0 9.0 8.0 \n", "strawberry 7.0 6.0 8.0 6.0 6.0 5.0 8.0 7.0 5.0 \n", "milk_tea 5.0 5.0 4.0 2.0 4.0 6.0 8.0 7.0 5.0 \n", "macadamia_nuts 6.0 8.0 8.0 3.0 9.0 6.0 9.0 5.0 2.0 \n", "cookie 4.0 8.0 9.0 6.0 6.0 8.0 9.0 4.0 5.0 \n", "chocolate 8.0 7.0 7.0 6.0 7.0 9.0 9.0 6.0 4.0 \n", "melon 8.0 3.0 3.0 8.0 4.0 4.0 4.0 7.0 7.0 \n", "coffee 7.0 6.0 6.0 5.0 3.0 4.0 8.0 7.0 1.0 \n", "almond 6.0 7.0 6.0 4.0 6.0 4.0 9.0 4.0 5.0 \n", "rum_raisin 8.0 7.0 3.0 2.0 5.0 5.0 1.0 5.0 5.0 \n", "mint 4.0 8.0 8.0 2.0 4.0 4.0 9.0 8.0 3.0 \n", "banana 4.0 6.0 5.0 3.0 5.0 3.0 6.0 9.0 4.0 \n", "caramel 2.0 7.0 4.0 2.0 5.0 9.0 8.0 7.0 5.0 \n", "walnut 6.0 8.0 8.0 3.0 5.0 5.0 9.0 4.0 5.0 \n", "cassis 8.0 7.0 8.0 2.0 5.0 5.0 5.0 5.0 5.0 \n", "chocolate_chips 4.0 8.0 9.0 6.0 7.0 9.0 9.0 8.0 5.0 \n", "orange 7.0 5.0 8.0 8.0 7.0 7.0 9.0 8.0 7.0 \n", "green_tea 8.0 8.0 9.0 1.0 4.0 6.0 9.0 5.0 1.0 \n", "marron 3.0 8.0 6.0 1.0 4.0 5.0 4.0 5.0 1.0 \n", "chocolate_mint 2.0 8.0 9.0 2.0 4.0 6.0 9.0 8.0 5.0 \n", "adzuki-bean 6.0 7.0 4.0 2.0 4.0 7.0 9.0 4.0 5.0 \n", "\n", "[21 rows x 80 columns]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# # できあがったMatrixの中身を確認してください。\n", "pd.DataFrame(matrix, index=val_names)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.3 [相関行列を計算する(1)](http://kogolab.chillout.jp/elearn/icecream/chap7/sec3.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.4 [相関行列を計算する(2)](http://kogolab.chillout.jp/elearn/icecream/chap7/sec4.html)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 平均値を求める関数\n", "def average(list):\n", " sum = 0.0\n", " n = 0.0\n", " for x in list:\n", " sum += x\n", " n += 1.0\n", " return sum / n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# 分散を求める関数\n", "def variance(list):\n", " ave = average(list)\n", " sum = 0.0\n", " n = 0.0\n", " for x in list:\n", " sum += (x - ave) ** 2.0\n", " n += 1.0\n", " return sum / n" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 標準偏差を求める関数\n", "import math\n", "def standard_deviation(list):\n", " return math.sqrt(variance(list))" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 共分散(偏差積の平均)を求める関数\n", "def covariance(list1, list2): \n", " ave1 = average(list1)\n", " ave2 = average(list2)\n", " sum = 0.0\n", " n = 0.0\n", " for d1, d2 in zip(list1, list2):\n", " sum += (d1 - ave1) * (d2 - ave2)\n", " n += 1.0\n", " return sum / n" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 相関係数を求める関数\n", "def correlation(list1, list2):\n", " return covariance(list1, list2) / (standard_deviation(list1) * standard_deviation(list2))" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 相関行列を作る関数\n", "def correlation_matrix(matrix):\n", " result = []\n", " for data1 in matrix:\n", " vector = []\n", " for data2 in matrix:\n", " vector.append(correlation(data1, data2))\n", " result.append(vector)\n", " return result" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...11121314151617181920
01.0000000.0285150.078549-0.1133840.054911-0.110206-0.1128040.058322-0.2616410.103779...0.006796-0.097745-0.173749-0.1573520.021834-0.0106880.0154400.132379-0.2117860.049856
10.0285151.0000000.2072480.1053750.0357430.2089580.295756-0.0172440.1205690.060223...0.2299440.1429290.1559270.1499300.1554220.1709100.1699900.124279-0.0136660.213412
20.0785490.2072481.0000000.3416170.2286460.0559950.0690480.3586470.0761710.128701...0.4011040.4141770.1973850.3347520.1066970.0909380.2853180.285782-0.0191080.218824
3-0.1133840.1053750.3416171.0000000.3437310.197442-0.0930360.2306450.4383630.193574...0.0797800.2015080.6473120.3029490.079059-0.0560180.3106940.2918900.1144040.311802
40.0549110.0357430.2286460.3437311.0000000.259470-0.0163900.2768140.363010-0.028334...0.2345140.2476670.2817140.0946330.442330-0.0749430.0168970.246303-0.1563970.248015
5-0.1102060.2089580.0559950.1974420.2594701.0000000.2109290.2035350.230101-0.148296...0.2425110.2953180.2090690.0996310.6610990.1237570.0479840.1099690.1910600.209861
6-0.1128040.2957560.069048-0.093036-0.0163900.2109291.0000000.193373-0.018380-0.138505...0.2415930.1338730.0321960.0584760.1062300.197470-0.158637-0.079930-0.1097650.030297
70.058322-0.0172440.3586470.2306450.2768140.2035350.1933731.0000000.2595050.009779...0.2886170.2839740.1000080.3128810.2427110.2131610.2374210.1578150.0011010.057754
8-0.2616410.1205690.0761710.4383630.3630100.230101-0.0183800.2595051.0000000.141709...0.0868920.3080050.5463670.1547780.2776360.0368280.0782710.0744510.1550040.217668
90.1037790.0602230.1287010.193574-0.028334-0.148296-0.1385050.0097790.1417091.000000...-0.0591800.0473460.0815680.100993-0.040930-0.1904430.2190830.1226590.1473670.012173
10-0.2362480.0297360.0488610.116515-0.2586320.123174-0.0377180.0811650.1773900.126706...0.1113640.1303380.1452110.1236420.1602710.0204420.2052840.0767430.833957-0.095770
110.0067960.2299440.4011040.0797800.2345140.2425110.2415930.2886170.086892-0.059180...1.0000000.4332790.1284640.2411410.325065-0.0172980.0894880.3839840.0727430.198064
12-0.0977450.1429290.4141770.2015080.2476670.2953180.1338730.2839740.3080050.047346...0.4332791.0000000.2895930.2133860.3427060.1767490.0483730.4581270.1371170.339599
13-0.1737490.1559270.1973850.6473120.2817140.2090690.0321960.1000080.5463670.081568...0.1284640.2895931.0000000.3515030.1287330.0805300.2821900.2693760.2527470.330305
14-0.1573520.1499300.3347520.3029490.0946330.0996310.0584760.3128810.1547780.100993...0.2411410.2133860.3515031.0000000.1232300.1157500.2501570.2043070.1770920.218333
150.0218340.1554220.1066970.0790590.4423300.6610990.1062300.2427110.277636-0.040930...0.3250650.3427060.1287330.1232301.0000000.142654-0.0208190.0978430.2644420.118129
16-0.0106880.1709100.090938-0.056018-0.0749430.1237570.1974700.2131610.036828-0.190443...-0.0172980.1767490.0805300.1157500.1426541.0000000.070940-0.0533420.017846-0.039698
170.0154400.1699900.2853180.3106940.0168970.047984-0.1586370.2374210.0782710.219083...0.0894880.0483730.2821900.250157-0.0208190.0709401.0000000.3854090.2146600.348820
180.1323790.1242790.2857820.2918900.2463030.109969-0.0799300.1578150.0744510.122659...0.3839840.4581270.2693760.2043070.097843-0.0533420.3854091.0000000.1578970.509220
19-0.211786-0.013666-0.0191080.114404-0.1563970.191060-0.1097650.0011010.1550040.147367...0.0727430.1371170.2527470.1770920.2644420.0178460.2146600.1578971.0000000.023781
200.0498560.2134120.2188240.3118020.2480150.2098610.0302970.0577540.2176680.012173...0.1980640.3395990.3303050.2183330.118129-0.0396980.3488200.5092200.0237811.000000
\n", "

21 rows × 21 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 6 \\\n", "0 1.000000 0.028515 0.078549 -0.113384 0.054911 -0.110206 -0.112804 \n", "1 0.028515 1.000000 0.207248 0.105375 0.035743 0.208958 0.295756 \n", "2 0.078549 0.207248 1.000000 0.341617 0.228646 0.055995 0.069048 \n", "3 -0.113384 0.105375 0.341617 1.000000 0.343731 0.197442 -0.093036 \n", "4 0.054911 0.035743 0.228646 0.343731 1.000000 0.259470 -0.016390 \n", "5 -0.110206 0.208958 0.055995 0.197442 0.259470 1.000000 0.210929 \n", "6 -0.112804 0.295756 0.069048 -0.093036 -0.016390 0.210929 1.000000 \n", "7 0.058322 -0.017244 0.358647 0.230645 0.276814 0.203535 0.193373 \n", "8 -0.261641 0.120569 0.076171 0.438363 0.363010 0.230101 -0.018380 \n", "9 0.103779 0.060223 0.128701 0.193574 -0.028334 -0.148296 -0.138505 \n", "10 -0.236248 0.029736 0.048861 0.116515 -0.258632 0.123174 -0.037718 \n", "11 0.006796 0.229944 0.401104 0.079780 0.234514 0.242511 0.241593 \n", "12 -0.097745 0.142929 0.414177 0.201508 0.247667 0.295318 0.133873 \n", "13 -0.173749 0.155927 0.197385 0.647312 0.281714 0.209069 0.032196 \n", "14 -0.157352 0.149930 0.334752 0.302949 0.094633 0.099631 0.058476 \n", "15 0.021834 0.155422 0.106697 0.079059 0.442330 0.661099 0.106230 \n", "16 -0.010688 0.170910 0.090938 -0.056018 -0.074943 0.123757 0.197470 \n", "17 0.015440 0.169990 0.285318 0.310694 0.016897 0.047984 -0.158637 \n", "18 0.132379 0.124279 0.285782 0.291890 0.246303 0.109969 -0.079930 \n", "19 -0.211786 -0.013666 -0.019108 0.114404 -0.156397 0.191060 -0.109765 \n", "20 0.049856 0.213412 0.218824 0.311802 0.248015 0.209861 0.030297 \n", "\n", " 7 8 9 ... 11 12 13 \\\n", "0 0.058322 -0.261641 0.103779 ... 0.006796 -0.097745 -0.173749 \n", "1 -0.017244 0.120569 0.060223 ... 0.229944 0.142929 0.155927 \n", "2 0.358647 0.076171 0.128701 ... 0.401104 0.414177 0.197385 \n", "3 0.230645 0.438363 0.193574 ... 0.079780 0.201508 0.647312 \n", "4 0.276814 0.363010 -0.028334 ... 0.234514 0.247667 0.281714 \n", "5 0.203535 0.230101 -0.148296 ... 0.242511 0.295318 0.209069 \n", "6 0.193373 -0.018380 -0.138505 ... 0.241593 0.133873 0.032196 \n", "7 1.000000 0.259505 0.009779 ... 0.288617 0.283974 0.100008 \n", "8 0.259505 1.000000 0.141709 ... 0.086892 0.308005 0.546367 \n", "9 0.009779 0.141709 1.000000 ... -0.059180 0.047346 0.081568 \n", "10 0.081165 0.177390 0.126706 ... 0.111364 0.130338 0.145211 \n", "11 0.288617 0.086892 -0.059180 ... 1.000000 0.433279 0.128464 \n", "12 0.283974 0.308005 0.047346 ... 0.433279 1.000000 0.289593 \n", "13 0.100008 0.546367 0.081568 ... 0.128464 0.289593 1.000000 \n", "14 0.312881 0.154778 0.100993 ... 0.241141 0.213386 0.351503 \n", "15 0.242711 0.277636 -0.040930 ... 0.325065 0.342706 0.128733 \n", "16 0.213161 0.036828 -0.190443 ... -0.017298 0.176749 0.080530 \n", "17 0.237421 0.078271 0.219083 ... 0.089488 0.048373 0.282190 \n", "18 0.157815 0.074451 0.122659 ... 0.383984 0.458127 0.269376 \n", "19 0.001101 0.155004 0.147367 ... 0.072743 0.137117 0.252747 \n", "20 0.057754 0.217668 0.012173 ... 0.198064 0.339599 0.330305 \n", "\n", " 14 15 16 17 18 19 20 \n", "0 -0.157352 0.021834 -0.010688 0.015440 0.132379 -0.211786 0.049856 \n", "1 0.149930 0.155422 0.170910 0.169990 0.124279 -0.013666 0.213412 \n", "2 0.334752 0.106697 0.090938 0.285318 0.285782 -0.019108 0.218824 \n", "3 0.302949 0.079059 -0.056018 0.310694 0.291890 0.114404 0.311802 \n", "4 0.094633 0.442330 -0.074943 0.016897 0.246303 -0.156397 0.248015 \n", "5 0.099631 0.661099 0.123757 0.047984 0.109969 0.191060 0.209861 \n", "6 0.058476 0.106230 0.197470 -0.158637 -0.079930 -0.109765 0.030297 \n", "7 0.312881 0.242711 0.213161 0.237421 0.157815 0.001101 0.057754 \n", "8 0.154778 0.277636 0.036828 0.078271 0.074451 0.155004 0.217668 \n", "9 0.100993 -0.040930 -0.190443 0.219083 0.122659 0.147367 0.012173 \n", "10 0.123642 0.160271 0.020442 0.205284 0.076743 0.833957 -0.095770 \n", "11 0.241141 0.325065 -0.017298 0.089488 0.383984 0.072743 0.198064 \n", "12 0.213386 0.342706 0.176749 0.048373 0.458127 0.137117 0.339599 \n", "13 0.351503 0.128733 0.080530 0.282190 0.269376 0.252747 0.330305 \n", "14 1.000000 0.123230 0.115750 0.250157 0.204307 0.177092 0.218333 \n", "15 0.123230 1.000000 0.142654 -0.020819 0.097843 0.264442 0.118129 \n", "16 0.115750 0.142654 1.000000 0.070940 -0.053342 0.017846 -0.039698 \n", "17 0.250157 -0.020819 0.070940 1.000000 0.385409 0.214660 0.348820 \n", "18 0.204307 0.097843 -0.053342 0.385409 1.000000 0.157897 0.509220 \n", "19 0.177092 0.264442 0.017846 0.214660 0.157897 1.000000 0.023781 \n", "20 0.218333 0.118129 -0.039698 0.348820 0.509220 0.023781 1.000000 \n", "\n", "[21 rows x 21 columns]" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 相関行列を計算し表示する\n", "cormat = correlation_matrix(matrix)\n", "pd.DataFrame(cormat)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 図やグラフを図示するためのライブラリをインポートする。\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWkAAAEACAYAAABxgIfcAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xu8VNV99/HP93C/g4CgIFhiROONoAIGLxijwTxttTTt\no8kribnVVxISm6aNJqalaU291PoYYy6ixBgbY1oTL2kTxUQTJYqigIiCYFQEBATlIiJwOPyeP2bA\n8XiGs9fMHGbYft++5uXsPeu315o5c36ss/ZeeykiMDOzxtRU7waYmVl5TtJmZg3MSdrMrIE5SZuZ\nNTAnaTOzBuYkbWbWwNpN0pKGS7pP0lOSnpT0peL+D0taKKlF0tiOb6qZ2TuP2rtOWtJQYGhEzJfU\nG3gcOAsIYCdwHfD3ETG3oxtrZvZO07m9AhGxGlhdfL5Z0iJgWET8FkCSOraJZmbvXElj0pIOBsYA\nj3REY8zM7K0yJ+niUMdtwAURsbnjmmRmZru0O9wBIKkzhQR9c0TcmVKBJN8cxMwyi4iqhlDVtW/Q\n/FrW4ssi4uBq6utomZI08EPg6Yj4dpnX9/ihPrx0feYGPb1+U+ayu1Ryj6gfX/PvnPKxL2UuP7h3\n1o/qTX26dkqO+cN/fo+/ueBrSTE7dqZ9AE+/mv4Zv3f//lx39aWc/7fZ29a/V9fkemYtW5scc91V\nlzPxo1/MXL6pgtMo7x7UPTnmvh99h49+4R+SYkb275VU/odzVySVB1i4fAPP/u/1HPJ/Pps55ltn\nHp5cz0lTvp4cs3X+d5Nj3qb5Nbq/N9v3Yeu874ysvsKO1W7mkTQR+CjwpKR5FK7q+DrQHfgOMAj4\nH0nzI+LMjmysmVkmObqeIcvVHX8AynUJ76htc8zMakD5maeX/jd8Tow8eny9m9CmY8efWO8mlHXs\nhMZs20FHjat3E9p01PHvq3cTytrv3Tmff9aUPtTYqN6xSfrgYxo0SU84qd5NKOu4Bm3biAb9B/fo\ncRPr3YSy9jv02Ho3oWO9k4Y7zMz2OR7uMDNrYO5Jm5k1MPekzcwamHvSZmYNzD3pNIcN65O5bI9u\n6ZfOaM8THts0rNcbSeXHDO+fXMdvn12THDO4X7fkmPWbm5PKD+jWJbmOFzdtSY458Su3Jcfcc+lf\nJMcM6JY2s/H5jenvpWeX9O/l4lfSb3EzpFfazMYjhvZIruOEEX2TYyqZPfjgL/4tOeb4UTWYcQi+\nBM/MrKHlqCedn3diZrZLk7I92iBpsqTFkpZIurCN1/tL+oWkJyTNlvSerLEVvZVaHMTMrKGoKduj\ndZjUBFwLfBA4AjhX0mGtin0dmBcRxwCfAK5JiE3mJG1m+SNle7zdOGBpRCyLiGbgVgrLBZZ6D3Af\nQEQ8AxwsaXDG2GRO0maWPxX2pIFhwPKS7RXFfaWeAKYASBoHjACGZ4xN5hOHZpY/Za6Tbnn1j+xc\n/1y1R78M+LakucCTwDygpdqDluMkbWb5U+YSvE6DDqXToEN3b7c8/9vWRVZS6BnvMry4b7eIeA34\n1K5tSc8DzwE924uthIc7zCx/Kh/umAMcImmkpK7AOcBdbzm01E9Sl+LzzwK/L6772m5sJdyTNrP8\nqXBaeES0SJoKzKTQiZ0REYsknV94OaYDhwM3SdoJPAV8ek+x1b6VvZKkZ/1xXeaylcwefGJN5kUn\ndwvS1gVcuiF99tihA3onx+xoSV+w8Y+Jbdu/R/qsxs3NO5Jj7r707OSY/1zwUnLMK69tSyp/wqj0\n2aPbW3Ymxxyzf/rMvp6JM24fWZb+3f/xt76fHHPzjy5Ojrn411Xnp8pVMZklIu4GRrfad13J89mt\nX99TbLXckzaz/PENlszMGliOpoU7SZtZ/jhJm5k1MN8Fz8ysgeVoTLrdvwkkzZC0RtKCkn3HSHpY\n0jxJj0o6rmObaWaWoPLrpBtOllbeSOGuTqWuAKZFxHuBacC/17phZmYVq/wGSw2n3eGOiJglaWSr\n3TuBfsXn/anB1Eczs1rRPpKAs6h0TPrLwD2S/gMQ8L7aNcnMrDpO0vA54IKIuEPSh4EfAqeXK3zL\n994cDTnq+Pdx1PETK6zWzPLk1SWP8+rSuTU/rsqsurIvUkT705CLwx2/jIiji9sbIqJ/yesbI6Jf\nmdh47PmNmRuUOsUZ4LlX0xaVBdjSnDbN96zRQ5LraK5gKvHBg3slx/xiYdpo05GD0qcrVzItvnMF\nvygH9e6ZHJO6SOzvlr2SXEevbuknmSaNHJwcs2FL2qLCZ/zff0yu4+MXfy45ZvzI7ItJ7/LU6vTf\ny6v+/DAioqoMKyl6//WPMpXd/F/nVV1fR8v6zVPxsctKSacASDoNWFLrhpmZVUpSpse+oN3hDkm3\nAJOAgZJepHA1x2eBayR1ArYCf9ORjTQzS7GvJOAsslzd8ZEyL/naaDNrTPnJ0Z5xaGb5847qSZuZ\n7WucpM3MGlhT074x5TuL/LwTM7NdlPHRVqg0WdJiSUskXdjG639fvG/RXElPStohqX/xtRckPbHr\nvka1eCvuSZtZ7lQ63CGpCbgWOA14CZgj6c6IWLyrTERcCVxZLP+nwN9GxIbiyzuBSRGxvormv4V7\n0maWO1VcJz0OWBoRyyKiGbgVOGsPVZ0L/LS0amqcV52kzSx3qkjSw4DlJdsrivvaqqMHMBn4ecnu\nAO6VNEfSZ2vxXvbKcEfnTh17pnXcgemrPx/Yr0dS+U4VTHFesjZ9JeclS9JjundJ+7e2e+f0VSvO\nPuLA5JjnX96SHNO1c3q/YdG67LcdAJgwbEByHVt3tCTH/PHV9Kn0537ikqTyM3/2r8l1DOrTNTlm\ny7b09z/+wIHJMVclR5Sxdy7u+DNgVslQB8DEiFglaTCFZL0oImZVU4nHpM0sd8qNSW9f9RTbVz21\np9CVwIiS7eGUvxXzObx1qIOIWFX8/1pJt1MYPnGSNjMrVe4SvO7DjqL7sKN2b2+Zd1vrInOAQ4o3\nlVtFIRGf27qQpH7AKcBHS/b1BJoiYrOkXsAZwDereiM4SZtZDlV6dUdEtEiaCsykcM5uRkQsknR+\n4eWYXix6NnBPRJTe6m8IcLukoJBbfxIRMyt+E0VO0maWP1WMSUfE3cDoVvuua7V9E3BTq33PA2Mq\nr7ltTtJmljueFm5m1sCcpM3MGpiTtJlZI8tPjnaSNrP8ydNd8PZKkm7e0f5it7t0ruDPlB2RvuDr\n6k1bk8pf98iLyXU8vnB1csy1nzw2OWbpq68nlf/dsnXJdfTunv5VeWFTWrsA5q5Mn3HZvDP79wvg\nlIPT34sq6Jqlzh4E+OlN30gq379nl+Q6XtqYvkDsEy9vSo45bGDv5Jha8XCHmVkDc5I2M2tk+cnR\nTtJmlj/uSZuZNTAnaTOzBpajHN3+Tf8lzZC0RtKCkn3TJK0orvE1V9Lkjm2mmVl2TU3K9NgXZLmY\n8Ebgg23svyoixhYfd9e4XWZmFatiZZaG0+5wR0TMKt5btbV94x2a2TvOPpJ/M6lmWs5USfMl3VC8\nAbaZWUPI03BHpScOvwf8S0SEpEsoLE326XKFp1996e7nx044kWMnnFRhtWaWJwse/QNPznmo5sfN\nU09aEe1PqS0Od/wyIo5Oea34eqzasD1zgx5e9krmsrtjlqctRArQu2vaYqwTD0pf7DZxtjIAvbuk\n/7v56z+uTSo/Zmj6dN0+XdOnH29vSZ+u/8LG9MVre3RN+4Nw4ar0Or4/7drkmNtu/qfkmE6J2WXp\nhvTFbvt2S/+Ode2U/kf3lub0xWs/M34kEVFVipUUR1ycbUGUp751RtX1dbSsPy1RMgYtaWhE7Lox\nxRRgYa0bZmZWqX1lKCOLLJfg3QI8BBwq6UVJnwSukLRA0nwKizF+uYPbaWaWWTVXd0iaLGmxpCWS\nLixTZpKkeZIWSro/JTZVlqs7PtLG7htrUbmZWUeodExaUhNwLXAa8BIwR9KdEbG4pEw/4LvAGRGx\nUtKgrLGVyM9NV83MiqroSY8DlkbEsohoBm4FzmpV5iPAzyNiJUBErEuITeYkbWa5I2V7tGEYsLxk\ne0VxX6lDgf0k3S9pjqSPJcQm8707zCx3yo03v/b8fF57fn61h+8MjAXeD/QCHpb0cLUH3VNlZma5\nUm5Muu+oMfQdNWb39urf/bh1kZXAiJLt4cV9pVYA6yJiK7BV0gPAMRljk3m4w8xyp4oZh3OAQySN\nlNQVOAe4q1WZO4ETJXWS1BMYDyzKGJvMPWkzy51Kb54UES2SpgIzKXRiZ0TEIknnF16O6RGxWNI9\nwAKgBZgeEU8X631bbLXvZa8k6U4JF5ZnmQHZ2pFDeibHXPaLtM+u6wfelVzH0D7ps/SOGJh+G5ST\nRgxIKn/J3c8k1/HNDx2eHPN6847kmJH9eiTHLFiTNuuuktmDn/vm1OSYIP273L1z2q/k69vSZ3Vu\n39GcHNOlU3rSe2lTej21Us208OJdPUe32nddq+0rgSuzxFbLPWkzy5195TakWThJm1nu5ChHO0mb\nWf64J21m1sBylKOdpM0sf5qa8nN1sZO0meWOe9JmZg3MY9JmZg0sRznaSdrM8sc9aTOzBpajHL13\nkvRrW7NPD26q4NO9b+n65JiLpqRNc964LX2K8/KN2Rfg3WVg963JMU+tTZsWfeoR+yfX0b1z+tny\nzs3pP8ufzluVHPOLq25IKv+PV6av9ja0b/oU/9+/sCE55rhhaYsETxo5MLmOKx94LjnmE8el3xZ5\nxcb0918rleSRRuWetJnlTp4WonWSNrPcyVGOdpI2s/zxiUMzswaWoxztJG1m+SPyk6XbPWUvaYak\nNZIWlOy7QtIiSfMl/VxS345tpplZdk3K9tgXZLmu6kbgg632zQSOiIgxwFLga7VumJlZpSRleuwL\n2k3SETELWN9q328iYte6PbMprIprZtYQOjUp06MtkiZLWixpiaQLy9Uh6XhJzZKmlOx7QdITkuZJ\nerQW76UWY9KfAm6twXHMzGqi0k6ypCbgWuA04CVgjqQ7I2JxG+UuA+5pdYidwKSISJ9hV0ZVSVrS\nxUBzRNyyp3LfvuKS3c/HTzyZCRNPrqZaM8uJFxc8wvIna9LhfIsqhjLGAUsjYlnxOLcCZwGLW5X7\nInAbcHzrqsk2jJxZxUla0nnAh4D3t1f2E1O/+pbtDVvKT5d+ecu25LZ0ruAG3yP69Eoqv7h5U3Id\n+/VI/3hf3PRGcszOxEWpTxm5X3Id/Xt2TY7ZuC19tejUKd4AU/7uM0nljx6SNvUaYNnG9J9LlwrO\nTB0+KG21+HWvp/++DOzTLTmmf7f0n/+RQ3q2X+b0U+H0U3dvP/TT7ybX05YqhpuHActLtldQSNwl\nx9aBwNkRcaqkt7wGBHCvpBZgekRcX3FLirJmERUfuxo5GfgH4OSISP+WmJl1oHL37nh50WO8vPix\nag9/NVA6Vl1a2cSIWCVpMIVkvah4Xq9i7SZpSbcAk4CBkl4EpgFfB7oWGwEwOyI+X01DzMxqpVxH\nesjhxzHk8ON2bz995/TWRVYCI0q2hxf3lToOuFWF5DcIOFNSc0TcFRGrACJiraTbKfTCOzZJR8RH\n2th9YzWVmpl1pHJXbmQwBzhE0khgFXAOcG5pgYgYteu5pBuBX0bEXZJ6Ak0RsVlSL+AM4JuVNmQX\nzzg0s9yp9MRhRLRImkphLkgTMCMiFkk6v/BytO56l54RGgLcLiko5NafRMTMihpSwknazHKnmnkq\nEXE3MLrVvuvKlP1UyfPngTGV19w2J2kzy519ZTZhFk7SZpY7+8p9ObJwkjaz3HFP2sysgeUnRe+l\nJH3o0D6Zy7a0JE6fA45OnKUFsCFxNtx5xx+cXMdvF7+cHHPwgLSZkABrN6fNJ1q1JX323JbmluSY\nD3/sX5Jj7vjJtOSY5p072y9UYkfqFE3g4H7tz55rbUjv9Jl923ekvZflm7ck1/HRow9Ijvng125P\njln4g7au3t07qrgEr+G4J21muePhDjOzBpajHO0kbWb5U+7eHfsiJ2kzy50c5WgnaTPLH49Jm5k1\nsJredb/OnKTNLHd8CZ6ZWQPLUY52kjaz/PGYtJlZA3NPOtFDz63LXLZX5/Qmrd9WfmHbclKnhT+7\nenNyHWMP6p8cU8GMZbYlTtneuL1Tch2VTPG+7eZ/So4ZWcG0+D0tbNyWrYlTryF96jnAn+yX/l6G\n9EubSv7E2g3JdWxu3pEcc8u0DyXHbHg9/feyVnLUkXZP2szyJ0+TWfJ0pYqZGVBIbFkebZE0WdJi\nSUskXdjG638u6QlJ8yQ9Kmli1thKuCdtZrlT6SV4kpqAa4HTgJeAOZLujIjFJcV+ExF3FcsfBfwX\ncHjG2GTuSZtZ7kjZHm0YByyNiGUR0QzcCpxVWiAiSu8P2xvYmTW2Ek7SZpY7Tcr2aMMwYHnJ9ori\nvreQdLakRcAvgU+lxKaqarhD0gXAZ4qb10fENdU2yMysWuVOHD7/xCO88MQjVR8/Iu4A7pB0InAJ\ncHrVBy2j4iQt6Qjg08BxwA7g15L+JyKeq1XjzMwqUe7ijlFjxjNqzPjd27/7z++0LrISGFGyPby4\nr00RMUvSKEn7pcZmVc1wx+HAIxGxLSJagAeAKdU2yMysWlUMd8wBDpE0UlJX4BzgrtICkt5V8nws\n0DUiXs0SW4lqhjsWApdIGgBsAz5UbKSZWV2pwqVoI6JF0lRgJoVO7IyIWCTp/MLLMR34S0kfB7YD\nbwB/vafYat9LxUk6IhZLuhy4F9gMzAPanPp287VX7H5+9LiJHDNuYlvFzOwd5rHZD/L47Fk1P27n\nKsYIIuJuYHSrfdeVPL8CuKJ1XLnYaimignnIbR1I+hawPCJ+0Gp/vNGcvY77nklfYbt3l/R/a74/\n+8Wk8oP7dk+u48ihPZJjJgwbmBxz3wtrk8p/7Uv/kVzHrT/+RnLMlh3pK4wP7Zn+Of9+2atJ5e9/\nKv07dsH7RyXHPPtq+krek0YOSiq/tYLPuBLr3khbkR5gfeKtFwA+M34kEVHVdEFJccX9f8xU9qun\nvqvq+jpatVd3DI6ItZJGAH8BTKhNs8zMKucbLL3p58Wzms3A5yNiUw3aZGZWlRzduqO6JB0RJ9eq\nIWZmtZKnGyz53h1mljse7jAza2Cd3JM2M2tcOcrRTtJmlj8e7jAza2A+cWhm1sBylKP3TpKe90L2\nxTKH9+2ZfPwfzl2RHHPqoQOSym94I33xzm4VzE1d8HL6wqKpMwgvveYryXUc1Cf957JpW/pn9tCK\n9ckx3RM/529MTp+1++CL6e0a0rtLcszCVzYmld/anL5A7v690ha7BXhX/97JMQckLpBcS+5Jm5k1\nsBzlaCdpM8sfX4JnZtbA8pOinaTNLIc8Jm1m1sDyk6KdpM0sh3LUkXaSNrP8UY6ydDUL0ZqZNaSm\njI+2SJosabGkJZIubOP10ZIekrRV0t+1eu0FSU9Imifp0Vq8F/ekzSx3Kj1xKKkJuBY4DXgJmCPp\nzohYXFLsFeCLwNltHGInMCki0mc/leGetJnljqRMjzaMA5ZGxLKIaAZuBc4qLRAR6yLicaCtKbWi\nxnl1r/SkDxiQfXHRm+elT/H+y8OHJMccmNAmgNe3pk9xnbs6bYFUgM9+9vLkmOtvuCip/NH790+u\nY2Cfrskx3V5PX4i0X/dOyTEj+qYt+Nu/W/p07TPfNTg55rXm9Pe/+vWtSeWnHDksuY7NW9On63fu\nlN4zXbsxfcp6rVSRJYcBy0u2V1BI3FkFcK+kFmB6RFxfeVMKPNxhZrlT7sThwjkPsfCxhzqy6okR\nsUrSYArJelFEzKrmgE7SZpY75fr9Rx3/Po46/n27t//rB2+7OdlKYETJ9vDivkwiYlXx/2sl3U6h\nF15VkvaYtJnljpTt0YY5wCGSRkrqCpwD3LWnqt6sUz0l9S4+7wWcASys9r24J21mudNU4ZzDiGiR\nNBWYSaETOyMiFkk6v/ByTJc0BHgM6APslHQB8B5gMHC7pKCQW38SETOrfS9O0maWO9XcuyMi7gZG\nt9p3XcnzNcBBbYRuBsZUXHEZVQ13SOon6b8lLZL0lKTxtWqYmVmlqhjuaDjV9qS/DfwqIv5KUmcg\nffkOM7Maq3S4oxFVnKQl9QVOiojzACJiB7CpRu0yM6vYvtJLzqKa4Y4/AdZJulHSXEnTJaXNKjAz\n6wAe7ngzdizwhYh4TNLVwEXAtNYFr778kt3PJ0w8mQknnlxFtWaWF4/PfpDHH6nqMuI2KUfDHYqI\nygILl6E8HBGjitsnAhdGxJ+1KhfPr3sj83F/99zLyW0ZPaBvcszSDa8llX+1gtXCU1fxBvj+9K8m\nx6TelnHbjvTpun92+AHJMXOXp698/sLGLckxqT+bg/qlT3Ef1jv9dMsXbnwsOeb/fXxsUvmBPdLf\ny8Zt6dPV172xLTmmeWf69+yT40YSEVVlWEnxm0VrM5X9wOGDq66vo1U83FG8DGW5pEOLu04Dnq5J\nq8zMqtAkZXrsC6q9uuNLwE8kdQGeAz5ZfZPMzKqTp+GOqpJ0RDwBHF+jtpiZ1URTfnK0ZxyaWf64\nJ21m1sD2keHmTJykzSx3cpSjnaTNLH865agr7SRtZvmTnxztJG1m+eMTh4lWrc++uOZ7BvZLPv78\nl9Nnti1dl7bg57X/+J3kOi695ivJMWOH7pccc/eza5LKr9iYPuPsfcO3J8ecdtj+yTE/mvNCckz/\nHmmL165+Lf39H9QnOYRjjxyaHHPo4LSKNr2R/l6WrN+cHPNXRw5PjvnvhemLStdKjkY73JM2s/zJ\nUY72GodmlkPK+GgrVJosabGkJZIuLFPmGklLJc2XNCYlNpWTtJnljjL+97Y4qQm4FvggcARwrqTD\nWpU5E3hXRLwbOB/4QdbYSjhJm1nuNCnbow3jgKURsSwimoFbgbNalTkL+DFARDwC9CveFTRLbPp7\nqfYAZmYNp/LhjmHA8pLtFcV9WcpkiU3mE4dmljt7+RK8Dq3MSdrMcqfcJXiPPfwgj81+cE+hK4ER\nJdvDi/talzmojTJdM8Qmc5I2s9wp17U9/oSTOP6Ek3ZvX3f1Za2LzAEOkTQSWAWcA5zbqsxdwBeA\nn0maAGyIiDWS1mWITeYkbWb5U+EARES0SJoKzKRwzm5GRCySdH7h5ZgeEb+S9CFJzwKvU1zspFxs\ntW/FSdrMcqeaMemIuBsY3Wrfda22p2aNrdZeSdIHDOieueySl9MWiIX0Kd6QPs176r9+MbmO/Xqk\nf7y9uqdNcQbon1jPvOXpn/H8NelT71dszL4A8S6H7Ze+qPCLr72eVP77/5veudl+6qjkmPPHj2i/\nUCstO9MWhr7zmbRbAgB065yewOavSP/5r92cvnhzrXhlFjOzRuYkbWbWuHwXPDOzBua74JmZNbAc\n5WgnaTPLoRxl6YqTtKRuwAMUZtl0Bm6LiG/WqmFmZpXymDQQEdsknRoRWyR1Av4g6dcR8WgN22dm\nlsyX4BVFxJbi027FY6Vd5Glm1hFylKSrulWppCZJ84DVwL0RMac2zTIzq1ylN/1vRNX2pHcC75XU\nF7hD0nsi4unW5f552rTdz8eMm8iY8SeWPeZLm9NnqVWySGzqDMJ3D8o+a3J3TP/01UtfSli0d5en\n16R9Zp+bkD4TbtP29AVP+3frkhxzw+Ppi5fu2LkzqfxFUw5PrmPhmi3tF2pl+86W5JiXEmdp9uyS\n3s9KnNQIwIF9eyTHjBzQ/ntZ/PjDPDN3dnqD2uFL8FqJiE2S7gcmA29L0ud9sSZLfZlZzhx27Akc\nduwJu7d/ecPVNTlujnJ05cMdkgZJ6ld83gM4HVhcq4aZmVWsioVoG001PekDgJuKiy82AT+LiF/V\npllmZpXbV8abs6jmErwngbE1bIuZWU34Ejwzs0bmJG1m1rg83GFm1sDydAleVZNZzMwaUUdd3CFp\ngKSZkp6RdM+uK9zaKDdD0hpJC1rtnyZphaS5xcfk9up0kjaz3JGyPSpwEfCbiBgN3Ad8rUy5G4EP\nlnntqogYW3zc3V6FTtJmlkMddqH0WcBNxec3AWe3VSgiZgHr99C4zPbKmHSvrtkXV/3c31yRfPzv\nT/9qcsyBvdOmufbv1jW5jqdf2Zgcs3zj9uSYT40dnlR+xab0Kc4DKnj/nSq4DmrcyPSp9Pv37JZU\nfmekz4s+4aA2/6rdo83b0xdi3ZHYtlH7pU/X7tU5/dc+Krh3Wj3HhTvwErz9I2INQESslrR/BceY\nKuljwGPAVyJij4nCJw7NLHfK/QPx0IO/56FZD7QTq3uBIaW7KNzh8xttFE/91+t7wL9EREi6BLgK\n+PSeApykzSx3yl2CN/GkSUw8adLu7asuv+RtZSLi9LLHLZwMHBIRayQNBV5OaVdErC3ZvB74ZXsx\nHpM2s/zpuHt33AWcV3z+CeDODK14c0chse8yBVjYXoVO0maWOx14f6XLgdMlPQOcBlwGIOkASf+z\nu37pFuAh4FBJL0r6ZPGlKyQtkDQfOAX4cnsVerjDzHKno05aRsSrwAfa2L8K+NOS7Y+Uif94ap1O\n0maWO8rRlEMnaTPLnfykaCdpM8uhHHWknaTNLH98FzwzswbmnnSik6dcnLnsA7/4VvLxX9+evirz\nwYN6JpVfVcEq3pNGVTJjNF1q294/Or1dDyxd236hVo4ZMSg5plOn9N+u/j3Tpqz36Z7+tW+pYInt\nFa+mrfwN0KVz2vvf0ZLerlWb09s1MvH3BeCNbem/l/Z27kmbWe64J21m1sCacpSlnaTNLHfyk6Kd\npM0sj3KUpau6d4ekyZIWS1oi6cJaNcrMrBrK+N++oOIkLakJuJbCEjFHAOdKOqxWDetos9u5p2y9\nNGq7AJ549A/1bkKbZv+hMT+zx2c/WO8mlPXknMb8WdZKBy6ftddV05MeByyNiGUR0QzcSmFpmX1C\no/5iN2q7ABY0aJJ+pEE/s8dnz6p3E8p6cs5D9W5Ch+rAu+DtddUk6WHA8pLtFcV9Zmb1laMs7ROH\nZpY7eboET1HBopwAkiYA/xwRk4vbFwEREZe3KldZBWb2jhQRVWVYSS8AIzMWXxYRB1dTX0erJkl3\nAnatTrD1GT/hAAAD+ElEQVQKeBQ4NyIW1a55ZmbvbBUPd0REi6SpwEwKY9sznKDNzGqr4p60mZl1\nvA5biLZRJ7pI6ibpEUnzJD0paVq927SLpH6S/lvSIklPSRpf7zYBSLqg+Fk9KelLdW7LDElrJC0o\n2XdF8TObL+nnkvo2SLumSVohaW7xMblB2nWMpIeLvwOPSjquDu0aLum+4vd89/dK0oclLZTUImns\n3m5XQ4qImj8oJP9nKQzedwHmA4d1RF0Vtq9n8f+dgNnAuHq3qdieHwGfLD7vDPRtgDYdASwAuhU/\nr5nAqDq250RgDLCgZN8HgKbi88uASxukXdOAv6vzz6+tdt0DnFF8fiZwfx3aNRQYU3zem8L5rcOA\n0cC7gfuAsfX87Brl0VE96Yae6BIRW4pPu1FIhnUf8yn2/k6KiBsBImJHRGyqc7MADgceiYhtEdEC\nPABMqVdjImIWsL7Vvt9ExM7i5mxgeCO0q6iu14KVaddOoF/xeX9g5V5tFBARqyNifvH5ZmARMCwi\nnomIpewzVzF3vI5K0g090UVSk6R5wGrg3oiYU+82AX8CrJN0Y/FP4+mSetS7UcBC4CRJAyT1BD4E\nHFTnNu3Jp4Bf17sRJaYWh2FukNSv/eJ7xZeBKyW9CFwBfK2ejZF0MIXe/iP1bEej6rAx6UYWETsj\n4r0UelzjJb2n3m2i0KMfC3w3IsYCW4CL6tskiIjFwOXAvcCvgHlAQy65IelioDkibql3W4q+R2Fo\naAyFDsFVdW7PLp8DLoiIERQS9g/r1RBJvYHbiu3ZXK92NLKOStIrgREl28Opw59U7SkOJ9wP7PUT\nOm1YASyPiMeK27dRSNp1FxE3RsRxETEJ2AAsqXOT3kbSeRR6+R+pc1N2i4i1URx0Ba4Hjq9ne0p8\nIiLuAIiI2ygMT+51kjpT+J7fHBF31qMN+4KOStJzgEMkjZTUFTgHuKuD6koiadCuPzuLwwmnA4vr\n2yqIiDXAckmHFnedBjxdxybtJmlw8f8jgL8A6t1TfcudF4pXTfwD8OcRsa1urXp7u4aWvDaFwtBR\nPbS+U8VKSacASDqN+v2j+0Pg6Yj4dpnXPS5NB14nXfzF+TZvTnS5rEMqSiTpKOAmCu1qAn4WEemr\n33YASccAN1C4IuY5Cld6bKxvq0DSA8B+QDPw5Yj4XR3bcgswCRgIrKFwBcXXga7AK8VisyPi8w3Q\nrlMpjLXuBF4Azi/+Y1zvdj0DXEPhap2twOcjYt5ebtdECiehn6Rw4j4o/By7A98BBlH4q21+RJy5\nN9vWaDyZxcysgb0jTxyame0rnKTNzBqYk7SZWQNzkjYza2BO0mZmDcxJ2sysgTlJm5k1MCdpM7MG\n9v8BlgvaPNntSVkAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# 得られた相関行列をカラーマップで表示する。\n", "import matplotlib.ticker as ticker\n", "plt.pcolor(cormat, cmap=plt.cm.Blues)\n", "plt.colorbar()\n", "plt.gca().get_xaxis().set_major_locator(ticker.MaxNLocator(integer=True))\n", "plt.gca().get_yaxis().set_major_locator(ticker.MaxNLocator(integer=True))\n", "plt.xlim([0, len(cormat)])\n", "plt.ylim([0, len(cormat)])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 7.6 [通過テスト](http://kogolab.chillout.jp/elearn/icecream/chap7/sec6.html)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__課題7.6__:[アイスクリームアンケート調査結果](https://raw.githubusercontent.com/maskot1977/ipython_notebook/master/toydata/icecream_chosa.txt)のデータを用い、以下の問いに答えてください。\n", "* 21種類のアイスクリームの好みのデータについて、すべての組み合わせの相関係数を求めた上で、正の相関が高いもの(ここでは+0.4以上)の組み合わせをリストしてください。\n", "* 同様に、相関行列の中で、負の相関が高いもの(ここでは-0.2以下)の組み合わせをリストしてください。\n", "* 以上の結果を踏まえて、アイスクリームの好みについての分類をしたときに、言えることを書いてください。" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "('milk_tea', 'banana')\n", "('milk_tea', 'caramel')\n", "('macadamia_nuts', 'almond')\n", "('macadamia_nuts', 'walnut')\n", "('cookie', 'chocolate_chips')\n", "('chocolate', 'chocolate_chips')\n", "('almond', 'walnut')\n", "('mint', 'chocolate_mint')\n", "('banana', 'caramel')\n", "('caramel', 'marron')\n", "('marron', 'adzuki-bean')\n" ] } ], "source": [ "# 正の相関が高いもの(ここでは+0.4以上)の組み合わせ\n", "for x, namex in enumerate(val_names):\n", " for y, namey in enumerate(val_names):\n", " if x >= y:\n", " continue\n", " if cormat[x][y] >= 0.4:\n", " print (namex, namey)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "('vanilla', 'almond')\n", "('vanilla', 'mint')\n", "('vanilla', 'chocolate_mint')\n", "('cookie', 'mint')\n" ] } ], "source": [ "# 負の相関が高いもの(ここでは-0.2以下)の組み合わせ\n", "for x, namex in enumerate(val_names):\n", " for y, namey in enumerate(val_names):\n", " if x >= y:\n", " continue\n", " if cormat[x][y] <= -0.2:\n", " print (namex, namey)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 以上の結果を踏まえて、アイスクリームの好みについての分類をしたときに、言えること\n", "\n", "# 正の相関が高い組み合わせを見た限り、チョコレート味、チョコチップ味、クッキー味などは同じグループであり、\n", "# チョコミント味はチョコレート味の仲間というよりはミント味の仲間であり、\n", "# 他にはマカダミアナッツ、アーモンド、クルミなどのナッツ類のグループや、\n", "# ミルクティー、バナナ、キャラメル、マロン、あずきなどのまろやかな甘みのグループに分類できそうである。\n", "\n", "# 負の相関が高いグループを見ると、バニラ味はミント系やアーモンド味と異なるグループに属し、\n", "# またミント系はバニラ味やクッキー味などと異なるグループに属しそうである。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 8. [因子分析(1)](http://kogolab.chillout.jp/elearn/icecream/chap8/sec0.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 8.1 [因子分析の考え方](http://kogolab.chillout.jp/elearn/icecream/chap8/sec1.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 8.2 [固有値](http://kogolab.chillout.jp/elearn/icecream/chap8/sec2.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 8.3 [因子負荷](http://kogolab.chillout.jp/elearn/icecream/chap8/sec3.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 8.4 [回転](http://kogolab.chillout.jp/elearn/icecream/chap8/sec4.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 8.5 [通過テスト](http://kogolab.chillout.jp/elearn/icecream/chap8/sec6.html)\n", "Pythonでは、因子分析を行うためのライブラリが使えます。\n", "\n", "__課題8.5__:因子分析を行う前に、リストの正規化をする(Z値に変換する)関数を作成してください。" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# リストの正規化をする(Z値に変換する)関数\n", "def normalize(data):\n", " ave = average(data)\n", " std = standard_deviation(data)\n", " list = []\n", " for x in data:\n", " list.append((x - ave) / (std / float(len(data))))\n", " return list" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# リストのリストの正規化をする(Z値に変換する)関数\n", "def normalize2(data):\n", " list = []\n", " for x in data:\n", " list.append(normalize(x))\n", " return list" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__課題8.6__:因子分析を行う以下のコードを実行してください。" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 図やグラフを図示するためのライブラリをインポートする。\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 機械学習のライブラリから、因子分析のプログラムをインポート\n", "from sklearn.decomposition import FactorAnalysis" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 因子分析の実行\n", "fa = FactorAnalysis()\n", "factors = fa.fit_transform(normalize2(matrix))" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...11121314151617181920
vanilla-1.268569-0.0104242.318349-1.735447-1.382064-0.5705990.0433041.511889-0.7918650.436107...-1.0552571.2538820.161477-0.764865-0.873683-0.2200230.6115760.0830700.2366530.0
strawberry-0.3621260.5141870.8287580.426349-0.0253112.404494-0.876892-1.471251-1.200159-1.630133...-0.1410870.7663271.6676940.562325-0.3541020.694906-0.089582-0.9325070.1667170.0
milk_tea-0.779537-0.4687270.4443151.0644070.688036-0.4970591.139735-0.838651-2.017942-0.732853...0.6204200.552054-1.5357570.319772-0.017558-1.123373-1.6926770.4121580.1033140.0
macadamia_nuts0.311445-1.707769-0.8172740.556034-0.726757-0.2066910.1280000.437522-0.584647-0.277903...0.306305-0.1702831.760713-0.0919571.4724631.2855291.4780710.8768220.7106900.0
cookie-1.458831-0.541890-1.499313-1.012749-0.970025-0.2178020.0463120.0420970.123070-0.748735...-0.932264-1.312443-0.6158762.710530-0.165078-0.8906600.740134-0.963135-0.3232010.0
chocolate-0.0240041.132431-1.190455-1.1166730.047021-0.392829-1.139540-1.0871550.3343340.564087...1.1187160.2500170.734378-1.6033840.098381-1.8078910.297841-1.7761100.1919920.0
melon-0.7565431.8077380.3289621.286306-0.1799941.7272510.3114771.1556712.276051-0.372793...0.155506-0.528329-0.4718450.102185-0.714128-0.0718460.1513550.8553060.3505340.0
coffee-0.6489790.384299-0.0615861.070261-0.617858-2.3393951.278930-0.3905191.665691-0.372049...0.2858451.2985041.1754830.370414-0.0713591.163895-1.140516-1.1290700.0177620.0
almond0.550480-0.495058-1.6840240.228919-1.3999480.6560780.5926460.1895910.259340-1.010834...-0.3281611.373537-0.468381-1.2938560.259451-1.615691-0.0304361.5223420.7248860.0
rum_raisin0.758196-0.8749341.325704-0.696747-1.6947271.3157421.577272-1.1633270.6063881.541298...1.407346-1.161449-0.5046670.0116470.9024070.098465-0.495305-0.498085-0.3814380.0
mint2.4755830.8595360.378847-0.3197730.466233-0.3209640.7731510.393056-0.076465-0.841273...-0.4836450.6950110.2452910.6720470.181762-0.5478090.8310970.141547-2.9339250.0
banana-0.7869820.541323-0.029725-0.1679101.8845160.1445921.804551-0.182355-0.200982-0.191326...-1.943758-1.264642-0.229517-1.7010191.4345170.4399410.682724-0.7633810.3197200.0
caramel-0.4162610.307764-0.745029-0.0239851.3698550.1199221.0096360.779210-0.9502730.988364...2.3964360.570968-0.3234040.456950-1.4326790.6291281.8804400.0442790.2638400.0
walnut0.654143-1.271467-1.0700620.780755-0.3849900.521873-0.5844561.621193-0.5677370.168249...-0.460775-0.857318-0.409739-1.346983-1.7247831.025217-1.389702-1.592031-1.0140180.0
cassis0.175942-0.4372880.0278661.7693190.3989310.032984-0.568923-1.0766110.0422242.937834...-1.8799920.4928590.5720920.716653-0.667108-0.9318650.4381110.482704-0.0063780.0
chocolate_chips-0.2263681.397066-1.208100-1.645448-0.312818-0.345273-0.420425-1.341062-0.4838760.561314...-0.389309-0.455137-0.152339-0.173965-0.5943931.955030-1.1345012.207914-0.5513120.0
orange-0.1630431.6038670.6016731.508254-0.964408-1.057155-1.7113241.006225-1.2374340.208638...0.741975-1.285698-0.3760030.0062711.785554-0.1988880.0466660.183563-0.2787200.0
green_tea0.571728-1.1755871.3087130.3064760.342418-1.306810-1.144870-1.5853951.014943-1.466980...0.223698-1.185572-1.006683-0.777827-1.4592620.1238851.3821540.5422760.3665920.0
marron-0.417869-1.0754060.532979-0.9144451.786432-0.044534-0.3744871.0700830.676474-0.098205...0.717336-1.0569362.0977050.3161350.056157-1.317938-1.6521461.211806-0.2070680.0
chocolate_mint2.4797260.6154350.196853-0.8235840.517045-0.232910-0.1767520.699204-0.0978360.052221...-0.5260640.089772-0.5465671.2508710.0762600.314771-0.771863-0.6466782.9357540.0
adzuki-bean-0.668130-1.1050960.012550-0.5403191.1584160.609084-1.7073440.2305841.2107010.284971...0.1667291.934876-1.7740550.2580551.8071810.995216-0.143440-0.262790-0.6923930.0
\n", "

21 rows × 21 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 \\\n", "vanilla -1.268569 -0.010424 2.318349 -1.735447 -1.382064 -0.570599 \n", "strawberry -0.362126 0.514187 0.828758 0.426349 -0.025311 2.404494 \n", "milk_tea -0.779537 -0.468727 0.444315 1.064407 0.688036 -0.497059 \n", "macadamia_nuts 0.311445 -1.707769 -0.817274 0.556034 -0.726757 -0.206691 \n", "cookie -1.458831 -0.541890 -1.499313 -1.012749 -0.970025 -0.217802 \n", "chocolate -0.024004 1.132431 -1.190455 -1.116673 0.047021 -0.392829 \n", "melon -0.756543 1.807738 0.328962 1.286306 -0.179994 1.727251 \n", "coffee -0.648979 0.384299 -0.061586 1.070261 -0.617858 -2.339395 \n", "almond 0.550480 -0.495058 -1.684024 0.228919 -1.399948 0.656078 \n", "rum_raisin 0.758196 -0.874934 1.325704 -0.696747 -1.694727 1.315742 \n", "mint 2.475583 0.859536 0.378847 -0.319773 0.466233 -0.320964 \n", "banana -0.786982 0.541323 -0.029725 -0.167910 1.884516 0.144592 \n", "caramel -0.416261 0.307764 -0.745029 -0.023985 1.369855 0.119922 \n", "walnut 0.654143 -1.271467 -1.070062 0.780755 -0.384990 0.521873 \n", "cassis 0.175942 -0.437288 0.027866 1.769319 0.398931 0.032984 \n", "chocolate_chips -0.226368 1.397066 -1.208100 -1.645448 -0.312818 -0.345273 \n", "orange -0.163043 1.603867 0.601673 1.508254 -0.964408 -1.057155 \n", "green_tea 0.571728 -1.175587 1.308713 0.306476 0.342418 -1.306810 \n", "marron -0.417869 -1.075406 0.532979 -0.914445 1.786432 -0.044534 \n", "chocolate_mint 2.479726 0.615435 0.196853 -0.823584 0.517045 -0.232910 \n", "adzuki-bean -0.668130 -1.105096 0.012550 -0.540319 1.158416 0.609084 \n", "\n", " 6 7 8 9 ... 11 \\\n", "vanilla 0.043304 1.511889 -0.791865 0.436107 ... -1.055257 \n", "strawberry -0.876892 -1.471251 -1.200159 -1.630133 ... -0.141087 \n", "milk_tea 1.139735 -0.838651 -2.017942 -0.732853 ... 0.620420 \n", "macadamia_nuts 0.128000 0.437522 -0.584647 -0.277903 ... 0.306305 \n", "cookie 0.046312 0.042097 0.123070 -0.748735 ... -0.932264 \n", "chocolate -1.139540 -1.087155 0.334334 0.564087 ... 1.118716 \n", "melon 0.311477 1.155671 2.276051 -0.372793 ... 0.155506 \n", "coffee 1.278930 -0.390519 1.665691 -0.372049 ... 0.285845 \n", "almond 0.592646 0.189591 0.259340 -1.010834 ... -0.328161 \n", "rum_raisin 1.577272 -1.163327 0.606388 1.541298 ... 1.407346 \n", "mint 0.773151 0.393056 -0.076465 -0.841273 ... -0.483645 \n", "banana 1.804551 -0.182355 -0.200982 -0.191326 ... -1.943758 \n", "caramel 1.009636 0.779210 -0.950273 0.988364 ... 2.396436 \n", "walnut -0.584456 1.621193 -0.567737 0.168249 ... -0.460775 \n", "cassis -0.568923 -1.076611 0.042224 2.937834 ... -1.879992 \n", "chocolate_chips -0.420425 -1.341062 -0.483876 0.561314 ... -0.389309 \n", "orange -1.711324 1.006225 -1.237434 0.208638 ... 0.741975 \n", "green_tea -1.144870 -1.585395 1.014943 -1.466980 ... 0.223698 \n", "marron -0.374487 1.070083 0.676474 -0.098205 ... 0.717336 \n", "chocolate_mint -0.176752 0.699204 -0.097836 0.052221 ... -0.526064 \n", "adzuki-bean -1.707344 0.230584 1.210701 0.284971 ... 0.166729 \n", "\n", " 12 13 14 15 16 17 \\\n", "vanilla 1.253882 0.161477 -0.764865 -0.873683 -0.220023 0.611576 \n", "strawberry 0.766327 1.667694 0.562325 -0.354102 0.694906 -0.089582 \n", "milk_tea 0.552054 -1.535757 0.319772 -0.017558 -1.123373 -1.692677 \n", "macadamia_nuts -0.170283 1.760713 -0.091957 1.472463 1.285529 1.478071 \n", "cookie -1.312443 -0.615876 2.710530 -0.165078 -0.890660 0.740134 \n", "chocolate 0.250017 0.734378 -1.603384 0.098381 -1.807891 0.297841 \n", "melon -0.528329 -0.471845 0.102185 -0.714128 -0.071846 0.151355 \n", "coffee 1.298504 1.175483 0.370414 -0.071359 1.163895 -1.140516 \n", "almond 1.373537 -0.468381 -1.293856 0.259451 -1.615691 -0.030436 \n", "rum_raisin -1.161449 -0.504667 0.011647 0.902407 0.098465 -0.495305 \n", "mint 0.695011 0.245291 0.672047 0.181762 -0.547809 0.831097 \n", "banana -1.264642 -0.229517 -1.701019 1.434517 0.439941 0.682724 \n", "caramel 0.570968 -0.323404 0.456950 -1.432679 0.629128 1.880440 \n", "walnut -0.857318 -0.409739 -1.346983 -1.724783 1.025217 -1.389702 \n", "cassis 0.492859 0.572092 0.716653 -0.667108 -0.931865 0.438111 \n", "chocolate_chips -0.455137 -0.152339 -0.173965 -0.594393 1.955030 -1.134501 \n", "orange -1.285698 -0.376003 0.006271 1.785554 -0.198888 0.046666 \n", "green_tea -1.185572 -1.006683 -0.777827 -1.459262 0.123885 1.382154 \n", "marron -1.056936 2.097705 0.316135 0.056157 -1.317938 -1.652146 \n", "chocolate_mint 0.089772 -0.546567 1.250871 0.076260 0.314771 -0.771863 \n", "adzuki-bean 1.934876 -1.774055 0.258055 1.807181 0.995216 -0.143440 \n", "\n", " 18 19 20 \n", "vanilla 0.083070 0.236653 0.0 \n", "strawberry -0.932507 0.166717 0.0 \n", "milk_tea 0.412158 0.103314 0.0 \n", "macadamia_nuts 0.876822 0.710690 0.0 \n", "cookie -0.963135 -0.323201 0.0 \n", "chocolate -1.776110 0.191992 0.0 \n", "melon 0.855306 0.350534 0.0 \n", "coffee -1.129070 0.017762 0.0 \n", "almond 1.522342 0.724886 0.0 \n", "rum_raisin -0.498085 -0.381438 0.0 \n", "mint 0.141547 -2.933925 0.0 \n", "banana -0.763381 0.319720 0.0 \n", "caramel 0.044279 0.263840 0.0 \n", "walnut -1.592031 -1.014018 0.0 \n", "cassis 0.482704 -0.006378 0.0 \n", "chocolate_chips 2.207914 -0.551312 0.0 \n", "orange 0.183563 -0.278720 0.0 \n", "green_tea 0.542276 0.366592 0.0 \n", "marron 1.211806 -0.207068 0.0 \n", "chocolate_mint -0.646678 2.935754 0.0 \n", "adzuki-bean -0.262790 -0.692393 0.0 \n", "\n", "[21 rows x 21 columns]" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 左から順に第一因子、第二因子、、、\n", "pd.DataFrame(factors, index=val_names)" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [ { "data": { "image/png": "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\nAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# 第一因子と第二因子でプロットする\n", "plt.figure(figsize=(8, 8))\n", "for x, y, name in zip(factors[:, 0], factors[:, 1], val_names):\n", " plt.text(x, y, name, alpha=0.8, size=10)\n", "plt.scatter(factors[:, 0], factors[:, 1], alpha=0.8)\n", "plt.title(\"Factor Analysis\")\n", "plt.xlabel(\"The first factor score\")\n", "plt.ylabel(\"The second factor score\")\n", "plt.grid(True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__課題8.7__:上と同様にして、第三因子と第四因子でプロットしてください。また、以上の結果から、アイスクリームの味の好みについて何が言えそうか考察してください。" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nixZK9EGg33FoKM7hQ8leRESkglMzvoiISDmlZnwREREBlOylhNQHF3yKcfApxqGhOIcPJXsREZEK\nTn32IiIi5ZT67EVERARQspcSUh9c8CnGwacYh4biHD6U7EVERCo49dmLiIiUU+qzFxEREUDJXkpI\nfXDBpxgHn2IcGopz+FCyFxERqeDUZy8iIlJOqc9eREREACV7KSH1wQWfYhx8inFoKM7hQ8leRESk\nglOfvYiISDmlPnsRKXd0si4SHFXKugJSvqxZs4auXbuWdTUqtIoc40WLFvHmm28C0LdvX7p27cqY\nMWNISEhgy5YtPP3008yfP5+0tDSOHTtG9+7dGTFiBAA33ngjvXv3Zu3atfh8PqZOncr555/Pjz/+\nyEMPPcSBAwe47LLLWL9+PSkpKdSpU4cVK1awdOlSsrOzSUhIYMKECTjnKnSMw4niHD50ZS8iIbF5\n82beeustXnrpJebPn88bb7zBoUOH2LVrF7fccgtLliyhUaNG3H333bz00ku8/PLLpKamsm3btkAZ\nsbGxpKSk0L9/f1JSUgB44YUXaN++PUuWLOHaa69l//79AKSnp/Puu+8yb948UlJSiIiIYMWKFWVy\n7CJlrcyv7J1z84DewH4za1XI59cAbwDb/ateNbPHQlhFyUdn6cFXEWPs9Xp56623aN++PdWqVQOg\nW7dubNiwgSZNmpCQkBDY9p133uG1117D5/Nx4MABtm/fTnx8fOA7AJdeeinvvfceABs2bGD69OkA\ndOrUidq1awPwySefsHnzZoYNG4aZcezYMerVqwdUzBiHI8U5fJR5sgfmA88CC0+xzVozuzFE9RGR\nUrRy5TskJk7l0KEscnK+59JLE+jZ87pA/3x0dHRg271795KSkkJKSgoxMTFMnjyZrKyswOdRUVEA\nRERE4PP5Ct1f/n7/3r17c9dddwXjsETKlTJvxjezDwHvaTY77Z2GEhp6bjb4KlKMvV4viYlTiYyc\nQ2zsPH76qTn33vsX9u7dy5o1a2jbtu0J22dkZFCjRg1q1KjBgQMHWLdu3Wn30bp1a959910APv74\nYw4fPgxAu3btWL16NV5v7n8vhw4dYt++fUDFinE4U5zDRzhc2RdHJ+fcBmAPMNbMvizrConI6Xk8\nHqAJ0dHNAahXbzAez4PccccdDBs2jFq1ap2wffPmzbnooosYMGAAjRo1ok2bNoHPnCv8nP/3v/89\n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\nMPf/AauDRv8YMjAxAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# 第三因子と第四因子でプロットする\n", "plt.figure(figsize=(8, 8))\n", "for x, y, name in zip(factors[:, 2], factors[:, 3], val_names):\n", " plt.text(x, y, name, alpha=0.8, size=10)\n", "plt.scatter(factors[:, 2], factors[:, 3], alpha=0.8)\n", "plt.title(\"Factor Analysis\")\n", "plt.xlabel(\"The third factor score\")\n", "plt.ylabel(\"The fourth factor score\")\n", "plt.grid(True)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 以上の結果から、アイスクリームの味の好みについて何が言えそうか\n", "\n", "# 第一因子を見ると、ミント系(ミント味とチョコミント味)とそれ以外がくっきり分かれているので、\n", "# これはミントっぽいかどうかという因子と言えそうである。\n", "\n", "# 第二因子を見ると、メロンやオレンジのようなフルーツっぽさ\n", "# マカダミアナッツやクルミのようなナッツっぽさという因子のように見えるが、\n", "# ストロベリーやチョコ系(チョコレート味とチョコチップ味)の位置を見ると必ずしもそうと言い切れない。\n", "\n", "# 第三因子を見ると、バニラ味とそれ以外に分かれているように見えるのでバニラっぽさ、\n", "# 同様に第四因子はカシスっぽさを表すのかもしれない。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 9. [因子分析(2)](http://kogolab.chillout.jp/elearn/icecream/chap9/sec0.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.1 [単純構造](http://kogolab.chillout.jp/elearn/icecream/chap9/sec1.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.2 [因子得点](http://kogolab.chillout.jp/elearn/icecream/chap9/sec2.html)\n", "本文を読んで概念を学んでください。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 9.3 [通過テスト](http://kogolab.chillout.jp/elearn/icecream/chap9/sec3.html)\n", "今までは、アイスクリーム間の関係を解析しましたが、ここからは、人の間の関係を解析します。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__課題9.3__:[アイスクリームアンケート調査結果](https://raw.githubusercontent.com/maskot1977/ipython_notebook/master/toydata/icecream_chosa.txt)をダウンロードして、先ほどの matrix と縦横を入れ替えた matrixTを作成してください。" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 縦横入れ替えた matrixT を作成\n", "matrixT = []\n", "val_names = []\n", "ids = []\n", "sta = 5\n", "for i, line in enumerate(open(\"icecream_chosa.txt\")):\n", " if i == 0:\n", " for j, val in enumerate(line.split()):\n", " val_names.append(val)\n", " else:\n", " vec = []\n", " for j, val in enumerate(line.split()):\n", " if j == 0:\n", " ids.append(val)\n", " vec.append(float(val))\n", " matrixT.append(vec)" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
IDgenderagebirth_orderfrequencyvanillastrawberrymilk_teamacadamia_nutscookie...bananacaramelwalnutcassischocolate_chipsorangegreen_teamarronchocolate_mintadzuki-bean
01.02.020.02.05.07.07.08.03.09.0...7.09.03.03.09.07.08.08.01.07.0
12.02.021.02.01.07.08.09.09.09.0...4.07.08.09.09.04.07.07.08.09.0
23.02.021.03.02.07.04.03.03.06.0...4.06.03.03.06.07.03.07.03.03.0
34.02.021.04.03.09.06.06.05.08.0...4.09.05.04.08.09.01.02.01.03.0
45.02.021.04.02.09.05.07.05.06.0...6.06.06.05.09.06.06.06.09.01.0
56.02.021.02.05.05.07.05.05.05.0...5.09.05.08.08.09.09.05.09.01.0
67.02.021.02.02.09.07.06.03.07.0...6.07.05.05.09.09.03.05.02.03.0
78.02.020.02.04.07.07.06.08.07.0...5.06.07.09.05.06.08.05.06.08.0
89.02.021.02.04.07.07.04.08.07.0...5.07.07.06.08.06.03.03.07.03.0
910.02.022.04.04.05.05.09.05.08.0...8.07.02.08.08.06.06.02.01.01.0
1011.02.022.02.03.08.01.08.09.07.0...4.09.07.06.06.07.08.06.04.05.0
1112.02.021.04.03.09.04.07.05.08.0...4.04.05.08.09.05.06.04.09.07.0
1213.02.021.04.04.07.07.06.08.08.0...5.09.07.05.09.07.07.06.08.08.0
1314.02.020.04.02.09.06.04.06.09.0...6.07.08.04.09.09.08.09.07.08.0
1415.02.020.02.04.08.07.05.05.05.0...4.04.06.05.08.06.09.04.09.05.0
1516.02.021.04.02.07.04.07.04.07.0...6.06.06.06.04.06.08.05.07.07.0
1617.02.020.02.02.06.04.02.02.07.0...4.06.06.05.07.05.09.06.09.06.0
1718.02.020.03.02.08.07.05.05.06.0...3.05.04.05.07.09.08.04.09.04.0
1819.02.021.04.06.05.09.08.05.07.0...6.06.07.07.08.07.09.05.08.05.0
1920.02.020.04.02.06.06.06.08.08.0...5.07.07.07.07.06.07.07.08.08.0
2021.02.021.04.03.09.09.06.06.08.0...7.06.05.09.09.09.09.07.04.08.0
2122.02.021.01.04.07.09.09.07.09.0...8.08.08.05.08.06.07.08.04.08.0
2223.02.021.02.04.08.08.09.08.08.0...5.08.08.04.09.08.09.05.05.08.0
2324.02.020.04.04.07.07.06.05.04.0...9.09.03.07.07.03.05.09.09.09.0
2425.02.020.01.03.07.06.07.09.09.0...6.08.08.05.08.04.08.09.03.09.0
2526.02.021.04.04.07.05.08.07.09.0...5.04.04.08.09.08.08.06.01.07.0
2627.02.020.02.05.07.09.07.07.08.0...2.08.08.09.08.09.06.03.01.07.0
2728.02.021.02.04.07.06.01.07.08.0...3.06.06.04.08.04.08.07.08.07.0
2829.02.021.03.04.06.07.07.08.08.0...5.09.08.07.09.07.07.05.05.03.0
2930.02.021.04.04.07.07.07.07.09.0...9.09.05.05.09.06.09.07.09.06.0
..................................................................
5051.01.019.02.06.07.08.06.03.05.0...4.05.02.03.08.05.08.03.08.02.0
5152.01.021.01.02.09.04.05.03.07.0...8.06.02.04.09.08.07.05.05.09.0
5253.01.020.01.05.09.08.07.06.09.0...7.09.07.06.09.05.03.09.01.09.0
5354.01.021.04.05.08.08.07.05.07.0...5.04.04.04.07.06.03.04.06.05.0
5455.01.019.04.04.07.07.08.07.06.0...5.06.05.09.09.07.09.07.08.09.0
5556.01.020.02.02.05.07.05.05.05.0...4.06.05.05.09.09.08.05.09.08.0
5657.01.022.01.03.09.09.09.09.09.0...7.08.06.06.08.07.09.07.01.09.0
5758.01.019.01.03.09.03.05.07.06.0...5.01.06.03.08.02.07.01.01.03.0
5859.01.020.02.03.07.07.07.04.06.0...7.08.03.06.07.07.08.06.03.06.0
5960.01.020.04.08.07.08.08.05.07.0...5.06.04.05.05.08.07.06.05.06.0
6061.01.018.02.04.06.04.03.05.09.0...3.04.03.05.08.05.01.03.05.01.0
6162.01.025.02.03.07.08.06.05.09.0...7.05.05.05.09.07.06.06.04.05.0
6263.01.019.02.02.06.06.07.07.07.0...6.08.07.05.09.05.06.06.08.05.0
6364.01.021.02.04.08.07.09.06.09.0...8.04.05.09.09.03.06.05.09.01.0
6465.01.021.02.06.07.08.05.04.06.0...4.07.07.05.06.04.08.05.04.06.0
6566.01.020.02.01.07.07.07.07.08.0...7.04.06.05.07.07.09.05.05.06.0
6667.01.022.02.05.07.07.05.04.08.0...5.03.03.04.08.07.08.05.03.04.0
6768.01.021.02.05.05.05.06.07.07.0...5.05.09.06.09.06.09.07.08.05.0
6869.01.021.03.01.08.07.05.05.07.0...6.05.04.05.07.08.05.05.05.05.0
6970.01.021.02.06.07.07.09.08.09.0...9.09.08.06.09.08.09.07.07.07.0
7071.01.022.04.04.07.07.06.06.08.0...5.07.05.05.09.07.03.07.06.08.0
7172.01.024.01.02.06.07.05.06.04.0...4.02.06.08.04.07.08.03.02.06.0
7273.01.020.02.02.06.06.05.08.08.0...6.07.08.07.08.05.08.08.08.07.0
7374.01.020.02.05.08.08.04.08.09.0...5.04.08.08.09.08.09.06.09.04.0
7475.01.021.02.06.04.06.02.03.06.0...3.02.03.02.06.08.01.01.02.02.0
7576.01.020.02.04.05.06.04.09.06.0...5.05.05.05.07.07.04.04.04.04.0
7677.01.020.03.06.07.05.06.06.08.0...3.09.05.05.09.07.06.05.06.07.0
7778.01.023.01.05.04.08.08.09.09.0...6.08.09.05.09.09.09.04.09.09.0
7879.01.023.04.07.09.07.07.05.04.0...9.07.04.05.08.08.05.05.08.04.0
7980.01.022.02.02.08.05.05.02.05.0...4.05.05.05.05.07.01.01.05.05.0
\n", "

80 rows × 26 columns

\n", "
" ], "text/plain": [ " ID gender age birth_order frequency vanilla strawberry milk_tea \\\n", "0 1.0 2.0 20.0 2.0 5.0 7.0 7.0 8.0 \n", "1 2.0 2.0 21.0 2.0 1.0 7.0 8.0 9.0 \n", "2 3.0 2.0 21.0 3.0 2.0 7.0 4.0 3.0 \n", "3 4.0 2.0 21.0 4.0 3.0 9.0 6.0 6.0 \n", "4 5.0 2.0 21.0 4.0 2.0 9.0 5.0 7.0 \n", "5 6.0 2.0 21.0 2.0 5.0 5.0 7.0 5.0 \n", "6 7.0 2.0 21.0 2.0 2.0 9.0 7.0 6.0 \n", "7 8.0 2.0 20.0 2.0 4.0 7.0 7.0 6.0 \n", "8 9.0 2.0 21.0 2.0 4.0 7.0 7.0 4.0 \n", "9 10.0 2.0 22.0 4.0 4.0 5.0 5.0 9.0 \n", "10 11.0 2.0 22.0 2.0 3.0 8.0 1.0 8.0 \n", "11 12.0 2.0 21.0 4.0 3.0 9.0 4.0 7.0 \n", "12 13.0 2.0 21.0 4.0 4.0 7.0 7.0 6.0 \n", "13 14.0 2.0 20.0 4.0 2.0 9.0 6.0 4.0 \n", "14 15.0 2.0 20.0 2.0 4.0 8.0 7.0 5.0 \n", "15 16.0 2.0 21.0 4.0 2.0 7.0 4.0 7.0 \n", "16 17.0 2.0 20.0 2.0 2.0 6.0 4.0 2.0 \n", "17 18.0 2.0 20.0 3.0 2.0 8.0 7.0 5.0 \n", "18 19.0 2.0 21.0 4.0 6.0 5.0 9.0 8.0 \n", "19 20.0 2.0 20.0 4.0 2.0 6.0 6.0 6.0 \n", "20 21.0 2.0 21.0 4.0 3.0 9.0 9.0 6.0 \n", "21 22.0 2.0 21.0 1.0 4.0 7.0 9.0 9.0 \n", "22 23.0 2.0 21.0 2.0 4.0 8.0 8.0 9.0 \n", "23 24.0 2.0 20.0 4.0 4.0 7.0 7.0 6.0 \n", "24 25.0 2.0 20.0 1.0 3.0 7.0 6.0 7.0 \n", "25 26.0 2.0 21.0 4.0 4.0 7.0 5.0 8.0 \n", "26 27.0 2.0 20.0 2.0 5.0 7.0 9.0 7.0 \n", "27 28.0 2.0 21.0 2.0 4.0 7.0 6.0 1.0 \n", "28 29.0 2.0 21.0 3.0 4.0 6.0 7.0 7.0 \n", "29 30.0 2.0 21.0 4.0 4.0 7.0 7.0 7.0 \n", ".. ... ... ... ... ... ... ... ... \n", "50 51.0 1.0 19.0 2.0 6.0 7.0 8.0 6.0 \n", "51 52.0 1.0 21.0 1.0 2.0 9.0 4.0 5.0 \n", "52 53.0 1.0 20.0 1.0 5.0 9.0 8.0 7.0 \n", "53 54.0 1.0 21.0 4.0 5.0 8.0 8.0 7.0 \n", "54 55.0 1.0 19.0 4.0 4.0 7.0 7.0 8.0 \n", "55 56.0 1.0 20.0 2.0 2.0 5.0 7.0 5.0 \n", "56 57.0 1.0 22.0 1.0 3.0 9.0 9.0 9.0 \n", "57 58.0 1.0 19.0 1.0 3.0 9.0 3.0 5.0 \n", "58 59.0 1.0 20.0 2.0 3.0 7.0 7.0 7.0 \n", "59 60.0 1.0 20.0 4.0 8.0 7.0 8.0 8.0 \n", "60 61.0 1.0 18.0 2.0 4.0 6.0 4.0 3.0 \n", "61 62.0 1.0 25.0 2.0 3.0 7.0 8.0 6.0 \n", "62 63.0 1.0 19.0 2.0 2.0 6.0 6.0 7.0 \n", "63 64.0 1.0 21.0 2.0 4.0 8.0 7.0 9.0 \n", "64 65.0 1.0 21.0 2.0 6.0 7.0 8.0 5.0 \n", "65 66.0 1.0 20.0 2.0 1.0 7.0 7.0 7.0 \n", "66 67.0 1.0 22.0 2.0 5.0 7.0 7.0 5.0 \n", "67 68.0 1.0 21.0 2.0 5.0 5.0 5.0 6.0 \n", "68 69.0 1.0 21.0 3.0 1.0 8.0 7.0 5.0 \n", "69 70.0 1.0 21.0 2.0 6.0 7.0 7.0 9.0 \n", "70 71.0 1.0 22.0 4.0 4.0 7.0 7.0 6.0 \n", "71 72.0 1.0 24.0 1.0 2.0 6.0 7.0 5.0 \n", "72 73.0 1.0 20.0 2.0 2.0 6.0 6.0 5.0 \n", "73 74.0 1.0 20.0 2.0 5.0 8.0 8.0 4.0 \n", "74 75.0 1.0 21.0 2.0 6.0 4.0 6.0 2.0 \n", "75 76.0 1.0 20.0 2.0 4.0 5.0 6.0 4.0 \n", "76 77.0 1.0 20.0 3.0 6.0 7.0 5.0 6.0 \n", "77 78.0 1.0 23.0 1.0 5.0 4.0 8.0 8.0 \n", "78 79.0 1.0 23.0 4.0 7.0 9.0 7.0 7.0 \n", "79 80.0 1.0 22.0 2.0 2.0 8.0 5.0 5.0 \n", "\n", " macadamia_nuts cookie ... banana caramel walnut cassis \\\n", "0 3.0 9.0 ... 7.0 9.0 3.0 3.0 \n", "1 9.0 9.0 ... 4.0 7.0 8.0 9.0 \n", "2 3.0 6.0 ... 4.0 6.0 3.0 3.0 \n", "3 5.0 8.0 ... 4.0 9.0 5.0 4.0 \n", "4 5.0 6.0 ... 6.0 6.0 6.0 5.0 \n", "5 5.0 5.0 ... 5.0 9.0 5.0 8.0 \n", "6 3.0 7.0 ... 6.0 7.0 5.0 5.0 \n", "7 8.0 7.0 ... 5.0 6.0 7.0 9.0 \n", "8 8.0 7.0 ... 5.0 7.0 7.0 6.0 \n", "9 5.0 8.0 ... 8.0 7.0 2.0 8.0 \n", "10 9.0 7.0 ... 4.0 9.0 7.0 6.0 \n", "11 5.0 8.0 ... 4.0 4.0 5.0 8.0 \n", "12 8.0 8.0 ... 5.0 9.0 7.0 5.0 \n", "13 6.0 9.0 ... 6.0 7.0 8.0 4.0 \n", "14 5.0 5.0 ... 4.0 4.0 6.0 5.0 \n", "15 4.0 7.0 ... 6.0 6.0 6.0 6.0 \n", "16 2.0 7.0 ... 4.0 6.0 6.0 5.0 \n", "17 5.0 6.0 ... 3.0 5.0 4.0 5.0 \n", "18 5.0 7.0 ... 6.0 6.0 7.0 7.0 \n", "19 8.0 8.0 ... 5.0 7.0 7.0 7.0 \n", "20 6.0 8.0 ... 7.0 6.0 5.0 9.0 \n", "21 7.0 9.0 ... 8.0 8.0 8.0 5.0 \n", "22 8.0 8.0 ... 5.0 8.0 8.0 4.0 \n", "23 5.0 4.0 ... 9.0 9.0 3.0 7.0 \n", "24 9.0 9.0 ... 6.0 8.0 8.0 5.0 \n", "25 7.0 9.0 ... 5.0 4.0 4.0 8.0 \n", "26 7.0 8.0 ... 2.0 8.0 8.0 9.0 \n", "27 7.0 8.0 ... 3.0 6.0 6.0 4.0 \n", "28 8.0 8.0 ... 5.0 9.0 8.0 7.0 \n", "29 7.0 9.0 ... 9.0 9.0 5.0 5.0 \n", ".. ... ... ... ... ... ... ... \n", "50 3.0 5.0 ... 4.0 5.0 2.0 3.0 \n", "51 3.0 7.0 ... 8.0 6.0 2.0 4.0 \n", "52 6.0 9.0 ... 7.0 9.0 7.0 6.0 \n", "53 5.0 7.0 ... 5.0 4.0 4.0 4.0 \n", "54 7.0 6.0 ... 5.0 6.0 5.0 9.0 \n", "55 5.0 5.0 ... 4.0 6.0 5.0 5.0 \n", "56 9.0 9.0 ... 7.0 8.0 6.0 6.0 \n", "57 7.0 6.0 ... 5.0 1.0 6.0 3.0 \n", "58 4.0 6.0 ... 7.0 8.0 3.0 6.0 \n", "59 5.0 7.0 ... 5.0 6.0 4.0 5.0 \n", "60 5.0 9.0 ... 3.0 4.0 3.0 5.0 \n", "61 5.0 9.0 ... 7.0 5.0 5.0 5.0 \n", "62 7.0 7.0 ... 6.0 8.0 7.0 5.0 \n", "63 6.0 9.0 ... 8.0 4.0 5.0 9.0 \n", "64 4.0 6.0 ... 4.0 7.0 7.0 5.0 \n", "65 7.0 8.0 ... 7.0 4.0 6.0 5.0 \n", "66 4.0 8.0 ... 5.0 3.0 3.0 4.0 \n", "67 7.0 7.0 ... 5.0 5.0 9.0 6.0 \n", "68 5.0 7.0 ... 6.0 5.0 4.0 5.0 \n", "69 8.0 9.0 ... 9.0 9.0 8.0 6.0 \n", "70 6.0 8.0 ... 5.0 7.0 5.0 5.0 \n", "71 6.0 4.0 ... 4.0 2.0 6.0 8.0 \n", "72 8.0 8.0 ... 6.0 7.0 8.0 7.0 \n", "73 8.0 9.0 ... 5.0 4.0 8.0 8.0 \n", "74 3.0 6.0 ... 3.0 2.0 3.0 2.0 \n", "75 9.0 6.0 ... 5.0 5.0 5.0 5.0 \n", "76 6.0 8.0 ... 3.0 9.0 5.0 5.0 \n", "77 9.0 9.0 ... 6.0 8.0 9.0 5.0 \n", "78 5.0 4.0 ... 9.0 7.0 4.0 5.0 \n", "79 2.0 5.0 ... 4.0 5.0 5.0 5.0 \n", "\n", " chocolate_chips orange green_tea marron chocolate_mint adzuki-bean \n", "0 9.0 7.0 8.0 8.0 1.0 7.0 \n", "1 9.0 4.0 7.0 7.0 8.0 9.0 \n", "2 6.0 7.0 3.0 7.0 3.0 3.0 \n", "3 8.0 9.0 1.0 2.0 1.0 3.0 \n", "4 9.0 6.0 6.0 6.0 9.0 1.0 \n", "5 8.0 9.0 9.0 5.0 9.0 1.0 \n", "6 9.0 9.0 3.0 5.0 2.0 3.0 \n", "7 5.0 6.0 8.0 5.0 6.0 8.0 \n", "8 8.0 6.0 3.0 3.0 7.0 3.0 \n", "9 8.0 6.0 6.0 2.0 1.0 1.0 \n", "10 6.0 7.0 8.0 6.0 4.0 5.0 \n", "11 9.0 5.0 6.0 4.0 9.0 7.0 \n", "12 9.0 7.0 7.0 6.0 8.0 8.0 \n", "13 9.0 9.0 8.0 9.0 7.0 8.0 \n", "14 8.0 6.0 9.0 4.0 9.0 5.0 \n", "15 4.0 6.0 8.0 5.0 7.0 7.0 \n", "16 7.0 5.0 9.0 6.0 9.0 6.0 \n", "17 7.0 9.0 8.0 4.0 9.0 4.0 \n", "18 8.0 7.0 9.0 5.0 8.0 5.0 \n", "19 7.0 6.0 7.0 7.0 8.0 8.0 \n", "20 9.0 9.0 9.0 7.0 4.0 8.0 \n", "21 8.0 6.0 7.0 8.0 4.0 8.0 \n", "22 9.0 8.0 9.0 5.0 5.0 8.0 \n", "23 7.0 3.0 5.0 9.0 9.0 9.0 \n", "24 8.0 4.0 8.0 9.0 3.0 9.0 \n", "25 9.0 8.0 8.0 6.0 1.0 7.0 \n", "26 8.0 9.0 6.0 3.0 1.0 7.0 \n", "27 8.0 4.0 8.0 7.0 8.0 7.0 \n", "28 9.0 7.0 7.0 5.0 5.0 3.0 \n", "29 9.0 6.0 9.0 7.0 9.0 6.0 \n", ".. ... ... ... ... ... ... \n", "50 8.0 5.0 8.0 3.0 8.0 2.0 \n", "51 9.0 8.0 7.0 5.0 5.0 9.0 \n", "52 9.0 5.0 3.0 9.0 1.0 9.0 \n", "53 7.0 6.0 3.0 4.0 6.0 5.0 \n", "54 9.0 7.0 9.0 7.0 8.0 9.0 \n", "55 9.0 9.0 8.0 5.0 9.0 8.0 \n", "56 8.0 7.0 9.0 7.0 1.0 9.0 \n", "57 8.0 2.0 7.0 1.0 1.0 3.0 \n", "58 7.0 7.0 8.0 6.0 3.0 6.0 \n", "59 5.0 8.0 7.0 6.0 5.0 6.0 \n", "60 8.0 5.0 1.0 3.0 5.0 1.0 \n", "61 9.0 7.0 6.0 6.0 4.0 5.0 \n", "62 9.0 5.0 6.0 6.0 8.0 5.0 \n", "63 9.0 3.0 6.0 5.0 9.0 1.0 \n", "64 6.0 4.0 8.0 5.0 4.0 6.0 \n", "65 7.0 7.0 9.0 5.0 5.0 6.0 \n", "66 8.0 7.0 8.0 5.0 3.0 4.0 \n", "67 9.0 6.0 9.0 7.0 8.0 5.0 \n", "68 7.0 8.0 5.0 5.0 5.0 5.0 \n", "69 9.0 8.0 9.0 7.0 7.0 7.0 \n", "70 9.0 7.0 3.0 7.0 6.0 8.0 \n", "71 4.0 7.0 8.0 3.0 2.0 6.0 \n", "72 8.0 5.0 8.0 8.0 8.0 7.0 \n", "73 9.0 8.0 9.0 6.0 9.0 4.0 \n", "74 6.0 8.0 1.0 1.0 2.0 2.0 \n", "75 7.0 7.0 4.0 4.0 4.0 4.0 \n", "76 9.0 7.0 6.0 5.0 6.0 7.0 \n", "77 9.0 9.0 9.0 4.0 9.0 9.0 \n", "78 8.0 8.0 5.0 5.0 8.0 4.0 \n", "79 5.0 7.0 1.0 1.0 5.0 5.0 \n", "\n", "[80 rows x 26 columns]" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# できあがったMatrixTの中身の確認\n", "pd.DataFrame(matrixT, columns=val_names)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# アイスクリームの種類に関するデータは5行目以降なので、MatrixTを作り直してください。\n", "matrixT = []\n", "val_names = []\n", "ids = []\n", "gender = []\n", "sta = 5\n", "for i, line in enumerate(open(\"icecream_chosa.txt\")):\n", " if i == 0:\n", " for j, val in enumerate(line.split()):\n", " if j < sta:\n", " continue\n", " val_names.append(val)\n", " else:\n", " vec = []\n", " for j, val in enumerate(line.split()):\n", " if j == 0:\n", " ids.append(val)\n", " elif j == 1:\n", " gender.append(int(val))\n", " elif j < sta:\n", " continue\n", " else:\n", " vec.append(float(val))\n", " matrixT.append(vec)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
vanillastrawberrymilk_teamacadamia_nutscookiechocolatemeloncoffeealmondrum_raisin...bananacaramelwalnutcassischocolate_chipsorangegreen_teamarronchocolate_mintadzuki-bean
07.07.08.03.09.09.06.08.03.02.0...7.09.03.03.09.07.08.08.01.07.0
17.08.09.09.09.09.02.07.07.09.0...4.07.08.09.09.04.07.07.08.09.0
27.04.03.03.06.04.07.07.06.03.0...4.06.03.03.06.07.03.07.03.03.0
39.06.06.05.08.06.08.09.06.05.0...4.09.05.04.08.09.01.02.01.03.0
49.05.07.05.06.08.04.04.04.06.0...6.06.06.05.09.06.06.06.09.01.0
55.07.05.05.05.07.05.08.05.08.0...5.09.05.08.08.09.09.05.09.01.0
69.07.06.03.07.09.04.06.05.02.0...6.07.05.05.09.09.03.05.02.03.0
77.07.06.08.07.06.05.08.07.05.0...5.06.07.09.05.06.08.05.06.08.0
87.07.04.08.07.07.04.07.06.03.0...5.07.07.06.08.06.03.03.07.03.0
95.05.09.05.08.08.05.06.03.03.0...8.07.02.08.08.06.06.02.01.01.0
108.01.08.09.07.09.03.09.04.07.0...4.09.07.06.06.07.08.06.04.05.0
119.04.07.05.08.04.05.07.05.06.0...4.04.05.08.09.05.06.04.09.07.0
127.07.06.08.08.09.06.07.07.06.0...5.09.07.05.09.07.07.06.08.08.0
139.06.04.06.09.09.03.06.08.09.0...6.07.08.04.09.09.08.09.07.08.0
148.07.05.05.05.09.04.05.04.03.0...4.04.06.05.08.06.09.04.09.05.0
157.04.07.04.07.03.03.07.05.03.0...6.06.06.06.04.06.08.05.07.07.0
166.04.02.02.07.06.04.05.05.08.0...4.06.06.05.07.05.09.06.09.06.0
178.07.05.05.06.08.03.05.06.03.0...3.05.04.05.07.09.08.04.09.04.0
185.09.08.05.07.05.05.05.09.04.0...6.06.07.07.08.07.09.05.08.05.0
196.06.06.08.08.06.01.05.07.08.0...5.07.07.07.07.06.07.07.08.08.0
209.09.06.06.08.07.07.09.06.06.0...7.06.05.09.09.09.09.07.04.08.0
217.09.09.07.09.08.03.01.06.01.0...8.08.08.05.08.06.07.08.04.08.0
228.08.09.08.08.08.06.06.06.09.0...5.08.08.04.09.08.09.05.05.08.0
237.07.06.05.04.07.04.05.05.08.0...9.09.03.07.07.03.05.09.09.09.0
247.06.07.09.09.08.04.06.08.09.0...6.08.08.05.08.04.08.09.03.09.0
257.05.08.07.09.09.05.09.04.04.0...5.04.04.08.09.08.08.06.01.07.0
267.09.07.07.08.05.03.04.08.09.0...2.08.08.09.08.09.06.03.01.07.0
277.06.01.07.08.08.04.04.04.06.0...3.06.06.04.08.04.08.07.08.07.0
286.07.07.08.08.09.08.09.09.06.0...5.09.08.07.09.07.07.05.05.03.0
297.07.07.07.09.09.06.09.09.09.0...9.09.05.05.09.06.09.07.09.06.0
..................................................................
507.08.06.03.05.06.06.06.03.08.0...4.05.02.03.08.05.08.03.08.02.0
519.04.05.03.07.07.01.05.03.04.0...8.06.02.04.09.08.07.05.05.09.0
529.08.07.06.09.08.06.09.05.01.0...7.09.07.06.09.05.03.09.01.09.0
538.08.07.05.07.07.08.04.04.08.0...5.04.04.04.07.06.03.04.06.05.0
547.07.08.07.06.09.05.09.05.07.0...5.06.05.09.09.07.09.07.08.09.0
555.07.05.05.05.09.05.05.05.05.0...4.06.05.05.09.09.08.05.09.08.0
569.09.09.09.09.06.06.09.08.09.0...7.08.06.06.08.07.09.07.01.09.0
579.03.05.07.06.03.02.04.05.08.0...5.01.06.03.08.02.07.01.01.03.0
587.07.07.04.06.06.07.07.04.06.0...7.08.03.06.07.07.08.06.03.06.0
597.08.08.05.07.04.04.04.03.09.0...5.06.04.05.05.08.07.06.05.06.0
606.04.03.05.09.06.04.03.04.05.0...3.04.03.05.08.05.01.03.05.01.0
617.08.06.05.09.08.07.07.05.04.0...7.05.05.05.09.07.06.06.04.05.0
626.06.07.07.07.09.05.06.07.05.0...6.08.07.05.09.05.06.06.08.05.0
638.07.09.06.09.09.06.09.03.07.0...8.04.05.09.09.03.06.05.09.01.0
647.08.05.04.06.05.05.05.05.09.0...4.07.07.05.06.04.08.05.04.06.0
657.07.07.07.08.06.05.09.05.08.0...7.04.06.05.07.07.09.05.05.06.0
667.07.05.04.08.08.05.05.04.04.0...5.03.03.04.08.07.08.05.03.04.0
675.05.06.07.07.09.06.06.09.06.0...5.05.09.06.09.06.09.07.08.05.0
688.07.05.05.07.07.06.05.05.06.0...6.05.04.05.07.08.05.05.05.05.0
697.07.09.08.09.05.08.08.05.06.0...9.09.08.06.09.08.09.07.07.07.0
707.07.06.06.08.09.06.05.05.05.0...5.07.05.05.09.07.03.07.06.08.0
716.07.05.06.04.08.08.07.06.08.0...4.02.06.08.04.07.08.03.02.06.0
726.06.05.08.08.07.03.06.07.07.0...6.07.08.07.08.05.08.08.08.07.0
738.08.04.08.09.07.03.06.06.03.0...5.04.08.08.09.08.09.06.09.04.0
744.06.02.03.06.06.08.05.04.02.0...3.02.03.02.06.08.01.01.02.02.0
755.06.04.09.06.07.04.03.06.05.0...5.05.05.05.07.07.04.04.04.04.0
767.05.06.06.08.09.04.04.04.05.0...3.09.05.05.09.07.06.05.06.07.0
774.08.08.09.09.09.04.08.09.01.0...6.08.09.05.09.09.09.04.09.09.0
789.07.07.05.04.06.07.07.04.05.0...9.07.04.05.08.08.05.05.08.04.0
798.05.05.02.05.04.07.01.05.05.0...4.05.05.05.05.07.01.01.05.05.0
\n", "

80 rows × 21 columns

\n", "
" ], "text/plain": [ " vanilla strawberry milk_tea macadamia_nuts cookie chocolate melon \\\n", "0 7.0 7.0 8.0 3.0 9.0 9.0 6.0 \n", "1 7.0 8.0 9.0 9.0 9.0 9.0 2.0 \n", "2 7.0 4.0 3.0 3.0 6.0 4.0 7.0 \n", "3 9.0 6.0 6.0 5.0 8.0 6.0 8.0 \n", "4 9.0 5.0 7.0 5.0 6.0 8.0 4.0 \n", "5 5.0 7.0 5.0 5.0 5.0 7.0 5.0 \n", "6 9.0 7.0 6.0 3.0 7.0 9.0 4.0 \n", "7 7.0 7.0 6.0 8.0 7.0 6.0 5.0 \n", "8 7.0 7.0 4.0 8.0 7.0 7.0 4.0 \n", "9 5.0 5.0 9.0 5.0 8.0 8.0 5.0 \n", "10 8.0 1.0 8.0 9.0 7.0 9.0 3.0 \n", "11 9.0 4.0 7.0 5.0 8.0 4.0 5.0 \n", "12 7.0 7.0 6.0 8.0 8.0 9.0 6.0 \n", "13 9.0 6.0 4.0 6.0 9.0 9.0 3.0 \n", "14 8.0 7.0 5.0 5.0 5.0 9.0 4.0 \n", "15 7.0 4.0 7.0 4.0 7.0 3.0 3.0 \n", "16 6.0 4.0 2.0 2.0 7.0 6.0 4.0 \n", "17 8.0 7.0 5.0 5.0 6.0 8.0 3.0 \n", "18 5.0 9.0 8.0 5.0 7.0 5.0 5.0 \n", "19 6.0 6.0 6.0 8.0 8.0 6.0 1.0 \n", "20 9.0 9.0 6.0 6.0 8.0 7.0 7.0 \n", "21 7.0 9.0 9.0 7.0 9.0 8.0 3.0 \n", "22 8.0 8.0 9.0 8.0 8.0 8.0 6.0 \n", "23 7.0 7.0 6.0 5.0 4.0 7.0 4.0 \n", "24 7.0 6.0 7.0 9.0 9.0 8.0 4.0 \n", "25 7.0 5.0 8.0 7.0 9.0 9.0 5.0 \n", "26 7.0 9.0 7.0 7.0 8.0 5.0 3.0 \n", "27 7.0 6.0 1.0 7.0 8.0 8.0 4.0 \n", "28 6.0 7.0 7.0 8.0 8.0 9.0 8.0 \n", "29 7.0 7.0 7.0 7.0 9.0 9.0 6.0 \n", ".. ... ... ... ... ... ... ... \n", "50 7.0 8.0 6.0 3.0 5.0 6.0 6.0 \n", "51 9.0 4.0 5.0 3.0 7.0 7.0 1.0 \n", "52 9.0 8.0 7.0 6.0 9.0 8.0 6.0 \n", "53 8.0 8.0 7.0 5.0 7.0 7.0 8.0 \n", "54 7.0 7.0 8.0 7.0 6.0 9.0 5.0 \n", "55 5.0 7.0 5.0 5.0 5.0 9.0 5.0 \n", "56 9.0 9.0 9.0 9.0 9.0 6.0 6.0 \n", "57 9.0 3.0 5.0 7.0 6.0 3.0 2.0 \n", "58 7.0 7.0 7.0 4.0 6.0 6.0 7.0 \n", "59 7.0 8.0 8.0 5.0 7.0 4.0 4.0 \n", "60 6.0 4.0 3.0 5.0 9.0 6.0 4.0 \n", "61 7.0 8.0 6.0 5.0 9.0 8.0 7.0 \n", "62 6.0 6.0 7.0 7.0 7.0 9.0 5.0 \n", "63 8.0 7.0 9.0 6.0 9.0 9.0 6.0 \n", "64 7.0 8.0 5.0 4.0 6.0 5.0 5.0 \n", "65 7.0 7.0 7.0 7.0 8.0 6.0 5.0 \n", "66 7.0 7.0 5.0 4.0 8.0 8.0 5.0 \n", "67 5.0 5.0 6.0 7.0 7.0 9.0 6.0 \n", "68 8.0 7.0 5.0 5.0 7.0 7.0 6.0 \n", "69 7.0 7.0 9.0 8.0 9.0 5.0 8.0 \n", "70 7.0 7.0 6.0 6.0 8.0 9.0 6.0 \n", "71 6.0 7.0 5.0 6.0 4.0 8.0 8.0 \n", "72 6.0 6.0 5.0 8.0 8.0 7.0 3.0 \n", "73 8.0 8.0 4.0 8.0 9.0 7.0 3.0 \n", "74 4.0 6.0 2.0 3.0 6.0 6.0 8.0 \n", "75 5.0 6.0 4.0 9.0 6.0 7.0 4.0 \n", "76 7.0 5.0 6.0 6.0 8.0 9.0 4.0 \n", "77 4.0 8.0 8.0 9.0 9.0 9.0 4.0 \n", "78 9.0 7.0 7.0 5.0 4.0 6.0 7.0 \n", "79 8.0 5.0 5.0 2.0 5.0 4.0 7.0 \n", "\n", " coffee almond rum_raisin ... banana caramel walnut cassis \\\n", "0 8.0 3.0 2.0 ... 7.0 9.0 3.0 3.0 \n", "1 7.0 7.0 9.0 ... 4.0 7.0 8.0 9.0 \n", "2 7.0 6.0 3.0 ... 4.0 6.0 3.0 3.0 \n", "3 9.0 6.0 5.0 ... 4.0 9.0 5.0 4.0 \n", "4 4.0 4.0 6.0 ... 6.0 6.0 6.0 5.0 \n", "5 8.0 5.0 8.0 ... 5.0 9.0 5.0 8.0 \n", "6 6.0 5.0 2.0 ... 6.0 7.0 5.0 5.0 \n", "7 8.0 7.0 5.0 ... 5.0 6.0 7.0 9.0 \n", "8 7.0 6.0 3.0 ... 5.0 7.0 7.0 6.0 \n", "9 6.0 3.0 3.0 ... 8.0 7.0 2.0 8.0 \n", "10 9.0 4.0 7.0 ... 4.0 9.0 7.0 6.0 \n", "11 7.0 5.0 6.0 ... 4.0 4.0 5.0 8.0 \n", "12 7.0 7.0 6.0 ... 5.0 9.0 7.0 5.0 \n", "13 6.0 8.0 9.0 ... 6.0 7.0 8.0 4.0 \n", "14 5.0 4.0 3.0 ... 4.0 4.0 6.0 5.0 \n", "15 7.0 5.0 3.0 ... 6.0 6.0 6.0 6.0 \n", "16 5.0 5.0 8.0 ... 4.0 6.0 6.0 5.0 \n", "17 5.0 6.0 3.0 ... 3.0 5.0 4.0 5.0 \n", "18 5.0 9.0 4.0 ... 6.0 6.0 7.0 7.0 \n", "19 5.0 7.0 8.0 ... 5.0 7.0 7.0 7.0 \n", "20 9.0 6.0 6.0 ... 7.0 6.0 5.0 9.0 \n", "21 1.0 6.0 1.0 ... 8.0 8.0 8.0 5.0 \n", "22 6.0 6.0 9.0 ... 5.0 8.0 8.0 4.0 \n", "23 5.0 5.0 8.0 ... 9.0 9.0 3.0 7.0 \n", "24 6.0 8.0 9.0 ... 6.0 8.0 8.0 5.0 \n", "25 9.0 4.0 4.0 ... 5.0 4.0 4.0 8.0 \n", "26 4.0 8.0 9.0 ... 2.0 8.0 8.0 9.0 \n", "27 4.0 4.0 6.0 ... 3.0 6.0 6.0 4.0 \n", "28 9.0 9.0 6.0 ... 5.0 9.0 8.0 7.0 \n", "29 9.0 9.0 9.0 ... 9.0 9.0 5.0 5.0 \n", ".. ... ... ... ... ... ... ... ... \n", "50 6.0 3.0 8.0 ... 4.0 5.0 2.0 3.0 \n", "51 5.0 3.0 4.0 ... 8.0 6.0 2.0 4.0 \n", "52 9.0 5.0 1.0 ... 7.0 9.0 7.0 6.0 \n", "53 4.0 4.0 8.0 ... 5.0 4.0 4.0 4.0 \n", "54 9.0 5.0 7.0 ... 5.0 6.0 5.0 9.0 \n", "55 5.0 5.0 5.0 ... 4.0 6.0 5.0 5.0 \n", "56 9.0 8.0 9.0 ... 7.0 8.0 6.0 6.0 \n", "57 4.0 5.0 8.0 ... 5.0 1.0 6.0 3.0 \n", "58 7.0 4.0 6.0 ... 7.0 8.0 3.0 6.0 \n", "59 4.0 3.0 9.0 ... 5.0 6.0 4.0 5.0 \n", "60 3.0 4.0 5.0 ... 3.0 4.0 3.0 5.0 \n", "61 7.0 5.0 4.0 ... 7.0 5.0 5.0 5.0 \n", "62 6.0 7.0 5.0 ... 6.0 8.0 7.0 5.0 \n", "63 9.0 3.0 7.0 ... 8.0 4.0 5.0 9.0 \n", "64 5.0 5.0 9.0 ... 4.0 7.0 7.0 5.0 \n", "65 9.0 5.0 8.0 ... 7.0 4.0 6.0 5.0 \n", "66 5.0 4.0 4.0 ... 5.0 3.0 3.0 4.0 \n", "67 6.0 9.0 6.0 ... 5.0 5.0 9.0 6.0 \n", "68 5.0 5.0 6.0 ... 6.0 5.0 4.0 5.0 \n", "69 8.0 5.0 6.0 ... 9.0 9.0 8.0 6.0 \n", "70 5.0 5.0 5.0 ... 5.0 7.0 5.0 5.0 \n", "71 7.0 6.0 8.0 ... 4.0 2.0 6.0 8.0 \n", "72 6.0 7.0 7.0 ... 6.0 7.0 8.0 7.0 \n", "73 6.0 6.0 3.0 ... 5.0 4.0 8.0 8.0 \n", "74 5.0 4.0 2.0 ... 3.0 2.0 3.0 2.0 \n", "75 3.0 6.0 5.0 ... 5.0 5.0 5.0 5.0 \n", "76 4.0 4.0 5.0 ... 3.0 9.0 5.0 5.0 \n", "77 8.0 9.0 1.0 ... 6.0 8.0 9.0 5.0 \n", "78 7.0 4.0 5.0 ... 9.0 7.0 4.0 5.0 \n", "79 1.0 5.0 5.0 ... 4.0 5.0 5.0 5.0 \n", "\n", " chocolate_chips orange green_tea marron chocolate_mint adzuki-bean \n", "0 9.0 7.0 8.0 8.0 1.0 7.0 \n", "1 9.0 4.0 7.0 7.0 8.0 9.0 \n", "2 6.0 7.0 3.0 7.0 3.0 3.0 \n", "3 8.0 9.0 1.0 2.0 1.0 3.0 \n", "4 9.0 6.0 6.0 6.0 9.0 1.0 \n", "5 8.0 9.0 9.0 5.0 9.0 1.0 \n", "6 9.0 9.0 3.0 5.0 2.0 3.0 \n", "7 5.0 6.0 8.0 5.0 6.0 8.0 \n", "8 8.0 6.0 3.0 3.0 7.0 3.0 \n", "9 8.0 6.0 6.0 2.0 1.0 1.0 \n", "10 6.0 7.0 8.0 6.0 4.0 5.0 \n", "11 9.0 5.0 6.0 4.0 9.0 7.0 \n", "12 9.0 7.0 7.0 6.0 8.0 8.0 \n", "13 9.0 9.0 8.0 9.0 7.0 8.0 \n", "14 8.0 6.0 9.0 4.0 9.0 5.0 \n", "15 4.0 6.0 8.0 5.0 7.0 7.0 \n", "16 7.0 5.0 9.0 6.0 9.0 6.0 \n", "17 7.0 9.0 8.0 4.0 9.0 4.0 \n", "18 8.0 7.0 9.0 5.0 8.0 5.0 \n", "19 7.0 6.0 7.0 7.0 8.0 8.0 \n", "20 9.0 9.0 9.0 7.0 4.0 8.0 \n", "21 8.0 6.0 7.0 8.0 4.0 8.0 \n", "22 9.0 8.0 9.0 5.0 5.0 8.0 \n", "23 7.0 3.0 5.0 9.0 9.0 9.0 \n", "24 8.0 4.0 8.0 9.0 3.0 9.0 \n", "25 9.0 8.0 8.0 6.0 1.0 7.0 \n", "26 8.0 9.0 6.0 3.0 1.0 7.0 \n", "27 8.0 4.0 8.0 7.0 8.0 7.0 \n", "28 9.0 7.0 7.0 5.0 5.0 3.0 \n", "29 9.0 6.0 9.0 7.0 9.0 6.0 \n", ".. ... ... ... ... ... ... \n", "50 8.0 5.0 8.0 3.0 8.0 2.0 \n", "51 9.0 8.0 7.0 5.0 5.0 9.0 \n", "52 9.0 5.0 3.0 9.0 1.0 9.0 \n", "53 7.0 6.0 3.0 4.0 6.0 5.0 \n", "54 9.0 7.0 9.0 7.0 8.0 9.0 \n", "55 9.0 9.0 8.0 5.0 9.0 8.0 \n", "56 8.0 7.0 9.0 7.0 1.0 9.0 \n", "57 8.0 2.0 7.0 1.0 1.0 3.0 \n", "58 7.0 7.0 8.0 6.0 3.0 6.0 \n", "59 5.0 8.0 7.0 6.0 5.0 6.0 \n", "60 8.0 5.0 1.0 3.0 5.0 1.0 \n", "61 9.0 7.0 6.0 6.0 4.0 5.0 \n", "62 9.0 5.0 6.0 6.0 8.0 5.0 \n", "63 9.0 3.0 6.0 5.0 9.0 1.0 \n", "64 6.0 4.0 8.0 5.0 4.0 6.0 \n", "65 7.0 7.0 9.0 5.0 5.0 6.0 \n", "66 8.0 7.0 8.0 5.0 3.0 4.0 \n", "67 9.0 6.0 9.0 7.0 8.0 5.0 \n", "68 7.0 8.0 5.0 5.0 5.0 5.0 \n", "69 9.0 8.0 9.0 7.0 7.0 7.0 \n", "70 9.0 7.0 3.0 7.0 6.0 8.0 \n", "71 4.0 7.0 8.0 3.0 2.0 6.0 \n", "72 8.0 5.0 8.0 8.0 8.0 7.0 \n", "73 9.0 8.0 9.0 6.0 9.0 4.0 \n", "74 6.0 8.0 1.0 1.0 2.0 2.0 \n", "75 7.0 7.0 4.0 4.0 4.0 4.0 \n", "76 9.0 7.0 6.0 5.0 6.0 7.0 \n", "77 9.0 9.0 9.0 4.0 9.0 9.0 \n", "78 8.0 8.0 5.0 5.0 8.0 4.0 \n", "79 5.0 7.0 1.0 1.0 5.0 5.0 \n", "\n", "[80 rows x 21 columns]" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# できあがったMatrixTの中身の確認\n", "pd.DataFrame(matrixT, columns=val_names)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__課題9.4__:作成した MatrixT をもとに、アイスクリームの好みに関する相関係数を作成してください。また、その相関行列をカラーマップで図示してください。" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...70717273747576777879
01.0000000.0113810.4955910.413890-0.070105-0.1368150.690602-0.1096660.0175120.580423...0.544725-0.038752-0.229693-8.804017e-020.3291030.0270560.5153840.1222530.127640-0.042397
10.0113811.000000-0.429860-0.1797890.046072-0.1068250.0044570.3892080.2258750.037866...0.299920-0.0251660.5855082.277762e-01-0.3444590.2408270.4550670.175518-0.478230-0.177101
20.495591-0.4298601.0000000.666794-0.023783-0.0044800.574312-0.2690970.1818910.150580...0.353737-0.106153-0.374887-7.355253e-020.5626160.0066640.133937-0.1731510.2522520.210168
30.413890-0.1797890.6667941.0000000.0227800.0557890.693344-0.1084060.4846470.465862...0.3989890.109995-0.486135-1.263707e-010.6993020.2751180.315077-0.0158130.2963800.477380
4-0.0701050.046072-0.0237830.0227801.0000000.5175170.254505-0.4218600.3333250.193671...0.092018-0.3717560.2656904.695911e-01-0.0307440.1178560.2935130.0273890.5636060.111392
5-0.136815-0.106825-0.0044800.0557890.5175171.0000000.041814-0.1115590.2311470.210932...-0.269976-0.0275420.1427693.448676e-010.022863-0.0015530.1054720.0670780.382004-0.143398
60.6906020.0044570.5743120.6933440.2545050.0418141.000000-0.1329540.4989640.608964...0.6280020.010507-0.2556712.002099e-010.5942600.3814630.5233240.1277720.3470210.372045
7-0.1096660.389208-0.269097-0.108406-0.421860-0.111559-0.1329541.0000000.193952-0.001549...-0.2397120.3683700.2210483.509571e-01-0.1857790.026056-0.0220490.327307-0.439491-0.210063
80.0175120.2258750.1818910.4846470.3333250.2311470.4989640.1939521.0000000.273518...0.351357-0.1887730.1921685.533842e-010.4106370.5644320.3616190.4397250.2313580.174258
90.5804230.0378660.1505800.4658620.1936710.2109320.608964-0.0015490.2735181.000000...0.2035580.122318-0.2702585.984268e-020.3240010.2772200.3235400.0784320.2748790.064651
100.3163080.3602660.0721040.2636580.1405740.1284610.2480540.2269270.1714070.349130...0.0854160.0744940.1995512.838889e-02-0.1572730.1705000.4897770.075490-0.148360-0.245010
11-0.2331460.249345-0.101409-0.0150560.4057080.147665-0.1183010.1951150.139514-0.028784...-0.012865-0.1825620.2347553.860450e-01-0.119018-0.2354560.1391390.0721960.2150490.170200
120.3397430.4089030.1272570.2620640.1436070.0676350.3216510.0507370.5334300.029582...0.630606-0.2444610.3503482.661770e-010.2326900.4285980.8165130.570403-0.0799850.034148
130.2860750.3355380.2504520.0521300.149505-0.0415190.352102-0.1149690.105604-0.170181...0.429988-0.0845920.4396642.578992e-010.0606230.3121190.5226280.059502-0.2253320.033838
14-0.0186030.107080-0.225151-0.2000550.6356800.3989990.1236900.1044920.294512-0.006095...0.069886-0.0210340.3133817.013962e-010.0505190.0589340.3196290.4609150.345603-0.041135
150.1105690.041797-0.074796-0.1808940.006937-0.004356-0.0698040.450200-0.085751-0.003660...-0.296513-0.2955760.1787552.659591e-01-0.394390-0.4827600.0026050.3347670.049055-0.121640
160.0592200.2463020.019735-0.2599170.1861000.286797-0.067533-0.047718-0.091210-0.242421...0.067284-0.0736570.4254162.394208e-01-0.154415-0.1957710.345690-0.073867-0.179052-0.003851
170.0615990.0824010.0638980.0404880.5519370.5004290.3333330.1405920.4078400.080342...0.179265-0.0474800.1943997.196625e-010.2290760.2495380.4388680.4960760.3374110.122782
18-0.0505970.077252-0.189067-0.1816770.1817740.2870270.0569190.1644090.1678120.124165...-0.205029-0.1338980.1703375.000669e-010.0020750.042271-0.0169910.5472220.0160000.021424
19-0.0815220.793626-0.334841-0.312978-0.005712-0.045058-0.0808170.3195690.143956-0.172342...0.182175-0.2332100.7163732.994685e-01-0.4497420.3040970.4181650.202481-0.482127-0.164492
200.6364280.0618730.4125260.342274-0.279599-0.0530480.5616560.3230210.0575830.447293...0.2964920.446955-0.2661201.568838e-010.4027820.1290340.238060-0.1032070.0234250.089917
210.5337620.295168-0.041501-0.0177070.035927-0.4030220.4765150.0380430.1703140.299853...0.485795-0.2849370.1831642.209621e-01-0.0089840.3660890.4708830.384338-0.1270220.082465
220.4391370.402610-0.0394010.314311-0.001392-0.0970410.320431-0.0011580.0604970.226978...0.3489850.232317-0.013716-3.296485e-020.1819050.3608560.5958700.151449-0.1648910.186739
23-0.0804720.141680-0.252007-0.4129780.2079600.047504-0.226635-0.272490-0.232447-0.198672...0.105353-0.4868730.272258-2.338457e-01-0.554904-0.2850180.027444-0.2436930.278473-0.146648
240.3653600.587777-0.014129-0.001353-0.267340-0.4542640.1054880.113391-0.0830160.034573...0.2912590.0248150.397258-1.536747e-01-0.2339150.2839850.368032-0.039940-0.621889-0.253676
250.6992580.2951710.2730770.354027-0.170759-0.1603980.5707220.3150010.1107880.637331...0.4049680.391800-0.1304901.415886e-010.3441120.2745690.4296700.103488-0.147988-0.093074
260.1636110.4682720.0105330.389432-0.256617-0.0564420.3648060.3402980.1992510.241243...0.2388470.3607460.0078975.287587e-020.1743840.4653990.3932120.014336-0.3960710.352194
270.0076700.350740-0.086905-0.2538810.3152590.124857-0.0811040.0536500.205493-0.311887...0.314659-0.1907930.6923155.210868e-01-0.0903340.2208530.5043900.203201-0.179435-0.194098
280.2252040.0559190.3348410.6082610.1042380.3315480.4346160.0617750.5783060.496120...0.0924610.187582-0.0638461.497342e-010.4713450.3951260.2549200.274407-0.075727-0.022533
290.1277020.0622910.057878-0.0036960.3722030.395544-0.020006-0.3017240.1022970.160507...-0.039771-0.3388460.3254674.842430e-02-0.087508-0.0200570.1397430.1595690.210887-0.341368
..................................................................
500.122120-0.0119880.0321790.1171240.5452030.5885240.100105-0.3112260.0553380.195276...0.0102050.064592-0.1206361.653846e-010.197045-0.1059390.183778-0.1179160.5205890.100480
510.5826500.1390730.1744800.1127100.216280-0.0321420.501126-0.0392440.0348900.301043...0.474210-0.1995470.1262571.969037e-010.0469320.0899940.5691680.1712030.3246720.118782
520.7558190.1756220.4884900.481304-0.251784-0.4779160.6737340.1152830.2907880.368454...0.631062-0.101995-0.140868-8.002520e-020.2870340.1302180.3773350.082258-0.0448080.061332
530.1641590.0485910.1587840.4100920.241251-0.1222100.338711-0.4119310.1145870.192601...0.5197590.184259-0.458137-1.375925e-010.5498070.2377880.252774-0.3360420.3173770.626392
540.2630700.537325-0.211538-0.1915650.0475650.2105780.0797660.371986-0.0220470.190108...0.2226110.2364310.1910482.252546e-01-0.139564-0.0599790.3991330.153017-0.016817-0.285228
550.0732220.074746-0.146411-0.1604920.3198820.4093300.099527-0.0736470.109572-0.101904...0.322454-0.0428580.2165014.083203e-010.1770920.1550320.5007920.5211720.2205010.035981
560.5668250.2988980.2366830.370406-0.460885-0.3691730.3394400.249301-0.0672620.338457...0.2010150.334671-0.174451-2.450114e-010.1187270.2196490.205076-0.140278-0.299935-0.023486
570.0640360.361799-0.0781390.1667940.132526-0.1833480.1412170.1424170.1311750.213052...-0.0513330.2842800.1632051.681086e-01-0.0025320.3094680.115063-0.149592-0.1220190.075520
580.700372-0.2860240.3507860.369591-0.0188260.2097120.405613-0.144369-0.2674760.579790...0.1018040.151119-0.432974-2.547258e-010.182376-0.2018400.197294-0.2148110.3935700.020667
590.0950990.103596-0.156417-0.0016650.1826940.192333-0.009011-0.135903-0.3462000.066342...-0.0082680.015262-0.058639-2.908180e-02-0.135984-0.0511940.147675-0.2401850.1570470.146976
600.1206510.2592090.3233900.4956020.4544700.1660980.506058-0.1935910.6151150.391340...0.568748-0.1290870.1184793.812537e-010.5100600.5679840.509844-0.0246240.1242590.393969
610.764145-0.0457530.5158130.5205270.109355-0.0836930.771746-0.1478430.3300000.611246...0.5813180.113243-0.2520742.466059e-010.7144250.3000480.3643820.1330800.2282180.146203
620.2814550.4347980.0223010.1260280.4550680.1324920.390819-0.1835660.5944460.279397...0.477408-0.4112720.3720412.798790e-010.0809240.3864180.6057580.4669700.055255-0.058030
630.0929250.255560-0.0837540.0848060.5534010.3094200.215881-0.0738640.3412160.538699...0.049329-0.0105070.0201852.903043e-010.099043-0.0186580.048332-0.1453090.348765-0.066937
640.1062920.304024-0.1382060.035931-0.0293000.098898-0.0348050.060943-0.192401-0.106285...-0.0845310.2600750.151734-8.259374e-02-0.167913-0.1402620.162261-0.285257-0.2474700.082199
650.3096980.186028-0.0205210.129727-0.0431430.0549810.1212920.215363-0.0294080.299272...-0.1301620.396462-0.0076931.888602e-010.1559080.056891-0.0028580.023633-0.011963-0.258977
660.6861730.0619570.3378090.2917040.2127400.0684110.643459-0.0363610.1318260.534617...0.4334810.296655-0.1032613.869879e-010.5374640.3223810.4481090.1153520.1363410.068968
67-0.2099250.197177-0.174347-0.2946260.3588440.229935-0.112348-0.0243450.165974-0.131032...-0.108612-0.0054680.5450614.949144e-01-0.0317740.1985190.1205610.445254-0.302202-0.311086
680.417824-0.1443610.4633150.5438260.3114920.0951860.699688-0.2686880.2680010.380099...0.5596980.184941-0.3300132.184864e-010.6935000.4276700.407172-0.1314100.4493560.532649
690.537896-0.0993850.1846890.226039-0.043143-0.0454190.225561-0.0802330.0735210.425810...0.074843-0.270315-0.142322-3.049846e-170.090753-0.0177790.2172430.1589860.176460-0.034708
700.5447250.2999200.3537370.3989890.092018-0.2699760.628002-0.2397120.3513570.203558...1.000000-0.203524-0.0297233.571907e-020.4668240.4269350.7382560.1404770.0720000.354692
71-0.038752-0.025166-0.1061530.109995-0.371756-0.0275420.0105070.368370-0.1887730.122318...-0.2035241.000000-0.386195-8.881371e-020.3217230.111196-0.192897-0.226316-0.2658250.079099
72-0.2296930.585508-0.374887-0.4861350.2656900.142769-0.2556710.2210480.192168-0.270258...-0.029723-0.3861951.0000005.368296e-01-0.5346520.1773840.2450310.325315-0.394026-0.498062
73-0.0880400.227776-0.073553-0.1263710.4695910.3448680.2002100.3509570.5533840.059843...0.035719-0.0888140.5368301.000000e+000.1094690.3568480.2330840.4918790.056280-0.125600
740.329103-0.3444590.5626160.699302-0.0307440.0228630.594260-0.1857790.4106370.324001...0.4668240.321723-0.5346521.094695e-011.0000000.3990110.1840770.1273960.2498110.459620
750.0270560.2408270.0066640.2751180.117856-0.0015530.3814630.0260560.5644320.277220...0.4269350.1111960.1773843.568481e-010.3990111.0000000.4168070.270717-0.0845030.150867
760.5153840.4550670.1339370.3150770.2935130.1054720.523324-0.0220490.3616190.323540...0.738256-0.1928970.2450312.330844e-010.1840770.4168071.0000000.327008-0.0070270.232111
770.1222530.175518-0.173151-0.0158130.0273890.0670780.1277720.3273070.4397250.078432...0.140477-0.2263160.3253154.918785e-010.1273960.2707170.3270081.000000-0.077469-0.191747
780.127640-0.4782300.2522520.2963800.5636060.3820040.347021-0.4394910.2313580.274879...0.072000-0.265825-0.3940265.627984e-020.249811-0.084503-0.007027-0.0774691.0000000.282244
79-0.042397-0.1771010.2101680.4773800.111392-0.1433980.372045-0.2100630.1742580.064651...0.3546920.079099-0.498062-1.255995e-010.4596200.1508670.232111-0.1917470.2822441.000000
\n", "

80 rows × 80 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 6 \\\n", "0 1.000000 0.011381 0.495591 0.413890 -0.070105 -0.136815 0.690602 \n", "1 0.011381 1.000000 -0.429860 -0.179789 0.046072 -0.106825 0.004457 \n", "2 0.495591 -0.429860 1.000000 0.666794 -0.023783 -0.004480 0.574312 \n", "3 0.413890 -0.179789 0.666794 1.000000 0.022780 0.055789 0.693344 \n", "4 -0.070105 0.046072 -0.023783 0.022780 1.000000 0.517517 0.254505 \n", "5 -0.136815 -0.106825 -0.004480 0.055789 0.517517 1.000000 0.041814 \n", "6 0.690602 0.004457 0.574312 0.693344 0.254505 0.041814 1.000000 \n", "7 -0.109666 0.389208 -0.269097 -0.108406 -0.421860 -0.111559 -0.132954 \n", "8 0.017512 0.225875 0.181891 0.484647 0.333325 0.231147 0.498964 \n", "9 0.580423 0.037866 0.150580 0.465862 0.193671 0.210932 0.608964 \n", "10 0.316308 0.360266 0.072104 0.263658 0.140574 0.128461 0.248054 \n", "11 -0.233146 0.249345 -0.101409 -0.015056 0.405708 0.147665 -0.118301 \n", "12 0.339743 0.408903 0.127257 0.262064 0.143607 0.067635 0.321651 \n", "13 0.286075 0.335538 0.250452 0.052130 0.149505 -0.041519 0.352102 \n", "14 -0.018603 0.107080 -0.225151 -0.200055 0.635680 0.398999 0.123690 \n", "15 0.110569 0.041797 -0.074796 -0.180894 0.006937 -0.004356 -0.069804 \n", "16 0.059220 0.246302 0.019735 -0.259917 0.186100 0.286797 -0.067533 \n", "17 0.061599 0.082401 0.063898 0.040488 0.551937 0.500429 0.333333 \n", "18 -0.050597 0.077252 -0.189067 -0.181677 0.181774 0.287027 0.056919 \n", "19 -0.081522 0.793626 -0.334841 -0.312978 -0.005712 -0.045058 -0.080817 \n", "20 0.636428 0.061873 0.412526 0.342274 -0.279599 -0.053048 0.561656 \n", "21 0.533762 0.295168 -0.041501 -0.017707 0.035927 -0.403022 0.476515 \n", "22 0.439137 0.402610 -0.039401 0.314311 -0.001392 -0.097041 0.320431 \n", "23 -0.080472 0.141680 -0.252007 -0.412978 0.207960 0.047504 -0.226635 \n", "24 0.365360 0.587777 -0.014129 -0.001353 -0.267340 -0.454264 0.105488 \n", "25 0.699258 0.295171 0.273077 0.354027 -0.170759 -0.160398 0.570722 \n", "26 0.163611 0.468272 0.010533 0.389432 -0.256617 -0.056442 0.364806 \n", "27 0.007670 0.350740 -0.086905 -0.253881 0.315259 0.124857 -0.081104 \n", "28 0.225204 0.055919 0.334841 0.608261 0.104238 0.331548 0.434616 \n", "29 0.127702 0.062291 0.057878 -0.003696 0.372203 0.395544 -0.020006 \n", ".. ... ... ... ... ... ... ... \n", "50 0.122120 -0.011988 0.032179 0.117124 0.545203 0.588524 0.100105 \n", "51 0.582650 0.139073 0.174480 0.112710 0.216280 -0.032142 0.501126 \n", "52 0.755819 0.175622 0.488490 0.481304 -0.251784 -0.477916 0.673734 \n", "53 0.164159 0.048591 0.158784 0.410092 0.241251 -0.122210 0.338711 \n", "54 0.263070 0.537325 -0.211538 -0.191565 0.047565 0.210578 0.079766 \n", "55 0.073222 0.074746 -0.146411 -0.160492 0.319882 0.409330 0.099527 \n", "56 0.566825 0.298898 0.236683 0.370406 -0.460885 -0.369173 0.339440 \n", "57 0.064036 0.361799 -0.078139 0.166794 0.132526 -0.183348 0.141217 \n", "58 0.700372 -0.286024 0.350786 0.369591 -0.018826 0.209712 0.405613 \n", "59 0.095099 0.103596 -0.156417 -0.001665 0.182694 0.192333 -0.009011 \n", "60 0.120651 0.259209 0.323390 0.495602 0.454470 0.166098 0.506058 \n", "61 0.764145 -0.045753 0.515813 0.520527 0.109355 -0.083693 0.771746 \n", "62 0.281455 0.434798 0.022301 0.126028 0.455068 0.132492 0.390819 \n", "63 0.092925 0.255560 -0.083754 0.084806 0.553401 0.309420 0.215881 \n", "64 0.106292 0.304024 -0.138206 0.035931 -0.029300 0.098898 -0.034805 \n", "65 0.309698 0.186028 -0.020521 0.129727 -0.043143 0.054981 0.121292 \n", "66 0.686173 0.061957 0.337809 0.291704 0.212740 0.068411 0.643459 \n", "67 -0.209925 0.197177 -0.174347 -0.294626 0.358844 0.229935 -0.112348 \n", "68 0.417824 -0.144361 0.463315 0.543826 0.311492 0.095186 0.699688 \n", "69 0.537896 -0.099385 0.184689 0.226039 -0.043143 -0.045419 0.225561 \n", "70 0.544725 0.299920 0.353737 0.398989 0.092018 -0.269976 0.628002 \n", "71 -0.038752 -0.025166 -0.106153 0.109995 -0.371756 -0.027542 0.010507 \n", "72 -0.229693 0.585508 -0.374887 -0.486135 0.265690 0.142769 -0.255671 \n", "73 -0.088040 0.227776 -0.073553 -0.126371 0.469591 0.344868 0.200210 \n", "74 0.329103 -0.344459 0.562616 0.699302 -0.030744 0.022863 0.594260 \n", "75 0.027056 0.240827 0.006664 0.275118 0.117856 -0.001553 0.381463 \n", "76 0.515384 0.455067 0.133937 0.315077 0.293513 0.105472 0.523324 \n", "77 0.122253 0.175518 -0.173151 -0.015813 0.027389 0.067078 0.127772 \n", "78 0.127640 -0.478230 0.252252 0.296380 0.563606 0.382004 0.347021 \n", "79 -0.042397 -0.177101 0.210168 0.477380 0.111392 -0.143398 0.372045 \n", "\n", " 7 8 9 ... 70 71 72 \\\n", "0 -0.109666 0.017512 0.580423 ... 0.544725 -0.038752 -0.229693 \n", "1 0.389208 0.225875 0.037866 ... 0.299920 -0.025166 0.585508 \n", "2 -0.269097 0.181891 0.150580 ... 0.353737 -0.106153 -0.374887 \n", "3 -0.108406 0.484647 0.465862 ... 0.398989 0.109995 -0.486135 \n", "4 -0.421860 0.333325 0.193671 ... 0.092018 -0.371756 0.265690 \n", "5 -0.111559 0.231147 0.210932 ... -0.269976 -0.027542 0.142769 \n", "6 -0.132954 0.498964 0.608964 ... 0.628002 0.010507 -0.255671 \n", "7 1.000000 0.193952 -0.001549 ... -0.239712 0.368370 0.221048 \n", "8 0.193952 1.000000 0.273518 ... 0.351357 -0.188773 0.192168 \n", "9 -0.001549 0.273518 1.000000 ... 0.203558 0.122318 -0.270258 \n", "10 0.226927 0.171407 0.349130 ... 0.085416 0.074494 0.199551 \n", "11 0.195115 0.139514 -0.028784 ... -0.012865 -0.182562 0.234755 \n", "12 0.050737 0.533430 0.029582 ... 0.630606 -0.244461 0.350348 \n", "13 -0.114969 0.105604 -0.170181 ... 0.429988 -0.084592 0.439664 \n", "14 0.104492 0.294512 -0.006095 ... 0.069886 -0.021034 0.313381 \n", "15 0.450200 -0.085751 -0.003660 ... -0.296513 -0.295576 0.178755 \n", "16 -0.047718 -0.091210 -0.242421 ... 0.067284 -0.073657 0.425416 \n", "17 0.140592 0.407840 0.080342 ... 0.179265 -0.047480 0.194399 \n", "18 0.164409 0.167812 0.124165 ... -0.205029 -0.133898 0.170337 \n", "19 0.319569 0.143956 -0.172342 ... 0.182175 -0.233210 0.716373 \n", "20 0.323021 0.057583 0.447293 ... 0.296492 0.446955 -0.266120 \n", "21 0.038043 0.170314 0.299853 ... 0.485795 -0.284937 0.183164 \n", "22 -0.001158 0.060497 0.226978 ... 0.348985 0.232317 -0.013716 \n", "23 -0.272490 -0.232447 -0.198672 ... 0.105353 -0.486873 0.272258 \n", "24 0.113391 -0.083016 0.034573 ... 0.291259 0.024815 0.397258 \n", "25 0.315001 0.110788 0.637331 ... 0.404968 0.391800 -0.130490 \n", "26 0.340298 0.199251 0.241243 ... 0.238847 0.360746 0.007897 \n", "27 0.053650 0.205493 -0.311887 ... 0.314659 -0.190793 0.692315 \n", "28 0.061775 0.578306 0.496120 ... 0.092461 0.187582 -0.063846 \n", "29 -0.301724 0.102297 0.160507 ... -0.039771 -0.338846 0.325467 \n", ".. ... ... ... ... ... ... ... \n", "50 -0.311226 0.055338 0.195276 ... 0.010205 0.064592 -0.120636 \n", "51 -0.039244 0.034890 0.301043 ... 0.474210 -0.199547 0.126257 \n", "52 0.115283 0.290788 0.368454 ... 0.631062 -0.101995 -0.140868 \n", "53 -0.411931 0.114587 0.192601 ... 0.519759 0.184259 -0.458137 \n", "54 0.371986 -0.022047 0.190108 ... 0.222611 0.236431 0.191048 \n", "55 -0.073647 0.109572 -0.101904 ... 0.322454 -0.042858 0.216501 \n", "56 0.249301 -0.067262 0.338457 ... 0.201015 0.334671 -0.174451 \n", "57 0.142417 0.131175 0.213052 ... -0.051333 0.284280 0.163205 \n", "58 -0.144369 -0.267476 0.579790 ... 0.101804 0.151119 -0.432974 \n", "59 -0.135903 -0.346200 0.066342 ... -0.008268 0.015262 -0.058639 \n", "60 -0.193591 0.615115 0.391340 ... 0.568748 -0.129087 0.118479 \n", "61 -0.147843 0.330000 0.611246 ... 0.581318 0.113243 -0.252074 \n", "62 -0.183566 0.594446 0.279397 ... 0.477408 -0.411272 0.372041 \n", "63 -0.073864 0.341216 0.538699 ... 0.049329 -0.010507 0.020185 \n", "64 0.060943 -0.192401 -0.106285 ... -0.084531 0.260075 0.151734 \n", "65 0.215363 -0.029408 0.299272 ... -0.130162 0.396462 -0.007693 \n", "66 -0.036361 0.131826 0.534617 ... 0.433481 0.296655 -0.103261 \n", "67 -0.024345 0.165974 -0.131032 ... -0.108612 -0.005468 0.545061 \n", "68 -0.268688 0.268001 0.380099 ... 0.559698 0.184941 -0.330013 \n", "69 -0.080233 0.073521 0.425810 ... 0.074843 -0.270315 -0.142322 \n", "70 -0.239712 0.351357 0.203558 ... 1.000000 -0.203524 -0.029723 \n", "71 0.368370 -0.188773 0.122318 ... -0.203524 1.000000 -0.386195 \n", "72 0.221048 0.192168 -0.270258 ... -0.029723 -0.386195 1.000000 \n", "73 0.350957 0.553384 0.059843 ... 0.035719 -0.088814 0.536830 \n", "74 -0.185779 0.410637 0.324001 ... 0.466824 0.321723 -0.534652 \n", "75 0.026056 0.564432 0.277220 ... 0.426935 0.111196 0.177384 \n", "76 -0.022049 0.361619 0.323540 ... 0.738256 -0.192897 0.245031 \n", "77 0.327307 0.439725 0.078432 ... 0.140477 -0.226316 0.325315 \n", "78 -0.439491 0.231358 0.274879 ... 0.072000 -0.265825 -0.394026 \n", "79 -0.210063 0.174258 0.064651 ... 0.354692 0.079099 -0.498062 \n", "\n", " 73 74 75 76 77 78 79 \n", "0 -8.804017e-02 0.329103 0.027056 0.515384 0.122253 0.127640 -0.042397 \n", "1 2.277762e-01 -0.344459 0.240827 0.455067 0.175518 -0.478230 -0.177101 \n", "2 -7.355253e-02 0.562616 0.006664 0.133937 -0.173151 0.252252 0.210168 \n", "3 -1.263707e-01 0.699302 0.275118 0.315077 -0.015813 0.296380 0.477380 \n", "4 4.695911e-01 -0.030744 0.117856 0.293513 0.027389 0.563606 0.111392 \n", "5 3.448676e-01 0.022863 -0.001553 0.105472 0.067078 0.382004 -0.143398 \n", "6 2.002099e-01 0.594260 0.381463 0.523324 0.127772 0.347021 0.372045 \n", "7 3.509571e-01 -0.185779 0.026056 -0.022049 0.327307 -0.439491 -0.210063 \n", "8 5.533842e-01 0.410637 0.564432 0.361619 0.439725 0.231358 0.174258 \n", "9 5.984268e-02 0.324001 0.277220 0.323540 0.078432 0.274879 0.064651 \n", "10 2.838889e-02 -0.157273 0.170500 0.489777 0.075490 -0.148360 -0.245010 \n", "11 3.860450e-01 -0.119018 -0.235456 0.139139 0.072196 0.215049 0.170200 \n", "12 2.661770e-01 0.232690 0.428598 0.816513 0.570403 -0.079985 0.034148 \n", "13 2.578992e-01 0.060623 0.312119 0.522628 0.059502 -0.225332 0.033838 \n", "14 7.013962e-01 0.050519 0.058934 0.319629 0.460915 0.345603 -0.041135 \n", "15 2.659591e-01 -0.394390 -0.482760 0.002605 0.334767 0.049055 -0.121640 \n", "16 2.394208e-01 -0.154415 -0.195771 0.345690 -0.073867 -0.179052 -0.003851 \n", "17 7.196625e-01 0.229076 0.249538 0.438868 0.496076 0.337411 0.122782 \n", "18 5.000669e-01 0.002075 0.042271 -0.016991 0.547222 0.016000 0.021424 \n", "19 2.994685e-01 -0.449742 0.304097 0.418165 0.202481 -0.482127 -0.164492 \n", "20 1.568838e-01 0.402782 0.129034 0.238060 -0.103207 0.023425 0.089917 \n", "21 2.209621e-01 -0.008984 0.366089 0.470883 0.384338 -0.127022 0.082465 \n", "22 -3.296485e-02 0.181905 0.360856 0.595870 0.151449 -0.164891 0.186739 \n", "23 -2.338457e-01 -0.554904 -0.285018 0.027444 -0.243693 0.278473 -0.146648 \n", "24 -1.536747e-01 -0.233915 0.283985 0.368032 -0.039940 -0.621889 -0.253676 \n", "25 1.415886e-01 0.344112 0.274569 0.429670 0.103488 -0.147988 -0.093074 \n", "26 5.287587e-02 0.174384 0.465399 0.393212 0.014336 -0.396071 0.352194 \n", "27 5.210868e-01 -0.090334 0.220853 0.504390 0.203201 -0.179435 -0.194098 \n", "28 1.497342e-01 0.471345 0.395126 0.254920 0.274407 -0.075727 -0.022533 \n", "29 4.842430e-02 -0.087508 -0.020057 0.139743 0.159569 0.210887 -0.341368 \n", ".. ... ... ... ... ... ... ... \n", "50 1.653846e-01 0.197045 -0.105939 0.183778 -0.117916 0.520589 0.100480 \n", "51 1.969037e-01 0.046932 0.089994 0.569168 0.171203 0.324672 0.118782 \n", "52 -8.002520e-02 0.287034 0.130218 0.377335 0.082258 -0.044808 0.061332 \n", "53 -1.375925e-01 0.549807 0.237788 0.252774 -0.336042 0.317377 0.626392 \n", "54 2.252546e-01 -0.139564 -0.059979 0.399133 0.153017 -0.016817 -0.285228 \n", "55 4.083203e-01 0.177092 0.155032 0.500792 0.521172 0.220501 0.035981 \n", "56 -2.450114e-01 0.118727 0.219649 0.205076 -0.140278 -0.299935 -0.023486 \n", "57 1.681086e-01 -0.002532 0.309468 0.115063 -0.149592 -0.122019 0.075520 \n", "58 -2.547258e-01 0.182376 -0.201840 0.197294 -0.214811 0.393570 0.020667 \n", "59 -2.908180e-02 -0.135984 -0.051194 0.147675 -0.240185 0.157047 0.146976 \n", "60 3.812537e-01 0.510060 0.567984 0.509844 -0.024624 0.124259 0.393969 \n", "61 2.466059e-01 0.714425 0.300048 0.364382 0.133080 0.228218 0.146203 \n", "62 2.798790e-01 0.080924 0.386418 0.605758 0.466970 0.055255 -0.058030 \n", "63 2.903043e-01 0.099043 -0.018658 0.048332 -0.145309 0.348765 -0.066937 \n", "64 -8.259374e-02 -0.167913 -0.140262 0.162261 -0.285257 -0.247470 0.082199 \n", "65 1.888602e-01 0.155908 0.056891 -0.002858 0.023633 -0.011963 -0.258977 \n", "66 3.869879e-01 0.537464 0.322381 0.448109 0.115352 0.136341 0.068968 \n", "67 4.949144e-01 -0.031774 0.198519 0.120561 0.445254 -0.302202 -0.311086 \n", "68 2.184864e-01 0.693500 0.427670 0.407172 -0.131410 0.449356 0.532649 \n", "69 -3.049846e-17 0.090753 -0.017779 0.217243 0.158986 0.176460 -0.034708 \n", "70 3.571907e-02 0.466824 0.426935 0.738256 0.140477 0.072000 0.354692 \n", "71 -8.881371e-02 0.321723 0.111196 -0.192897 -0.226316 -0.265825 0.079099 \n", "72 5.368296e-01 -0.534652 0.177384 0.245031 0.325315 -0.394026 -0.498062 \n", "73 1.000000e+00 0.109469 0.356848 0.233084 0.491879 0.056280 -0.125600 \n", "74 1.094695e-01 1.000000 0.399011 0.184077 0.127396 0.249811 0.459620 \n", "75 3.568481e-01 0.399011 1.000000 0.416807 0.270717 -0.084503 0.150867 \n", "76 2.330844e-01 0.184077 0.416807 1.000000 0.327008 -0.007027 0.232111 \n", "77 4.918785e-01 0.127396 0.270717 0.327008 1.000000 -0.077469 -0.191747 \n", "78 5.627984e-02 0.249811 -0.084503 -0.007027 -0.077469 1.000000 0.282244 \n", "79 -1.255995e-01 0.459620 0.150867 0.232111 -0.191747 0.282244 1.000000 \n", "\n", "[80 rows x 80 columns]" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 相関行列を計算し表示する\n", "cormatT = correlation_matrix(matrixT)\n", "pd.DataFrame(cormatT)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWMAAAEACAYAAABmohcVAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsXXd4lUX2focakhBIQipppEGoIaGE3pGigliwo66uXdey\nti2uq666u64FGyhiQ0FFBaX3XkIPENIT0kNJgUAgwPz+SLjnnBEkkhgJv3mfh4fJvXO/b7755n53\nzjnveY/SWsPCwsLC4vdFo997ABYWFhYW9mFsYWFhcUnAPowtLCwsLgHYh7GFhYXFJQD7MLawsLC4\nBGAfxhYWFhaXAGr0MFZKPaaU2q2U2qWUmqGUaqaUcldKLVZKJSmlFimlWv3Wg7WwsLD4raGUmqaU\nKlRK7fqFPm8rpVKUUjuUUtF1cd4LPoyVUv4AHgYQo7XuCqAJgJsAPANgqda6PYDlAJ6tiwFZWFhY\n/M6YDuCK872plBoNIExrHQHgXgAf1MVJa+qmaAzARSnVBEALALkAxgH4tPr9TwGMr4sBWVhYWPye\n0FqvBVD8C13GAfisuu8mAK2UUj61Pe8FH8Za6zwArwPYj6qHcKnWeikAH611YXWfAgDetR2MhYWF\nRQNAWwDZ7O/c6tdqhZq4KVqj6pcgGIA/qnbItwAw86htXrWFhYXFRaJJDfoMB5CutT4MAEqp7wH0\nBVColPLRWhcqpXwBFJ3rw0op+5C2sLCoMbTWqjafV83cNCqP1LR7odba91eeIhdAIPs7oPq1WqEm\nD+P9AOKUUk4ATgAYBiAewFEAdwB4DcAkAHPOd4CpGzMBAP4uLRyvfbu70NHemXxA9B8eSzv+PoGS\npPH2inRH+7mRkXS8PYXY8vW76HHDgwCAtq2aO94bEuzpaH+ZkC+O186jOc4Fd2c5Na2bN3W084+e\nwIKP38Tou/6ErOKTop9vS+oX1cbF0d6QXSr6NVK03grKTjjaYzu0Ef3mfvgG7nrkGQDA/iPljten\nr88R/Z4cGuZop5WUi/f6tKXr33e4zNH+eF226OeW8DWuvfdxAMAZ9hP64255f2KD3BztVcmHHO07\negeIfvlH6bq8XJo52h+szETmwmkIGfUHAEC3djS+CVHk7UorPSqOty2Xrqt/CI3hm20Fol+Yj6uj\n3bSRwpoZkzHglocBAJFeTo739h2ocLRPn5F7hpbNGzvaU7/f7WjPfmKI6Lci66CjvWbGZIz9w58A\nAAVHKkW/Vk50vMzDNC87Mw6LftGhNBfRbZ0d7cZKPp+mvflvDLr1EQDAqDBaM0syDop+V0aQK/PW\nKRsc7cfHdxD9vtlC34s+EZ7ivbJln+Kxp/8GAIjPofG++uM+0a9PJ3qmlRyj78Wt3f1Fv6kb9zva\n8ydPF+9V7HgXtUblETh1f7hGXSu2Tz6fr1dV/zsX5gJ4EMAspVQcgJKzLtva4IIPY631ZqXUtwC2\nA6is/n8qgJYAvlZK3QUgC8ANtR2MhYWFRZ1AXfzmWin1JYDBADyVUvsBPA+gGQCttZ6qtZ6vlBqj\nlEoFUA7gzjoYcY12xtBavwDgBePlw6hyYVwQiYXHAQDD+9KPUMW2PEc7yN9N9J+9nHa/m42dcbOm\n5OYO9qCdw7ETp1B56gyOnTgFANiVQ7uPrmyndPzkKXE8fzc6d1tX2rm/sjRF9BvEdqzdfd3g4dQM\n4e4uWJAgvTP+Hb0c7c6+NPbEg3K32s6dztU7gMbwSby0dsLdmqNz9fsHU+ia3prQRfTLLKbjuzZr\nLN57e0Omox3oTjvDuHC5A0rb2xitmlXtYEtO0M5mWHsP0e9gOc3hzT1o17MyQ+7+C0uOO9pPD6ad\ne3n5SVRWnkZ5edU5dmXSbmtSNB3v41VZ4ngPDmvnaH+ygSyDY8flLvTuOLIgj5ysRLJrU3Tzq7JS\nmjai9fPjOtrZhQS1FscYH01rNbobWWpbCmSQfW8Bzbu/qxN6+roDADKd5f2evDzD0e7SjuazZ4S0\nhIrKaLeeW0pfzzVJcscb5u6MkaFVn91WVOJ4veT4adGPS+S6uZEVuDVHWh39ImktXBHqJd77fNEZ\nHK2ouueJB+i6IoLcRb/eQS0d7eIKuieFxypEP74bHvOwfI5994c62BkDgLr4fDat9c016PPQRZ/g\nPKjRw7ihwCeqR72dq0vPvvVynv4DB9XLeYD6uyYAaNmuTnjyNULHHn3q5TyxvfvXy3kAoHuv+jtX\nzz4D6u1cdYZGjS/c5xLDZfUw9u3Ys97O1bVXv3o5T/+Bg+vlPADQtWf9XBNQvw/jTj3q50cmNq7+\nHlrd6/HB36vvwHo7V52hFm6K3wvqt670oZTSj8+tMgePniDz9uoOZApllh4TnzlWecbRPs7aAFBy\nnI6xL4+CUYeKj4t+V8TIoMFZNDLu0WcLyR1x5xgKCM7ZKINbXp7kErmpJx379R+TRb/jzGTuH0Pm\n7QjD1J/CTPAuwWTu3dBJBnb3FdM1ph0iN4W3q/wd3Z1H5mOZYbb7tCaXyFWRZBY3ayxNufc30piW\nL09ytP95r9xZHiin45efpPuTXiRN31z291OjaW53Fcp+zsz1NCKUAnib8g6JfjzGdvQEmePK+OLN\n3UousKti/MR7zZrQufxbktm+Iq1E9GvjQoHYa6LIZTF9m3QjLd9C6+SliV1pTJBo2YzuF3eV7D5Y\nJvqlHiSTftVOCqr9bVyU6OfHguGrs2meio7Ke79qFx3jmbHtHe1l6fJ6eYDwmijppvjPijRHOzef\nWArDYiW1NvswfY/LK+h7umLKZ6LflA+fdrR9nJ3Ee6M6edeeTaGUdur9VI36Vmz6d63PV1e4rHbG\nFhYWFgAa5M64Xh7GizZVUVlatKDdRoum5NNJLZCcwCaNaSI7GMG9s8cCgAfH0m5r9lZJWduaSYEW\n/ms+uLv8Nc9PyXS0Z66g6TADOiNYYO6LTbQ7cnKSU/jHkRSomrGOxnrylNzhl7FAzY8raecR5C6p\ndgt2EWOG77qbNpU+seJi2pV0CpdBoabMHPhiO+0ad6fKoFAe22F1jQ12tP/3XaLoFxdNu80d+yiA\n2cgwO1wYne3jjRRwK6+QuzdnNoeebEeaXSJpg5kH6RoPM9pcaroMqjVm66eNa1PxXm4pHXMpC8Yt\nY3QrAAgKouBrCtvJ5xqB2MbMuvhxL1EAPV2biX7FzJpowQKsK7dJiqK3NwWbDxTRut1zQFoTi1Mp\n6NnBm3bJfCcMAAO60L3635JURzu8rQyMfz93p6M99m+jxHvu7D56sIAjt04AII8F97Z9OcvRHnLv\n7aJfKbOQlyTl4TdBLQJ4vxfsztjCwuLyg90ZW1hYWFwCsDvjc2PS8CrTfUc2BStCWOZbzmEZwGvn\nRZlr/m7SzPTyIjOOB48yM2VAontnCrr0Yaba+A5Sz2hT/86OticLdPUOkxzK8VF0jChPGsMnW2RA\np7SCTDcvdwr6ebtJ90MeO5c74xwPDJTc343MBPdgAaeMHMnp7c6CTJmG22dgBF3LyHAKJH7bRC7Y\nTmF07pA2NPYmRqCvrQeN93QkuW9OGVls13SluZ69g9wtrRg/HADKmdnKPAwoOiLdFDEs86+9J62R\nmS1lEGjdFjL9lyTKDLcrouj6Iz3pOrwMdwYPHBexDMk/DAwS/eJzyDQ/wtxISXkyMPfQgBBHO/sI\nBZvnr5W8d1cnGkc7lo3X2nCHdWTfg90sUMoDzQBQeozGdPo03Z+eQdL9lxRNbqllRlagK3MvprO1\nVXFCjp27JmJunuhouxhjd2fX2NpZunPqDJbaZmFhYXEJwO6MLSwsLC4BmBzWBoB6eRiv2FcVtf/X\nGOJKXvf2Wke7+IB0MQy/j3itR05IFkImM6G6jIhwtP38XEU/nvY8KpJM0wPHZWpmGIsqt/cl09e8\nl+Usclxxmtqc+QEAzs3oF/n1cZ0c7Ts/3yr63RBHrI6EPHLTBHtJM/PhfpQC/Moy4kT3iJLuloHt\n6DpeN1gSrZrTbQ5sRcfPNHjBjw8NdbTnJtIxvFtJN8BGlpp7jAnC9O0sOb1H2D0Y3Zmi8K99s1f0\n68/4qt28yaXSyAjCNGfuEk6PT82R66dVaxovd5UAQOVpWk9LkskFFNqmheiXmEfm+O4kYklc21Xq\nypw6Tf18mCuqB0sNBoBvdxPrhK9HZ0OQas1q4q0/eAslMXEWCAAEt6LxclEik1ly1Xi6/h8WkOBR\nXlfJZz95ktb0HsMFNnUiJei8tY7Suif/dbLo1+PWGx3tKJYq7dpcugzm7aH1k7L/lzTcawG7M7aw\nsLC4BGDZFBYWFhaXABrgzrhe0qG/qE4ZXbiPkgp4erBzU/mb8MpcUtNqY0SH27JIfM4himRnGGyK\n268Id7SbM1fCvB1S+9abMRl4SuiS5VKrdegQSiXlacTzF+0R/QJDyYxtF0iJIwFM2xiQkff+oeRi\niHSX5m3pSTJPl7GUXZ+Wcs6+ZEp3Q3sEivd8GSOFR+VbGubj6jQyTwuY4lq4rxzTGKbwlcrU4n7a\nJRXs+kXIFPCzWLZH6iNzV8+NvSjV/IMl6aJfT8YY4XrGcxPk8UrKif3w5JAw8d6nTC3Qlc3FSSPt\nfnA43TvnJjRPPxhjT8+jOXvlamLmmLrZt3QlF87ug/SZmZtk0oMfW98nT5HrwPyaTmCqcqvYukjO\nlS6GkhJyy3VnEgQxgfKeHmPMpMBWkvnz4je0xrMW/ehoP/yS1AzenkEuB56Cn5Ai3WbXDSDmRpSX\n/F5cH+1fN+nQw1+tUd+Kpc80nHRopVQkgFmoKqukAIQC+Buq1O2vQpXgfBqAO7XWZec7joWFhUW9\noQFS22pSkDRZa91dax0DIBZVYsrfA1gMoJPWOhpACoBnf9ORWlhYWNQUqlHN/l1C+LU+4+EA0rTW\n2ZDVUTcCuPZ8H/KvFm1fG09k/KcGkfnY0iCFhzNdCJ9WMsp9Qycyz6bG0xCCvSSbYkQIRe8/2krn\nDTT6FZWSOV7KyP19+oaLfh6uZLrtSiN3y7VXdRP9mrJEipnfb3e05/9jrOg3fTsli1QyMv67GzJF\nv8LDNL5HhhHbYX+pVKkrzCWWSaxRUufrreSacWME/meHyGucsoLO7c/MxxOGrkakN5m4B47RnDk3\nl/exHROyX5VO5vOLo+X4vmP6FrvziVnSPVKqh4V50j04whIO+oZJnQXubvp6t6yGM5K5xzg7Y2O2\nTJRxYa6zrqxIwIIkqSTHNR7KTpLryYwfebOEHacSOm9PQ+B/XHtiP/xtPmmCXBkt2Q+b9tN4u7al\nezU0QiYrPf9VgqP9SN8QRzvLUEosLCd3RjdfqcvCXRPBV1zlaD/KmD4A8E+mqHiUueHa+kmXyASW\nQOXq9BuFrf4fBPAmAvjqHK/fBWBm7YdjYWFhUQe4xHa9NUGNA3hKqaYA8gB01FofYK//BUCM1vqc\nO2OllL7yD48CqNKjjegeh8iYOHiyHdrWPMl3vY2VuVmXLZ3/XOv4J5Zi+9Qwuctbkk47RRfG/Y0L\nkLuolk1pHFms4GeZkerZw5d2HLyoZ6WRAuzOCpd6ONFu6KnZu0S/yRO7O9rvVBdsBYAXr2gv+n2z\nmwI8P26joFDTpnKx8ev/1tgNPtCbAiYuLGj35FwZfHx4AO10vF1o7O9tlopmnP/bhBGy7zQU8eYm\n0zi4zi5XGQOkZZDOinV2NPrxez8qnHaQa/bLNfL1ZpqzN66R5aleXEo83mimzGaui0MVFDhdkUoB\nsmPGuhgUQbvI71hhVNNK8Gep8VwKILi1vMbNObS27oyhAq9L02VwdC0bU/4h2uV6GGn3QzvQzptb\nHXcZ96qsku7PuJtlhbX4nygYtrOAzvvlFhl87MTmcBgrLWXqZjs1pjX4/nc/IWvXJsffq2e8UzcB\nvDFv1ahvxfxHf3Y+pdQoAG+iyo07TWv9mvG+G4AvAAQBaAzgda31J7UZM/DrdsajAWw1HsR3ABgD\nYOgvffDqex4DIL90FhYWFiHdeiOkW2/H36tnvFM3B77InbFSqhGAdwAMQ9XmM14pNUdrzelVDwLY\no7W+WinVBkCSUuoLrfWpcxyyxvg1D+ObwFwU1b8efwYwUGt94ryfsrCwsKhvXLyboheAFK11FgAo\npWYCGAeAP4w1gLOO8JYADtX2QQzU8GGslHJGVfDuj+zlyagqX72kuuzNRq31A+f6/H9mVwUiopgw\nNTf3TPUnLoZ+ZYRMZ73+fysd7S//RLW5Xloiyx8FMFUv56YUSMookYGLf31BQbagEFYht7tM7eXI\nLKbfntxS+Tt0HQswfsmEvv29ZeDw3s+3ONreLFj2geESSGbC+GfOkJnu5y6PN3lNpqPdLUia3FsK\nyGVTwYJxaVkyFfWuXaxidzCZmVkZMmjVkZWGSkwkV8Q+g+M6oD3d70NHaJ5mpcnjdQqhc/FU4WOn\npHh52iFyZ933Fd23s1Wmz4IXMYjPlwpkd/Um0z/5MLmlnvkmQfQrzKdrae1B9yfWKIv1A3OV+TFX\nRL9QeQ9SWDmlZk1ofT/92Q7Rj9/jpVspyHttP6kWd1VnCm46MR70fxfI74GPC63jtzfR88TXTaql\n/ecZMuvnfPm8eG8tcwPx6tMFRVJo/zDjNE/5YrOjPWmirE3p4Uzj3ZAi10Kd4eKpbW0hyQk5qHpA\nc7wDYK5SKg+AK6piabVGjR7GWutjALyM1yLO093CwsLi98V52BSnDybhzMHkc773K3AFgO1a66FK\nqTBUbUi7aq2PXuiDvwSbDm1hYXH54TxuisZeUWjsRYJlp5N+MrvkoiowdxYB1a9x3AngFQDQWqcp\npTIAdACwBbVAvTyMz1bvvbEHmUw8Ql1RKc1RHm3ee1gm9Q3tz7i2R8jl0DdC8jUXbScXwfGTlDob\n4iFTdK8fRTcmrA2dN8RNpmH/dQFxPoezenijIuV5F6aS2dXBhyLlhSWSF+zB0l6Ps0q64yKlW+Zz\n9t5RVjsuwENG4bma2Pr90l3AXROJhTSODmFy7N6M092eMRlix3UW/e77NN7RfuwGYivw6tWAZLGc\nYayddn5S2HxiFxr7MsaC6RUg+/Gaa5wH3d2oBF7M+K7NDQH9j1jV7y4s+h9m1Dzkgv9ju9H4nA0W\ni58r3a//LqYacyeMNZ3HCih0Y26Z+66S7Bmerh/F0um5ewAAGiua6wU76TPt/KV7pE0LWtN3s+rn\nLzzxhuj351cfdbTdmkqhfR8XcvOdPE3rZ1QPycjwZ66PeDafpw3GVn4ZuZWu7yHdgUtRR7h4nnE8\ngHClVDCAfAA3oipexpGFKrftOqWUD4BIAOmoJezO2MLC4rKDusiHsdb6tFLqIVRlGJ+ltiUqpe6t\neltPBfASgE+UUmf5qk9prQ+f55A1hn0YW1hYXHa42IcxAGitFwJob7w2hbXzUeU3rlPUy8O4TXU9\nNU723pZEJPayMmnelrAy7J0NMv48ppJ2f6/RjvacBEmKb85I90MiKWEju0Sei9dfmx1PP26BhprU\nc8PJxFueSa6IV36S6m4PjmRp3iyl9iOjrtigWIrq7z9Ifv/8cunO6BtMpvre/eTayTwgI9kVLCHC\nVGM7cJSuMYq5TuYulYGMsUMpJtuWpe/e9eEm0a9bRzLNP11GYuM+3nLOwjypX4tmNBfzF0tx+Y07\niMVx75X0HZi6XjJLro0hJsPeQjre659tFv06dSOX39iIKPFeKGO1LGHnNddgTEdyTbz8EV3/45Mk\nM2BFMrnDuPvFTKaqZG6LPdl0H2cvlgk6x46SO2MUcz3tK5T3uwVzl3i6kRth3nyZXPTH3qTgx10T\nz7/+mOj30XxaCwVlkp1yXy86xpw99D37aZG8jxFR5C5qzJT4Hh8hE7JenZfkaK9i9QrrEspW+rCw\nsLD4/VGbnfHvBfswtrCwuOzQEB/G9SIuv3hvVQb1rF0U9b2mE5mwXs4yn/7ZeWT++Btl3a/qREyG\ng6z+2u4CmcwxNIxcE9tyKXHC1JLgSRVOzci8T86UCRFPXU3m8wymfXDSSEyoYBH/TsE0BlMLYHU2\nuTr4kPq2lapbP6aQmHlEGzJH3ZrJ39E3l6Q52s2aSTeFB3M5XMtEyUPdZOLI8iwa0zdrsxztK3oG\niH739CSzdUkqmdkrk+WccX0GLtZ+ylhzm7LoHkzsTK6I1BJJ2+SMjD4BxARZkCJdVHvy6XO+Rv2+\nUUwlbWMuuQu6+UhlMc4gOM1u0PxUKS6/ltUDfJ2xTrgqHwA82o/0QbiQ/ZT4bNGvgzed970FxM4Y\n1zdY9Atna+E4c4GkHJTulvf+TnXq5s8kzYkzxj04eJw+V2gk0bwzl9wKPKHm/lFSuH/Lfpr3Vs7U\nb40htP/ujaTLYj40e4a2qhNtCrcbP6tR37KZtzcccXkLCwuLBodL4vH661AvO+M2d1Spaz58c6zj\n9Q2Mj9vC2OW1ciG+YrCH3NlMnU1pq/+4k463r0gGvuavp53dyDjaVQS7yzTQzZnEyc0upB1ac0N1\n69Y+tDtcw8rc7DZSe2M70I6/O9OZ/cv7G0S/LjE0prIylkZ6W6zoN2Uz7Zy+n0fXPmqEDEzx3Vtj\nI3jh5kzXzMf07HvrRb8OXegar4gm/ueXy9JEPzemDFZcTGP3MipbR4dTOvSGBLKKcg2VtfD2tBvu\nGHzuUk0AEBNIO/mNmcQ/X79N7kL5kp7/50HivT99T3NYXEpjP3xYrp+QYNrJlx8jfrebq1w/zVgq\n8oFiss6cnCRX9+BBCsBFszWSki3Lhe1YTsHIG++kgP2BUlnVvC0rR7ZsIwU6c5fNE/0e+CeVRvpw\nBgUix47pKvplsPJRvkaJsImxtBY+WJnpaBcUSMslPJSsugNMSW5QV8kl5oJhrVtIK+6FKyLrZGfc\n6ubPa9S39Mvb7M7YwsLC4rdCQ/QZ24exhYXFZYdGjRqeuHy9PIz79KlKYc5hHN+rWIpp6kFpgnEu\nbMGRSvHeTVd2crTXZ5BpFRciU2fTWKpvagGZtM2bSN7ywHAyrVaz1yN9ZHBrHSsbxANTI2NkYM67\nJZmnewvputqGyBJCt/cjl8AbLEDi1FSabaXHKZjiyQTumxppvtF+NN4jJ2RQMeMgmYyZTLx9wpVS\neL0JEwHnanmJ+dIc5V6Q0BgyaRNyZBp2UGtyZ2Sy+RzXR1avTmCC6gnp5PbpzapBA0A3L7p34e50\n3uwDcnzN2ByWlMv1k5VNY/RhY4oMky6WvuFMtY65YrIPSr7vuGiap5dnEgf++FHp9ujZg7jP+Sw1\nerSRyt24MWn7jmIloj7dJF0x/BjcNdF2mCzvFcFS/IePoO9O3iF5HU+OJh7928tkZi8PlEeyMlOd\nQ6RLyZet/VYs0H7ilHSFOjWlBRTjLdPQpax9LdDwNsYXLkgKAEqpVkqpb5RSiUqpPUqp3uy9J5RS\nZ5RS53f2WVhYWNQjlFI1+ncpoaY747cAzNdaX6+UagLAGQCUUgEARqBKOMPCwsLiksCl9qCtCS74\nMK6u9zRAa30HAFQr2p+1K99AVbWPub90jI7VKc2JuWSO+rUnN0JZhTSrOTPg+ElZmbi9F7ErCpzI\nHG3XSkaAb+5BJlMqi5R7ucgoNzfby5lCmpuTdBe0YxWIpyylFOAHR4SKfjmlZNIdZmndPTpKk7uI\nuV+OM5WxeckyPTankEzwJycQg+K9hamiXwnjhvYLl0ZKuzZkgnMXQ7IhBh/EUoW5KybViPjfMpCY\nINtYVeWbYmXUPIelGB9kZrVze6kWx1X7TjGFOS5CDgAr95MLw70FjS/CUCobyQTqF2dIXnAIUxM7\nxu73IGNM3JQ+zaL//Q11QL5WfXzYGvSR65G7lYqZcl5Aa8nOuCGO3Fdc7WyioW523z1Ulm3E/ZMc\nbT+Dl9+CuWw6MxU856bSPVDB+PJ+nvIYyUXkphkURp9r3Vx+lziHf0kqpf9P6iZdeSdP0z1emCaZ\nNXWFhvgwromboh2Ag0qp6UqpbUqpqUopZ6XU1QCytdYJFzqAhYWFRb1C1fDfJYSauCmaAIgB8KDW\neotS6g0A/wAwEFUuirM476WtnVGVBXSg7ATatI9Fm/ax5+tqYWHx/wiZuzaJ6tB1hYa4M75g0ke1\nePIGrXVo9d/9UfUw7gzgGKoewmfV8HtprYuMz+vn5lexBdJYzawrWQ2vpAMy8jyTJRlEGWYhT+0d\nGkHsAp6iDACZWWRaj2appNuMJI0/DqL32jjRsT/YIN3gIzuyem7HyLw12R7+bmS6Bbcml8ruQpmu\n3c2PzNhKZrZxNwcg03S/2EbXOClWmn77DpM7Y+t+KchfxpIWgr3IFWEmwBQepX59A8n0/3aXdJ10\nD6QxlTM3ksm66NKW+vmyeflhuzxec5a+PbYTzfPyFOkeeaA3MRK2spLxn67KFP0msnpxh4/J+oqd\nfMgE/9d3VDDg5iHS3dSc1ambt5PG6+YsTfOJseeulfjDLpmizdk5Xq60B5q2RDIXuKh9C6a+t3Kq\nTGL44MOnHe1ZWyjduJHxEOrOkleyi5m7rqWUIODJF6aL7iRjQ6xLpZT3Dn4yhbxtK1pPJcwF1MlL\nMpPeY/Uab+kt1/EdPYPqJOnD955va9S34MPrGk7Sh9a6UCmVrZSK1Fono6qE9Vat9fCzfarLjsRo\nrYvPeyALCwuLekJD3BnXlE3xCIAZSqmmqCovcqfxvsYl54GxsLD4f4sG+DSqaXXonQB6/sL7oed7\nDwD2VSuj5RYxEfVgMoOPVUrGRGtm3of7SlNoK3MztOlKmgZJSTJqHtuNzMd0pjkx0TCLHvrfSke7\n30AivpveG28XMus2Z5Eb4ECZTFgpO0b9NjCT7m4j0eE1VlLdm0XAe4dK1bYPme4AF0ZPOHBE9Fu6\nl64/L1+6KVyY1kePdqw2maFgN2d1pqO9gNWv8zLMzCjmYtnEatalpkvD6CCbm1B2H82EFZ7o0sWL\nxme6gHJYIkXaITr2GeM6ViXRGjHrK17FklkGMCU9ntgBSCZM//bkOik23B6zd5ALY2QUudTaussa\nhYND6L56u9L6/qK5dIdxN9yCd6bT5/94m+jXlNFiJrE1vTBJFjGYwzRabh7cztHOKpbqbsuYvseM\ne3qL9x7OzO+LAAAgAElEQVT4euc5x2dqoHy9mY6RwZJ3vLzld3g8+y6Y9fHqCrXZGSulRgF4E1R2\n6bVz9BmMKjZZUwAHtNZDLvqE1bDp0BYWFpcdLvZhrJRqBOAdVLlj8wDEK6XmaK33sT6tALwLYKTW\nOlcp1ebcR/t1qJeH8cIFVaVg3v7zMMdrPAXYDCKOZQG3rr6SrznlM1I/OzmM9FQ7Rsmqypu3UTmX\nP11Pab+8YjEAXDGSUkSbsF96D1cZ4GjMbm5sEP3Sb8uWN92/FX3uDhZku+X1laJfWCTxjvkOdWSo\nTJs+yNJ5Z8wlFuF1Y2XF5j6MW7z6lLQ0ejEN3y5sd/2goSTXqTNZEwGeNO+JWXLH+8H3lPYLduvC\nIuTYb+xFqb7TmNrXnh1yNzjxmhhHe1shncvceTVnegP7mSrYiRNyt5rF+OyTb+ku3pu9j3ayfPe7\nv0BaGtlZtMPMYDzmIdEyfbm9L83nF+tpzQUb6fRPf0v3btKQEEf72DG5++e74dEPkTfw8BG5kz3I\nPvf1Rjrv1iWSmfDGP65ztP/yAd3vLt2lPnIxC+5N3yZLIb04hvjt77LA9rsz4kW/AcyyjIiktdAt\nWFp7yayEFC8JVpeoxc64F4AUrXVW9XFmAhgHgNdXuxnAbK11LgBoreuELN3w1DQsLCwsLoSL5xm3\nBcAV/3OqX+OIBOChlFqhlIpXSt2GOoB1U1hYWFx2OJ9qW0VOAipya52ndjb3YigAFwAblFIbtNap\nv/yxCx/0N8d9t/cFACxOJKd+MOOx5uRJE3HFDuJNHjXcD6FRlC7aggl7J+yWpV1Cw8iNk8u4uzy4\nAwBHjpO558IEwdt6yABMQEv6m6d6Fh+V5mMPxsGdlUAm8YTRHUU/Nyea+lKWDl1YXmH0o2sc2J/c\nMgXFkrece4j8BabZXsTSkn9g1X3HDIkQ/bhp5+VKc7HFKMPzyHXk9pm9kTYRpaYAugvN2ZAuFGw9\neVIG1bhS22iWlrynQPKMO7Yh0/9uVrH4rk2Zol84cwF9ZFQfvoWJ5k9nro4uoZLPzv9ewQT+Q9yl\n+4pzzq/sTte4MV2O/U+jaa6L2HymzZsj+oWNHedo57DA8wlDic+VcZBHsmD16dO9RL99LJXZ2ZUC\nxWOjfUW/D5iaXa8AqYA4h1Vy52pxphLh7n0URHZ2pvUdbnCx+TqLT6nfdOgWgV3RIpCE9cs2zzS7\n5AIIYn+fzaHgyAFwUGtdAaBCKbUaQDcAtXoYWzeFhYXFZYdaqLbFAwhXSgUrpZoBuBE/196ZA6C/\nUqqxUsoZQG8AiaglrJvCwsLi8sNFxu+01qeVUg8BWAyitiUqpe6teltP1VrvU0otArALwGkAU7XW\ne3/hsDUbcn3UwHt2XhVzgsf4+wSSKZRVKtOhd+eTKWSOryur4daW8TVD3WX0em4SuQhaNCUDINdI\nNx4RRiyE5RkUyfd0lr9T+WX0OZ7aax6Pp4RmMUW4lk7yeC2b05iW7yYzsFs7qbgWxMxiTi5YkyL5\npFypbXS4dO0sZcplX28gk7ulwRjhjIwH+oQ42o9y9gRkmnM04w/vLpLupgqWRsurEfM5AoB3WRVk\nrtoWFCDV2EIYE6QJ8wmeMCp039CZ3BRpJVJE/aPlpLjXhPGd/Q0u9f19yFJ9dSmNr3s7yQzgy7OQ\nuYPaGLXyNiTSPd4x82tH++W3Hhf9mjammzw4mNwAKzIlj/4zxk5xb03uIFO17dnB5Np65DvylXYK\nlKptYUyE/qQhBs+/CxXs/ngbVd2LT5DLb0cuzfv1naRi4aw99N00TfN3JnSsk3Todo/Nu3BHABlv\njG046dAWFhYWDQ2Xczq0hYWFRYNBA3wW18/DeMqsrQCA+X8f43jtbwvJ333qtDSLrmNC2vH7pek7\nawNFx58YSRHq40aEfvp8Siq5ZgiZaj0CpDlacoLcDDH+5AI5clIyEo5X0lT5uZEJyl0gAODJVL2u\nZiXor359leh36xVEkA/0ovM6GcdzZn9/sZZSozk7AQC6eJG74Pt9BeI9LmQfyczTZWszRD/upkhn\nxPxAT8ksef+73Y52V1aGvadhwqcWkbvpaAWNYYWRwDAwmmicPD3WTHPuG0yurRdm0hj6GXXktuYT\nM2BspJynZW3JvVPAmAFZeTKF/K3VNDe87ltBqRx7e6YCtz6RzhvDROIB4H3mmoi+8QZH29tFujPe\nXJDiaHe8ju6pmRwRwsZUyVwHO/ZJtbhmI9h3hN2DnZnSzeXUlNhH5QZz4yq2jovYvftsh1RKvK4z\nucc2nKT5rDwjk5ASMujc486jeldbNGrU8J7GdmdsYWFx2aEhuinqJYD3wuKqX/tVjIc4qQ/tHDZk\nyd0v320OD5MBrYVG4OosDO0ZHGZcznyW6unTWu7yIrxpZ7MykcY3pqsMOvDAyr4iOl6ssdOuYKJH\ni/cSh9JcGxEs8PXtMgoQff1wf9Fv0keU3urLPnPsmAwcDuhMu5ejv8BJ5QIzRUfkMYpYIPXpIeGO\n9pPfSZL8Tf2I47uBVc0ur5CpvTcyC+fVHyibtE9XuRviackZrML0TQNkym6ML+0GWzYjC+SlZcmi\nXyHjD19n7FAXJtDOkQcEuaY0AAQyoZ8UVvqqo78UvRnZjnaUN7+33tHOXzFf9Hvl7Scc7f1MpCfz\ngAwwurBAL9cczi2WQe5sxkHOZKWLOnSSc9s5iKyV4nI6r2l1DGWVqOfvlsFC/p3hjwtexR0AlrL1\n3t6frJh+QTIQy3fKCYXy+l8cFVknAbz2Ty+sUd+k10Y1rACeUioTQCmqCBGVWute1a8/DOABAKcA\nzNNaP/MbjdPCwsKixric3RRnAAzm4vHVEnJXAeiitT5VV8pFFhYWFrVFA/RS1PhhrPBzSuD9AF6t\nrhb9i8pFny6sclN07kC8ycX7yN2Qd1im9n54Y7SjbQYTkvIosMKV1UZ1lOmsM+PJ3D3FTFBeugcA\nZicS59GVpUNf1UEGfhalUj/umujoIVNHc8vJnGzBygmtWifL65zoTubzcabTa1iPKMyhVOGSQ7Ks\nEcfAsR0c7Tl7pZnZKYjpIBfQuTYZKeTu7uSy4Ypp7q2cRL8Xp212tCOiyCxuHyQDePxaMpIoo/SK\nXlLbuRsLnO7cS24EH4Ore4xpE69iqmpBbaSrqOAgmb5RxnvvppO75KbeFPhbvFemyfPSX8PjaM0c\nLJeBNO5W4K4JvyFjRL9vmLJaGAu+xYVKvu9P2yn4OoBVYu4ZKN0jk5eQm6KFK7kLKgxX0Z1Ms/mN\ndfTd2W9wwtcxTeljRjr92EjaZ7kx99DcZBksbM2+j4eOkgvMdISGuNH9PmC42+oKDdFnXNN0aA1g\nSbVC0d3Vr0UCGKiU2litXtTjtxmihYWFxa9Do0aqRv8uJdR0Z9xPa52vlPICsFgplVT9WXetdZxS\nqieArwH8YsUPCwsLi/pAQ9wZ/2o2hVLqeQBHUaWE/5rWelX166kAemutDxn99aBbHwJQFYkN7tob\nId16I4ZVlm1sTNwHrFRMqclJ7Ugshw7eZJ6Z1Ze7+5N5ysXbFxtlaTbvIlO9C3ejLJYpwM/f18/R\nXsAq/27ZmCb6DRzU3tGOZNfo7SqrCvO00pwSusZmjaWxcnMXcgNsyqd07TZGleJ/zyHz+8mr24v3\n1mYQ57NfO3Kr7C6Qc8ZNy+QcUh1rZVQSfmIQ8bbnsnJXpnD/5/NpTF8/OtDR/sEwb5dsJRfGR7eT\ngfX6GunaKWMmrXNz2kccMtYIZ0nc00O6RA4co76vLSZO7xmDC/vSVVR0YE02rZlv10hh/OS53zva\nm3981dEur5Cm/rIs8uKVHCd3S8vmshLzCbYukgrILXVttGT3HGU8eO5SmrNDzi1XJfRi7qabYyTr\nYup64rCPN861jjFmUnOp3SlEMp2asLW7Zjvd09MGUyW2E7kAnQoSkL6TGEPLPptcJ2yKbs8vrVHf\nnS8MbzhsimpVokZa66NKKRcAIwG8AOAIqvQ8VymlIgE0NR/EZzH4tkcA/NwfamFh8f8bodFxCI2O\nc/y97LPJdXLchrgzrombwgfA90opXd1/htZ6cXWl6I+VUgkATgC4/Tccp4WFhUWN0QCfxRd+GGut\nMwBEn+P1SgA1KjeSmF9lbu1gkfJBd8Y62qfMtFeWlpt6QJLdm7Dki+nrSIHs+p4yJXZ5Cpn0WQfI\n3DMrInduT66JQKZ41SUmRPTbV0jjaNmCXAQ94sJEv0GMPL8skUzTVYekS+CuIXT89IN0bNNr9FMK\nzdk3K8hsnzBYuue7RFDEu5GxEkM8yDxdlkzzwqsyA7LW3XAmWL5mn2RncNdEJZvPk0Zau1srciP9\nyK6js49UFitiY5+TRGwC816FsCrDaYXkeuGsFUAm+bTzkjUU359H5ngbZrbnHZBMlcUskYKrzHG3\nBABEXn2No/0hE7Jv4yK/WqkH6P77sjqJpjpgJksI8WPJFrO2SuZLL5Z6vjaFDFLT7cgrWzdvQusi\n/6gsBODZkuZiVYoUxufzG8rqAY6KlAymUiYtsCudjhdtCPdz92IPX8nAqStcrjtjCwsLiwaFBvgs\ntg9jCwuLyw+XGm2tJqgXbYr7Z1cxE7i5l1fGFKTSZL5IsA+Zo+O7SKH0j9aTa+LNa6hc/cdbZa2z\nElbK/Fombr0sQ7Ip+C+oExO44CYdAEzsQuT5RSmUAJJXJknrfVhtP+4umJMoTf0wTzLjONH/jgEy\n+s9vzx7GfjhiROujfMn0N90UTuxaPFrQPXjpO1mcYGgsJaJMYLUHb3tnneh37XBSAtuRSa6NwVGy\nJhpnV/D2Z2v2i35HGYtjeA8aQ2xbmbBRyPRG+DVOZUpnADC8FyVpcE0RAOjqR/P07+9JOXBsX6mD\n0YQd/42/vO1o//edJ0W/w6x+YR4rNGDWRvR0o/udzBgJmVnSJdCKuTDG9KS5WJskvyOh7DvSmF3j\nbmN9vz6B6hWOfWGBo/2Xu3uLftMWkT5Kv2hZDPnpQeQS25lP431mxk7RrxfTHOGJVk8Nlq68vy8k\nRcUdO2V5udz3r6kTNkWvf62sUd/Nzw2+ZNgUtgaehYXFZQelavbv3J9Vo5RS+5RSyUqpp89/DtVT\nKVWplJpQF2OuFzfFZzOr0mdvuaGn47VNu2k3aDrb74+jXUpbd6kM9eDWtY72x0GULppWKAMwJWwX\nNYOl0d5maN++sybT0fZmASdeRRgAvttD2q2dWSAp3F0GiPiOLeEABZlWxsud+2LGE+3HdqTNjBLj\nb7MdS2EBpbD2ipG7l5bNaUxr0krFe5PYNWcfkYFEjnlrMx3tpDw6RlysVD776EtKh/YLJqtjawvJ\nfZ7Ui8b46If0GV8/qeL10R20LpZn0g6weRMZmGvdgpbruwuJ3z3SSHHfkkJWyF9HdxDvzUqgdffp\n3USpem6+tBLWfPSFo/3Yy4842maZrZGsCvk9i+gabxwmd4M797Md5XBSxOMVxAFg/gra5Sfm0zyN\n7Sa5v82YtXOkgnahGYXyHnAO8uiRVKF83k553pLDlEI+JFymaO8qoLVwjJW44sFvAPB2o139drZD\n/z5RnmtcNFldvUJlAO/591EnuNgAnlKqEYB3UJVHkQcgXik1R2u97xz9XgWwqJZDdcDujC0sLC47\n1GJn3AtAitY6q5oxNhPAuHP0exjAtwCKzvHeRcE+jC0sLC47KKVq9O8caAsgm/2dU/0aP7Y/gPFa\n6/dx0XWof456cVN4ta0yZ1owXmtvJobeqoUcxkdbaC76tpMmrW9b4vFGelFQxORrbkijwBIv6zRt\ns3QX8PTTNdsomFBkVKzmaaUrmxOvs/y4VMm6KY7u27pUGkML4xp9fSk4xV0q3xvmY7dwMoO3M95t\npI8Mbi1OpDE90V9ykN9kal28PFULw61QWkLXHOpLadM7UmXw6Lrx3R3tPcwczTe4urN30bWER5BJ\n28RI+X5nI6UY8zJGX8TL4M6wKOKrHmfzvnCDTFEOZxW2Q9tIN1JTdu6pbJ1xtwQADLj7Vkf7FIui\nrk6QJa1W72VqfqwqdbYhBp/PROTf30ABTA+jQndgsMc53zthVGzmFOz1qXQPzIBgYTnxibexsXaK\nlIq3Psx15Okk1fIWseOXssB4jxDpzihna2v/fnJtHAyQ/bYxPnvHtvL7XVf4jaltbwLgvuQ6OZul\ntllYWFx2aNTo3EZ/Seo2lKZt/6WP5gLgQYiA6tc4egCYqaq21m0AjFZKVWqt5178iO3D2MLC4jLE\n+XbG7hExcI+Icfy9f/F0s0s8gHClVDCAfAA3AriJd9BaO0xPpdR0AD/W9kEM1NPDeMLQquhxiAeZ\nP8dPknvggCHYvX47MRdWbcoW793EKkJ396ZI7II06Uf3YrzOAWFkCn2zVZqZkX5kjg9iqaMzV8nK\nyc+Mp6j89PXk6jhiKIZtzCQGxe09yWWx2ku6FSZ0oIjy66spzTnUW/a7tgOZvruCiDHhaqQA7z9M\nZvF3SdLVsTeNXBhxTAXO3RBvv2UAbQh6+dHcJhjc1UEs2u7JjlFmcJ+3JxOr4R/jKJLPGSwA8O3s\nLY72Y3fLGoAcnsytcs2AEEf7k7lSYe+WXsQ/35Irxx7hRYyZvz/2P0f7tufuF/3+yNTeJn200dFu\nb6T2HiwlN8BIVuBgQ4asNu3MVPZ46nUTIzkhiNU55MycL1dIBbs2zP3CHzweHpJ9tJPVynNjbIcO\nvlKsvg8Tud+YI9k4cUzYfkU6uUF4Gj8AjIikNXOACfIPCZNuihe20fenS6B8r65wsWwKrfVppdRD\nABajKqY2TWudqJS6t+ptPdX8SO1GSrA7YwsLi8sOtfEZa60XAmhvvDblPH3vuvgzSdiHsYWFxWWH\nhigUVON06GqS81YA2Vrrq5VS0QDeB+AEoBLAA1rrLef4nL7mo6qX/ZgqGk89NoLriAsg18HRSmn6\nrmYJDZv3kMvh6XGS3L+Pqb1x1bGrusvadn4tycxeyhTNwr2kshh3W9w1ggj927JlLTEPFzpeCRND\n35Yo3ShdI4ldkM4SLKbdGiv6vbSMkgDScqX5yPHISBrT0ZOybmCMD5mP724i5sGBUqnc5c/uz+3R\nlCiymYnaA8C3rJ7bk1eQ2+gbgwniw1TR1rEknxgjWcCdmfAz5lGKci8j2cTdhczsHqyuHxdrB4C1\nKeSamHxtF/FexxGUzvzPNx53tFMMdcBKls47mLllVqZKtsJ1jEHx8Me0/MNCpfC6BxPoz2D38cXx\nnUS/pek0du6iSi+TTJUvNpMrL5MllAQHSnbCk0NoXcxLJlZMepE83t1x5Jb5eJNkHE1gYvO8OMMV\n7eU1VjKB/myWHGMK6AcxF2LZSaNmX6/gOkmHHvr2+hr1Xf5I3waZDv0oAO6cew3A81rr7gCeB/Cf\nuhyYhYWFxcWikVI1+ncpoUYPY6VUAIAxAD5iL58BcPZnuDV+Tv+wsLCw+F3QEAuS1shNoZT6BsDL\nqHr4PlHtpuiAqrxsVf2vr9Y6+xyf1duqGQYfsyjqJKYMtShdmvBZh4mh0MVfugtC3OjvoNbUfn2N\nZD9EB5AZ68NcB34uMtq8IZdM8CgWofY3+rVgptZh5n5way4TJ5akk0ukpILM53+MjBT9Xl5K7oeW\nzek38bBhcldUkun3WP92jvaMHdKUDHEnM3jeHpmkwTGYRbw5GwUA9h4i85nXJSw4KvUY+gWQecq1\nLsyy61GeFIUvPUHmaOvmksURz5TAOjHWyRljbfq4kHmrGM8+6bBkLnTwJDdX/2ueE+/tXfJfR3vD\nfpqnHm2lyZ1+kJI0ljDXwTOGAlkGS+Y4eJzWbeJB6QYYFU6m/rpsOu/adOl6upup1r20JNnR7mm4\nPZya0poZ2Y7cPq1d5HrkCVRjWeJN1pFy0Y8nP/X0k+f6IJ6SVG5gbplDFfJ+f89qQ46IomMcPCpd\nEcGt6T7uzJfjeGVs+zpxU4x6b+OFOwJY+EBcw3FTKKXGAijUWu+AzDS5H8CjWusgAI8B+Pi3GaKF\nhYXFr0Mt0qF/N1xwZ6yU+heAWwGcAtACQEsA3wO4UmvtzvqVaq1/ltuolNLBV1SxP1ydmsC7Qw94\nR/UQKbEp2TIo8uAISuf1cXYS7z01a5ej3ZIF306dkhVonZ3pvYNslzO+n9St/ZYF5toFU6CG85QB\nIC6EdlvNWPDxq015ot8NPYnHu6eAgkKrdsh+YUxxLpWlhy55YpDoN2nGNkd73WrSge0ULa+DV+rd\nuk9aGn++ilg6bk1p5/TeukzR7yhLdT3D8m2bGuWZeLVfPrdmv/Bg2nmXV9CxzYrffaJot9W6BR2j\nnbu8B4dZCnQAKxP00QZpkK2Y8pmjvfb7f4n3nl9Ec3hLLwpSztgs70/JEQpuxoSzYGuhDNj6MVXB\nhHTic5tf9GuYgl0sSz1+YX6S6FfKgqrBbTkHXvKbg1lJpg/X0c41NU3yqvsyxb4spmzY20iHXruH\ngq/Nm0uS1Q1snn5kQdp8QymxtITG3tyJjuFllL56dhRZiZ/OXYjsBFK72/DVu3WyMx7zwaYLdwQw\n/77el8zOuCY18J4D8BwAKKUGocpNcZtSao9SapDWepVSahiA5PMdo93oPwAAfFq3OF8XCwuL/4cI\n6tIbQV1I6H7DV+/WyXFV3en31BtqwzP+I4C3lFKNAVRU/21hYWHxu+MSi83VCL/qYay1XgVgVXV7\nHaoEMy58kmqXRAtm/uQeIvP2pMGLff1H2mSb6Z0lxRQwevNmKlr91LcJop8zO1dECJnLKYUyYNCE\nuRxSmIlXGSzTNJ0Y1/S9JZSaWlIiubqnY4nHzIMi/r4yzXkkUyArYgpfX+2UJvdgZp42axLlaHMh\nfAA4xMzqdgHSW/TvuWQKhzIeqlkduokrzcXozmTG/vPTbaLfneMo3XjZTuKB5xruphA2jnCmArep\nWPKRP/+Byve898gAR/uNxami3/8mdHW0txSQa4e7JQBgyL23O9r7DsngXv8Icuc8OZXM45atZKB4\nVB9yAy3eRG6A8BAZ9MxkfN1ejBe83wjg7S2gdZd2iO5VarKcC08vCnrmsWPPOijXbTQLxp1kxRNM\nN2gnP1p38xeTgP6obpJvz1XwbhsgxfpPM1dma8b1LnaSa78zCz5u2knVrK+OlQUdXllI32+v38ha\nvtT8wTWBzcCzsLC47NC4AW6N7cPYwsLiskMD3BjXT3Xo4Ed+BAA8NZHMW15LrLu/VJBKYiZZhKc0\nH+ckEFPghmhpaol+e4jvO4KlbfI0VwDYkEXR8ZgAivpuz5VmIU/fDm9DkXwzFbeNC/2+NWef+Wm3\nrA6dwqoq/4GxR/47a7fo98dx5Jrgc3ZdR1kTbTZLt747RqYRL2E87hNMaP/79bJKcyUzd3t2orn1\ndZMC6GtZerk/uz8DI6QJvyGDOLR8mXExfQC4gbl2MouJaWEqmm3JJDfIgndI+tCs2OzHRNmD3GQk\nf0sBuaKyS5iov6Ekx4X3bxsc4mgv2SvvY0sn6teBuQSujJD356b3KD13dD863pgIyZL4aDO5qYLY\n3PJq4oB82PA6jF9szxf9nhhA3PTPGKNn/yG5vvMYX/qDm7qL9zbkEEukJXP/uTaRezk+pnfZfA7p\nIJkbyxKJZ31HH7lWb44JqBM2xbUfb61R39l3xTYcNoWFhYVFQ0ND3Bnbh7GFhcVlh0tNd6ImqJeH\n8XM3dfnZa/1Y0oN/SxlRLSonU/WYodrGXRO7GOm8p1H+/Y89SYVq1wEyl7nrAAC8XMnM5C6HCoPh\n0bYVJZFsz6HztnaW6acezsRQSCoilkR3Q02rGUt6yTxM5vJfb+kq+jmzcvXebKyb8yRzIf8wsUzM\nijP39A5xtOOzyExfY7iAohlTgLtl4gx2Rhhz03RwJxcTN9kB6XLwd6P5O3JCzq0Hq7m2s4Kuo6uf\nHN+LzDUx+qE7He0evtI9simfrjHQTR5jy366d0MjaA36jo0Q/VyYeH/JcVqDYT5uol9mEbm5evrT\nPB0x1Miev5FcdOuziOFx2nATTupBySEnmApagKv8jizLJFPfxYu+xjw5CZAuho4+dIwjRiGAQKbY\ntzBVJg1xVcWd+XR/Bhrnyimj+83r97kaqm2TWJ3ItZmS7VJXaHiPYrsztrCwuAxh2RQWFhYWlwAs\nz/g8qKyO4Bcy9SZu+u0okPn+36wlAfTCfGmOt48iN8UVXShiPXWjZAZwM6kZU7ji6mYAENmGTDeu\ndlZSLvUT2jAdDHemjDXXiMLHdSNtijO/QFTp3Y5MWm4Sb82RyQKcNbExl+Yiq1gS7vuFk6m+yDAz\nD7DEjF1MiLy/oU/g7UrLoU8ARfmnb5PqqJ18z03Uf22lTNJoyxJ29haQeWuarX//jmSyn7maigRM\nulPqSnzwIVVH58ySx7/bJfrdP5QYBLxUPQAUs/v69TZZD5HjVla/sDnz+8QbZrUb00ApPkFj2ndI\nMkZSD9I4slgNvCVGZQXuDjvNFtDcPZLFEcrW7SymK3HshHQ/9AomN9Jsdr1/7CsTO3gRh1LDhbGL\nKavxuoa9A2Ui075CuschbcjtYW5S313GCjUMkhordYXaPIuVUqMAvAmqgfea8f7NAM4uxiMA7tda\ny6yzi4DdGVtYWFx2uNidcXVFo3cADAOQByBeKTVHa72PdUsHMFBrXVr94P4QQFwth1w/D+Ozu5g0\nxmUc24l2Zb4ukkPZaQJVEjZ5okfZL/+0rcTJfGm0LLuUcoh22/OTzq+m5dqUpqAl45Ze203yRNdn\nURDQk3GJX7m5m+jXnO10pseT5nCrFlLDN5NpNiew3erort6i38OfE1+yf3farZn08IQ82m09FBci\n3ttWSJzm4nKaz2QjNXxzOu3m+gbQ/TlhKOKlHaKxnz5D88LLLAFAL1Y+662laY72jXGSW3qccZr5\nbvjT6VKLeBMrcdXKiXbXj40MF/0S2TqL9ZPzvnkr3ZPbryQOt3MzuUNNPUS7vCJm0bX3letxXHsa\n+9HERQkAACAASURBVMR31znabgY3uze7xv2s+vI9xg6VayLzclm+LWVwdPJCmk+e0t/FqF4d3pp2\nr0M6UOB0c47c4fdoSzvoDUXSUuWW232ME9/FS0oGcP1pRmcX1wEAPa8n3v8RYydfV6iFy7gXgBSt\ndRYAKKVmAhgHwPEw1lpzseSNANqiDvBryi5ZWFhYNAjUQs+4LQAuEJODX37Y3g1gQV2M2bopLCws\nLjucb2OcvzceBXvj6+YcSg0BcCeA/nVyvPpIh353XZXDfmcemY8BrVm13IOyMu+StaSK5uEpgwTd\nO5Ba1V2sevD7RgCvWwCZXU0b061ZnSzFt3mQRIPaaRmyIvK7d1DV5hk7KOV0wXIp4zx6KAlne7qS\nicw5woAsPfPBagpY9jOCau29KFBzgqVyJzC+JwDsyKDr6hoiy+ZsYFW0wwPJtDTdCnyeBjLVugc+\nkCVspj3U19FewpTuVifIgJgLK3d1Vz/ifX+3QyqV8dTmO/76gKO9aY883j8nUCXlw6zkz5PvbxD9\nbhtPriPTvD90jMzit6etdbSvu1YKED4UR4Gluz+hL28PIw19ZwoFff8wjAKHK4x15sdKhK3eQQFR\nnnYNSDfD8ZM01opKyc3mgTquvpdvqLvx4y1j35Epd/cU/WYl0D1p7y0DtHll5KZJ2E/fC15NHJBp\n7lx2YFCkdJ3MZwL15lqdfE1UnaRD3z2rZvG0jyZ2EedTSsUB+IfWelT1388A0OcI4nUFMBvAKK11\nGuoANXZTKKUaKaW2KaXmVv/trpRarJRKUkotUkr9rMqHhYWFxe+BWrgp4gGEK6WClVLNANwIYK5x\n7CBUPYhvq6sHMfDrfMaPAtjL/n4GwFKtdXsAywE8W1eDsrCwsKgNlKrZPxNa69MAHgKwGMAeADO1\n1olKqXuVUmcLaPwNgAeA95RS25VSm39+pF+PGvmMlVIBAMagqkL049UvjwNwtmDbpwBWouoB/TO8\n81OVKf/eJDIFH/6CWAKNjPzd0DAy1a+O8RPvvfwRmcwjIsnEScuRfORUJnR++2AyOWNDZAR4Tx5F\njgOY2WXWadt3iNgKvPL0nnbSreDOTPObu5Co9n1fSoF2XmesE6sVN8AQtS9m5vjMLWTemTXRjvoR\ncyHTiIZf35dcBLz+2t1TZJ2w2K4013lM8L6noQL3z3nE8jl8mPr5+EiXUld2Xdw1wd0SgExt7uxL\n96BFUylKvp3x0TelkbkcEiYZKBsS6Vz/YkL4APBVArmYBo+g93g6OQA8+NV2R9uVuZuGGsp03ow1\nkXH43OnAALAzgxg9D44m9scUVqgAAGZ9T+tk+HBiFVUajBZu+h9jFcTXrJMbtbuHhDjas38iFsf0\nLZI7npFP7IrOfvJ+T+hA87uducPWbpXH6M049nlsPvn4AODoUZonPi91idpoU2itFwJob7w2hbXv\nAXDPRZ/gPKhpAO8NAH8GwF0RPlrrQgDQWhcopbzP+UkLCwuLekYDTMC78MNYKTUWQKHWeodSavAv\ndD1vJPDAms8BAJ+ULUN0r36I7l0nwUcLC4sGjpLUbShJ3X7hjr8Sl2s6dD8AVyulxgBoAaClUupz\nAAVKKR+tdaFSyhdA0fkO4NrjRgBAYWQbLCoHFi1PQZ+uZIKa6bFD2pEp6NVCmnuBoRTNXr+fzNbr\n+gSKfmtTyJz6gaWBvjVBKsgdYIT+uaspTXMyY08AQHopRal355EJ9vSYSNHvCEsrffwHiugWGWXN\nzzBFrrIySpUdGCrjoHf/a7Gj7R9CZmBKuozWj+1HrpgWzaS7gDM51jN3zilDEW8rq1v2xl10/ZNX\nZYh+5eU0Z55M+c3XXUbXr2pPLpwr//GOo83dEgAwIZru6ZSVmY52VJB0CQSxVPbWzB3Uzlteb2oB\nmdwlJ2Ra8rYkSud9YTy5Af6zVKZyF+STSf+XW4idkVgk3RnjI8kgHPGXOTSm9pKaGspUCnkq9xWx\nsl8zlmDRxo3YLr2DZQGGD5h7ow1zr7UNkm6zJuyhNGYkXS9nagBAAJvDfUWS3bSHpbIP60RsJu/e\n0o20YDdTkmMKfl0N99XYW2Ic7dSSSAATHH/fvFi6sC4WDTGB4oJj1lo/p7UO0lqHoiqyuFxrfRuA\nHwHcUd1tEoA55zmEhYWFRb2icSNVo3+XEn4Vz1gpNQjAE1rrq5VSHgC+BhAIIAvADVrrknN8Rt/5\nVZWQCxfb6RdEO8AkgxsZz1KPjx6XurDdWFCI/5K4NJe/K3z3wSv4BnvJX+kt+2hDf/9ISvV88UvJ\nUxzcm9JWAxhH+MslckfVpzvtFoa2p7GeOi3nmWv6LtpNYxjMeNQA0IXtWFZn0fR28pFcUJ6iXHRU\n7gY5J5VXCy6pkNzVPFbpmn/Gs6W0TjyZhjO3BrMOyR3V7Nc/dLR/+uofjvaPSQdFv11ZFIx7YFCI\no22m7HLks7EeMdZIE5aS/mBfKUQzh5WMWs94zBGBMnB6bVfarWeU0HVNXyIDZGWl9N6/7qAdn/k9\nn7+XAlWRPpRS3ctfWkK55XS8mZupTNKQKLkumjehE1SytbW/RAaeuS53Z386r/m1Lz9JltoZ400u\nppXBBKo8naVh3bIZ/T15yfkZXwE+tMs3S3U9OiC0TnjGj81JrFHfN8bVntdcV/hVGXha61UAVlW3\nDwMY/lsMysLCwqI2uFx9xhYWFhYNCpeYB6JGqJeHcXJ10KiScWFfZsEiHrQAgONM63hYjAwS/LSe\nUoefuYZUt95dKvmabZl5v5dVTvZpLc37igoycf89m0ybvjEysMLvLedNenrK4/UPI7NzMTNNI4wg\nRjbj8bZg5l1kGxkEm8IqOHPXgZeLZBIm5lMw87DBkT7EFMgSGU90Yn9pwq/ZQ+6h1ow/u/+AdAM0\n86X7WHKMXCLcLQEA1z5BVMyPNpNaWkGxDIIdO0bH5+p4haVSi/jpwcTPXZtNro5XZuwU/TyZKyqx\nvUy35cfsHkmmP9fpBYBPmaYv56aPjpMqa81YCvmyFHK3HCqTY49hx3BiLoZnv5XusFYsRT2f3dME\nN5m6Pr4Ljf2rrfRdKjL40kHMJbCQVVaPMNwjybk0769d2VG8968V5IrjazDcV5ZdymP3tZylRke2\nk/eAfwf9DD52XaEBboztztjCwuLygy1IamFhYXEJoCFS2+rlYVxUVMWW6BDI+MOMn3qoWEbh/zqO\n3A++ztI8W8CUp1JZ9D6srTS78pnJ9MQNpPZVZjAItrJf0PZhlGLa0d9Qi2Mm2fd7yNwbHi3dKEys\nCj1DaEyfLpNulCA23tOMc1xklHvifNAjzP2wKlmmkfLKzC0NJbC2TAnuOsYS+OvX51e2cmdm8a5d\nMu21nLmR4j//io79pMwQDWJll1bvpTnjbhMAGMsYD2GeZLZeGyUV0o4wl9Jq5hJoazAh+Dx5OUtx\n+etZ0YAN2cTWMAM++1JpfjlbI8o4V+Vp+lwSUzQLNkz4eKYC+GD/EEe7ucGxT0shd0lXlp4e5SfX\n47xEGl8XVr17psFUuX0AuVXeZ4L0o7pIN9fcZZRCPt34Ll3DCh6UMjfFx8sl/5wrAp5haoihBg88\n2o9YHZ9sysFvgUuNtlYT2J2xhYXFZYcG6KWwD2MLC4vLDw1wY1w/D+Ps5CrXQu9ryf0wZQmZY2Vl\n0jSPYILyOSXShXGE9c0vo4itX2vpzli1IdPR3szSRZ8cGCr6lRwnt0V3RoqPdJdm5qJ0lhzSi0y/\nlGKpkFbE2AVRbeg6CnJl+nJLlkjhxlTBevpKEvwGD4pyJ+ygajBubjL9+9WxFAF//Ifd4r37mRsg\nrYQSbHhaMyAZJD2C6fr7R8ho+AtPvEHjve0mR7u14RLguQNHWSKKh4dkoIwIo+MvZ+Z840Yy6YMH\nZfKYq2NYN6nst5YldgS2lOyUx2dTJel7WRXpQ0flNX77A+kl8FRzs+L31e2J1TDjB2J13NhX3p//\nfEXn3RFO7rBr42S/t1m6et9wGpNTE+kFjQkklkR8Jq0Rd3f5PRgRTm6ZpSG0BqctkslKUcwldMq4\nyH4h5OZKZoqAzsb9DmJMoMaNyLXhYtQXzGKJKT8TnkfdwAbwLCwsLC4BNMBnsX0YW1hYXH5oiG6K\neqmBN2HaFgDAtl2kBfDYdWRWb8ooFZ/hVtLojtKMeY8ldzw0IszRXmrUHOMmc0sWsc4tkWT8HYzs\nX8GI/hEGUf35EaTO9toqikqfMGqTjexIJt08RrJvYgjoOzNx+fhdRNq/ckA70W9zEh2jNWM4mAwU\nXq69b5SMlB9kLoJwVlPv+w3Zol8hUzt7cAIJr3O3BAA8//pjjvbkb8j87tpVMkuCWPJFKhMvb2WY\nt/HbKKJ+5dAIR7u5YZqPZGb7WqbT8clc6Zbp0JHcFmO7SUYG3zH9sIXm/fRpKYDOVcw2bqXxtQuV\n69GlBd1H/lUqNhJWBnSmcWQzFtCeVMl+4HUDeX08s95cEtPz4CyG7XtlfcHxA2k9zV5B352P7+kt\n+t305ipHeyy7B4A0+fk9OWAkthSxa05n7qbHJ0SJfrzW4rIk+b39+o6YOtGmeNlQ4Tsf/jI8/JLR\npmiIdDwLCwuLX0STRjX7dy4opUYppfYppZKVUk+fp8/bSqkUpdQOpVR0XYy5XnbGZ1Xb2jH1Jx58\nC3GXKZEnmArVgEC5Q521m3bXrdiuZKuh73tnXyodk8vOlX5I/povWE27hZuvoN3vuiSZHtuZVbHt\n4E071BX75Hl93ekaO/kwndmWMrAylaU539KTdpTm3Shku9rDrLLxmHCp4vX3hVQKyVSmC/eicfQN\noABhsaH1+8FaSjVf/eHnjjbfCQOAU1NaxUv30s5OG6Pnad63xtI1frNTVn2+MZp2ssGtmbKYcbzZ\ne+lzOUw9rJeh9TtjPe1k7xscIt4LdqPjN2G27OfMOgGAdGYlPDuMdopL0iW/ewVbj/+9hrSyTxtB\nsMZsdxnKVNveWiu5uvmlFNyKZ6pyL14vdbg7eFGAlaco/5QiZcW/Z+vsuXEdHO1cI2X+m400Z+9N\nlM+Wl5anONrHmdqguVv34rrZybQudm3NEv3efnSAo22u99t6BNbJzvjfK2pWJ/SpIWFmdehGAJIB\nDAOQh6oCpTdqrfexPqMBPKS1HquU6g3gLa11XG3GDNRgZ6yUaq6U2lRdeC9BKfV89ev/VkolVv8y\nzFZKuV3oWBYWFhb1gUaqZv/OgV4AUrTWWVrrSgAzUVXvk2McgM8AQGu9CUArpZQPaomaiMufADBE\na90dQDSA0UqpXqiqntpJax0NIAW2OrSFhcUlgoutDg2gLQAeTMmpfu2X+uSeo8+vRo3YFFrrs6TO\n5tWf0VrrpazLRgDXnu/zG6tNwHlFFKh7/2Gqg3f8lAyC7SkkDqmHEexJLySeYzhTgQv1labq2kwy\nM7m4fP8IGYDhmMsU4aLCZb+m7Gd0YzpdRxtDTSuacZX/w1TgYjrLH86N6yjAkM0UszqGy7I5q9eR\nGyUkjFwT2cXS3XLgAPGH/9BPclc37qfrX59DgZW58TIVdeesbxztgffc5mi/+50MkA2KC3G0sxgv\n1s2YC8+29PdjH1M18FiDF8xF8xOZWX1lV+mKqWAVkrkJf8gwuRuxe3XacMN9toME2zv7kZn90woZ\n8GnWnEzu7/zJ9N+0T7oBolixg6fm7HG0W7vKdctV25BOLjBe9gsAcg7RfTzJBN/XZ8sg9+wECtS5\nslT4XYYb5XqmzLc0le69ycPdn0XuNjMlP4+tLV4K6+oouVa/2k6unj27aG0NHSoKLaN1c5qb0pPS\nVVZXOB/POHX7RqRu33jO935v1OhhXO1H2QogDMC7Wut4o8tdqNrOW1hYWPzuOB+1LTImDpEx5N5d\n9MnbZpdcAFwnNaD6NbNP4AX6/GrUiE2htT5T7aYIANBbKeXgpSml/gKgUmv9ZW0HY2FhYVEXaKxU\njf6dA/EAwpVSwUqpZqiq+znX6DMXwO0AoJSKA1CitS5ELfFryy6VKaVWABgFYK9S6g4AYwAM/aXP\nZfw0BQAwKDYA4d3jEN49DrN2kJlpcnWHdiAXQUaJrKqcmEjX/NCAEEe74rQ8xusLKQI8lKlfDQmW\n7oeCISRYzk3E6EAZj+zJxLiXMuZG88YGf7gpcZpfuIm4uk98sEn082NVfCuYktz4rpIjXMlM892M\n4dHI+Okfz1J2zTpo13ckF0nBMeK4crcEAHSbeL2jfR8zb182BMvXb6NNgIsLmcjje0q32SHG/jh1\nitpbDeZCwGDii/Oqz0VHZQXjHZlkZjdl89yksZwLV1ajr6OnVCD7eiutu5PMPebrJ+/3cabUtpzx\njOO6SBcLZ/TEM6XASEP5bNqcvTSmTr6OdlAbF9Fvz26am0dv6OpomypkmxhbgZ9rX4J0Pb3OGB7X\nzV7paPfuIV1Zbq2IBTR5jWR4cHbFziJyKf1vuVQiDGHcbP9A+p7dHyeLGKzIpO/P/AVLUJyyDXWN\ni83A01qfVko9hKqYWCMA07TWiUqpe6ve1lO11vOVUmOUUqkAygHc+UvHrCku+DBWSrVB1c63VCnV\nAsAIAK8qpUYB+DOAgdVBvvOiRbcqd/Kou/rUfsQWFhaXDTwiYuARQYVcMxZMq5Pj1iYDT2u9EEB7\n47Upxt8PXfwZzo2a7Iz9AHxa7TduBGBW9S9DCoBmAJZUa8Fu1Fo/UNcDtLCwsPi1aIhCQfWS9PH0\nvCQAQBpjNXAx9CAPGYXfxUS/KwwXBmdD8HpxZnnx9Vl0jJ3MLDp9Wvab2JtM6/XpZILd1F2ao2+t\nJNONR8ojDOFsNycyn3/cSpF704QPaEWJLumHyXWwK0eqwHkzhgJP6z56UqbvdvYlM9M0279lpvmK\nKZ852p9Nf070S2Fpujw5ZF2OkWruRL/hAWx8Lxrl0a/rS3GQSpYE0TdACrTz+nguLE08m7mNAOCJ\nIaS4t4kxUHbsl0yDu3qRCZ5XLtPG12fQumjKXEyFhjrgNdHkLnJuSmP6aa9MXx4WSfO0K5/cFM2N\ne5DHUoWTs2mdRRpi9eM70XkT2PflgOGy8XCmtXDyFM1tiIdMoHJl9SUPMddLYqG83igfWj9XhEnm\nz98XJTnaA8LpegcGSzZFdild/5eMWXFrd5kmv54xcKK8ZeLIzTEBdZL0MXVjZo36/jEu5JJJh7ZC\nQRYWFpcdGuLO2D6MLSwsLjs0wGdx/TyMT1YzArq0pYg1n6xWTrIOWPFRigeaboXWLahvMBMOn71P\nMktOMhWunuHnT/RYsJsYCq1YFH72bknuH81YDlyPYf9hae75M3Hvfh3pM129ZVIKHx9PKDlaIZMA\n2nlRtD2mLR0jxE1G4f/F9ANauciEA+6aGHLv7Y62r7MUeV/DEmV4ckjqAXmNE7sQG2AGS6KorJSu\nkz35ZGZzc35rvnQrpDKz/Z5hpDLm7iJr+fUMJn2QHUw7It1IiCjrTuNbmVws3nusP7k67pq+2dHu\nGCbXCBelTymm6+jgI+d9HXN79A2h+7PHcANwt9wNfciNsitXsoU25tDxVjLWiY+nPG/rIGJQZDMF\nv+Lj0p1RVErvdWLfP+6WAKR4ffkJ6RosY+6NEqZsuKuwRPTj9fHasOIJPyZL1w7X0rimgy9+C5yH\ntnZJw+6MLSwsLjs0vEdxPT2Mz+rpujvT6danUNrmHkOD9ebRpC61a7/89f1sNaUsH4ylX9hZS1JE\nP56a6812l4+xIBAAxLMqwKM7U/ptpVl6JoB2ZTxotXG/LA1Uwri1YxlfeqmhKhfYmnav27MpaDft\npu6i339WEZfz883E7z11Ru5CJ8ZSwPHee14T79349L2O9oAw2lGZgbm4IApGLmU7yjZGau/rTBGL\n6zJ7espgDH9vaw4F47IOyN1gH8a7jfGhHXTJcamct5+VWhoRSlbHpgy5Rv7zIwWcogxd6m2FdF2j\netMOdUJ7GbR6bzOlZfMSR0GtZYAsoBXNzeo02qE3NfQZ/Vm/4e1onXG1NADIZHNWXk6pwm5GoI8H\nc9uxQHZakQx6Hmap4jzGvb9YpiE3YwHHzVlSZe2GWLo//D7OXrdf9HN1pbnxZ2vBLON0dRe6/g25\nMn27rmB9xhYWFhaXABreo9g+jC0sLC5DNMCNcf08jM+aefN3kTtiUhyJvwcPjxT9X11OClpRRlpp\ndybEnsVKKA3pHST6PdCbUjC/SySeLec/AkBqCpnCb+WSy8GkX7vdQGWi/vkFlRoKCJTju2sQnfff\nLCV70gA5vn1FFFhpycrrPDt/n+hXxqpNX92NTPMmRooRd01M+VAWJ/hhJwUjT7GA6DEj4PbqD3Ru\nL+baScqWQaEPmCvl5WV0jaZp7s3cG+UnKSjk3UoGj3YxHvg7x+l6u/hLDvcLi5MdbT9D2JwjtgPN\n05Dw1uftl8/Wz+trZWrvyChyMR1hAa0FBs84IYX+fpkJwHMlOgDo6UfrZEEq3Q8vdzkX0Swwt4HN\nZ2yQTNdemUTmfT9WjsoUtT/J5p1fx6B2cl6msRJcDzOZAQC45d/LHG2ftnSu5yZ0FP0WsRJK25ls\nQc9OMkjXpgW5M3ycf5unpmqAT2O7M7awsLjs0BDrydmHsYWFxWUHG8A7D5KreaqHGCe3kEWKp66W\n0duXryTzJ7lEpgdPX0/mVBOWzhpo8DDfYGYnt9x4JBeQpjVPiX3WqJCbU06R/HuuJraHk2GaxzMh\n9xOMTzl1qTSD/Vka9dbtFFFf9NcRot/t04gLO52pp22dMUv0+4C5JmZtla6YF0bSeD/bSbzgrSmS\nrRDNzPt7exLT4PFvd4l+f/o+wdF2Yum2gyIlV9eb1UR75VtKlb57tJxbV5ZefYyZ1ckGv7kXM617\n+VN7ZoKsqbc7g0z4dp7SDcAF9R8ZSWpxvKABACxOpGPwSuOBBmNkdEea23vfWedoB7U7f3GCvXnk\nDjPV2A6U05oZ3pHWagcP6bL5JIfWE1e6M4/3J1ZBffZOch1sypHrlh/j38uk0P5zd/VytI8z19Zq\no6r7njSaM3d3mqfO/vK7GeJOfz/6XQJ+C1g3hYWFhcUlAOumsLCwsLgEcFnujJVSAaiqhOoD4AyA\nD7XWb7P3nwDwHwBttNaHz3WMWXN2AgAGDCDzdH0aRZubNZXp0CWshLyXkyTZZ2QQab9jezLjPFxl\n6uwXP1Lk3d2TTLwewTIqzdMm3ZmptuuANMEKWa0y35Z0rtxSSZ4fGErR8JYszXvytLWin88VFHkP\nZGm+ymBIurAxbfmCKlvF3jJR9OPE+iaN5L4gs4yI+q7N6D1eNw8AzrBjzGdp3Z5GxH9LfKajHcyS\nLxYaabSxoXRd/NirkiTR/5rulHCxeT+5pYLdjZp6LrRcv2WJQjzlFwD27CC31/+19+XxVVbH+88g\nOwGSAFlIIAn7GghL2BERBEFxF3Ct2ta6t7bu7VdrrWtdsNX60ypqFSqigiLIIovsBAgQtmyQhYSE\nhC3s6/n9cS93Zo4JCXBvGtLz+OHjufc9edfznntm5plnJt/TR22TboqDwiUye42umlMkFNNuGMbj\n9uuF2t0UcbWu73YG9a3ajQuEK+VGwSRaYSWsTP2e6w3eOobHyNocfX73j+SiCH/7ml1Auwt0+vfQ\n9vwMCkTa9J6DWoL8sEh5rmGNn5aC/SJdE7K2JADERfPYzxPb7CIBacX8jO/qH622zYN/cPFNxRVb\nGZ8E8KgxZh0RBQFYQ0RzjDFbvRP1cADZZ9+Fg4ODQ+XhIlwYl+9aMcYUGGPWedsHAWwBl6V+E55q\nHw4ODg5VBjVAFfp3riCiECKaQ0SpRDSbiBqX0ieaiOYT0SYiSiGihyuy73PyGRNRLIDuAFYS0RgA\nucaYlPL8M916xgIA1m9k0/IPN3X2te1y6k2Ea6JZI+2muHkYm2dSUD4+QkdsH765m6/9lSC0S40J\nAJgt1NkyMtnL8vtBWsMiQ9TimyPI7fdbySb7j7G59+W8db72rWO1ubw+g5MFiovZXbA4RzMcpGui\n123jfG2pWwAAM4X6XJsIrRC3Oo/NQqnI1aW9ZpYsX5nla4cKU3pfyVHVb4QovZ4vGB71auvhNDiG\nGQ/vZjHD44Vbuqp+UgdkSTKb42Nv76n67RRC8VFC6yE2RI+R4yf5/N5couu5tRZJRPFNuZ3QTt+L\n9YKV0DmCmQH1LG2TPpGspXHsCJv+BQWaBfTAaE5sksk2nZvrZ9VCuCa2CVP/V331OHvhe07Q6SbU\nARv31GZ/ejE/u1+KxCNZfAHQLox+rUPUtrd/ZNfM7wU74/qOul7j35fyva4nEplaN9HPZ0hbvtcb\nd+jz8BcCSG17EsA8Y8yrRPQEgKe830mU6U04244rHHT07nQqgEcAnALwNIBnZZeK7svBwcEhkCCq\n2L/zwDUAPvG2PwFwrd2hHG9C2edckbJLRFQTwAwAs4wxE4ioCzy+9sPwTMLRAPIAJBpjdll/a677\n1e8AAHklxxHVJRHRXRJxc2cO2jSxVMFeFUplbZrp4JEsB1TvEg6QHT2lU3uPn+YVYE3i35zv03U6\na9um+lf7DAoOaF3hUKE4ly0Ur3pYHEqZ6vltKh/rNquq8GqhHjYgijmpA67TpZDefPcPvvaglryi\nMNDP7XVR0felUR3UtnsmJ/vaQUJX165EPW0DP7qrhYLd6h06UHOruJYkETAKa6DvZVoxr5rjRGmt\nJnX1814sUodDRDmhjGK9Ik+I4nv9wufMff79zV1Uv/HdmCP9+mIdcLuzO78TH63lYN42Kxh1XTce\nn8eFQt6KLL3irSN45rfFc6q+XRBzymYO4B0VK+ORbTUfObwB36c527SVJCH3P7odn6tdpuy4qC5e\neJjvZ2QD/V5NT+Nn/5tEvQp/bAZXtn6gX6yv3SFSr+qzi/h5/5TLQdq+zfVKe4JYQXc/nYWNq5f5\nPn/x3ut+Kbs0y9IjLwtXdgk7p+MR0R5jTGhZn0vpHwtgIYAu3om5TFTUTfERgM3GmAkAYIzZ7Sno\n2gAAIABJREFUCMCXcE5E2wH0MMbsLe2Pr7/3UQDAqtyznouDg8P/GLr07o8uvfv7Pn/x3ut+2e+F\neCmIaC487DHfVwAMgD+W0r3M1az0JpQ3EQMVo7YNAHArgBQiSvYe/GlvOWt5Qs5N4eDgUCVQ1mS8\nftVSbFi1tPSNXhhjhpe1jYgKiSjcGFNIRBEASl2Ce70JUwH82xgzvULnXBnVoRNfXAgAqC1SZ+8Y\nyKbk9HX6eq7ozFVnm9bX/OHPkzidd0RnNqX3H9XmWVohB8XSRVmfR0fqVNznp27yteX5XdtPm2qt\nhJm9MIP316ie/j2TKcALtrKboo6VNr1fBOBWfTrZ1176zYuq3w0TFvva4eHMl87N1pTu0UM5QHTg\niHaxJAhxdBks+/gHnfZaV/Cin7y2o6/97GSdstq2delWWe2ami9+5DjzS3cJTnM/y2WTKio9y3Te\ncYm6qvBmUcooNpRdHV+uzFf9SkTA8ZZLY9W2aUkcIIwQKfTSnAd0enCOcGG0bq556rXFc50+m/m+\n9YIs91oPdo/kinvROUab8LkimCvvxQ0JWvz++f8wH7meGIO1LM7++MGxvvZC4TYrOagDwPVESnp4\nsD73vrEc6KwlROhXW5ZupiiFlSmKNlw9pLXqN6Itj5/pm7Ur5l9ju/rFTTFnc9kuHokrOjU7VzfF\nKwD2GGNe8QbwQowxdgAPRPQpgGJjzKMV3ffFmDXo4ODgcFbUoIr9Ow+8AmA4EaUCuBzAywBARJFE\nNMPbPuNNGEpEyUS0lohGlrdjlw7t4OBQ7RAoaps3y3hYKd/vBHCVt70UwCV2n/JQKZPx/v0es7FD\nGVWaZe05QItgJ7TSZtzfCjnN+bCIROdbacklh9lUH92LTcQWQVp1K0aIw9cVJt5RS3hdBh+HtmX+\nbHK+Tileks7ug5rCpAttqJkGc//5ia+deMd4X3upVROsaVM2pWVaclio5pMGiZpoXSL1NcY15s8H\nT7LroHZtbRjlZbFp93kS35fe8dqtkFPIjIIQUQ8wxGLFDG7O5ujbX7E7aFO2jvM+OJQrQsuaglKQ\nHgAKhKrej2uYCSFTgwGtuHbgmH6OrZrzdd0nOOJPC8YAAGzayq6z+4RKXyOrkrlUWUvowa63LlbN\nOqnu11ZUmD56UrsJNwgXi0whr3WJfla/HMVuqTCRnv/pUl1TT67+WjZlN1fqMZ3uL91IfxnZUW37\nULBOJFujd4xmU2Ts5GcXKtTtUqznfWkrvjcRjUpnM10obFmBiwFuZezg4FDtcJ4uiP8q3GTs4OBQ\n7eBWxmWgZJ/HBOoRw1HVj3/iMt9BDbR5++cRnM5ql/IuKeGU08XpglhuRfjXpLKZuVewEJJ3aZWs\nAcJ1kiLShluG6HPK3cdukBVCQN7+Bb6sQ+mumD/+9g31eezjv/a1ZTn1XuHaLbO+DZuPn3+x0tfu\n3EOn5V4lEjjSrWSJ9kKYfMduPtaeIp3AMHwYm6fjE9g1MXGlNn3Tt3Jqc4SoiZYQE6P6yXLyUglM\niu4DupZhyRHetjpHu55k6vBxkeQzXYimA0B+AT+fz27vobYlPs+6YF83ZhfLGVfaGdQWqd2Zu3lb\ncpqO0t/Un10d60SRgDoWq2H9Jj7H64eyW+WIlaSRmcb93ntooK+9wkob3iXeg0kL+W+kqwkAXhvD\nsgMfzubx0zZOvy+NhOLaQ18kq20Tbu7ua3+Wws9+ygqtJNe7LbOgdpWwm2K0YEcBwHaRen06QGyu\ni1EoyK2MHRwcqh0uwrm4cnjG/17tEer51QucJ7L0rZt97dM6xoLl+bzitcsa1RNc1smrmV/aOlzz\nP0eIirnvLs3ytTtZ1aZXpjH3MltUKbZTbFcLnd0t27lfYifN/6wjgnb/fPYfvvYLb2m64XzBQZYV\nm9tE6uuY+ROn894kRJLmJ2tubZ06/Lv6uMWlXprDwZqlm9lieODyONXv2cnMXf3ttRy0mmmllj4w\nMNbX3lLMq9CkLB0UuqITWwn/Xsarxjeu1UJBk1L4WrIEz9YWHooO5pVs+zAOZq7ILjtFuW4tPX4K\nxAr4ui5sTXyapFd5A9qwhdJB6GG/syRL9ZPjKXc3pwMfsYKPL1zJ9/Pvy8tWnB3blcfTm4s4bXhc\nLx1E/UEEKUODOAjWKVxrQK/P53MaLq4py9KA3io43LdYAdvr/jLL1x58KVutr1/TWfX7/XQO0hbt\n5eN2aKmtvf8T+tAbC/SYubprhF94xsvTS00G/hn6tQ254OP5C25l7ODgUP1QJabXc4ObjB0cHKod\nLsYAXqW4Kf610mOWZe/loEP/aOYanra0NqaJVMZiS0s3IYbNwp0lHOCxL6O+TL3uzmm1/1qtg1FS\nF7dFYzb3Plico/o1FkHGbi35HL5drvulTv/G177vzw+WehwAWLCVzcyBIj00IcJKtxX80gKhuvXT\nNm3e9W7JprStLBYsFOdCRepsdGPN8TwsgknrBH+6S4TmLUv9aSnQbVFhsSSTz3F4B77GDTt1Jea9\nIjX8RmGmT9mgqz73jeV7I0n9dhBIphHvPqSDhVKNb99hPq7cNwC0Dub7eeyUqFi9R/PKFwlt69sT\nmc9eaJU1kjzwHft5W3BdvR7KF2M6R1RT72DpdcvJpr7gi2+xqlxvyeGA9T2DOdhoP4ORIpB94LhO\np5+bwSb/UlFd/O7hOs358HH2NzYWfOwJ07WM771C2/m09d4+fllrv7gpVmbuK78jgD6tg52bwsHB\nwSFQqBKz6znCTcYODg7VDxfhbFwpk/GZCsrSmlyVzyZs7Uv0nVuwissk1bNU0aQSWNtIdheszdD8\nyqFdfXLL+GYLm7tpOzVfMymVTf9woeK18sd1qt+1N7Hm6qY83od0SwBA+2uu87WPCZaE5CkDQMco\nNot3icrTxUe0eduxCfebt41dG22a6qj5R4s4Qp9olRDK38vXWJOYhZB6XEfUCw/wOUr3kCytBADj\ne3K0ff1ONtvnrdMMj927ef/Xd2XmwpKN2v2Qs52ZJVd34nNfsX6n6tdMpJSHiHHx8ex01S+mJbvA\nXr6qk9o2YVmWr71RlL7abpVJenoEm9LLc3msrsrUanmrV2T62k9exmwXWX4LAHaL9HxZUTzJqg4d\nIpgRsoJzfol2c/VpwW6Urbv4Pq/ZqpkvoSKF/p05fK5PXaULEEwVPOjEljrN+YRQtMvdxv3W5Ohx\nJllB24QSnyzBBADzhBuyU7ROG/cXLkafcbmqbUT0oVfDc4P1/UNEtMVbcO/lwJ2ig4ODw7khgKpt\nAUNFVsYTAfwdwKdnviCiIQCuBtDVGHOSiJqW8bcODg4OlY8qNtFWBOVOxsaYJUQUY319H4CXjTEn\nvX2Kf/6XjDOB74xdbNL2imHz266RtS2R1a9sNsU13djcPSlCsX1a6ASGFg2ZATAjnc0iWzhb/jom\nrWFmxFU39FX9gkTU+7OX/uVrj3roLtWvs3A/zFrNiQT9Okeofgmidt78dDZV11oqcAuEkH0PYZru\nPaJZAjuEKf3wMB3l/ngFM0iOnWRmQFwzHaE/dJRN6csE+2FJhjal24awGTtPkOsHWaLx9UXCxQ9p\nbN7fOkgL968TqbmbiziJZMygWNVv7yE+v7hQNueDg7XLZnwfZs+UWO6CHkJof6dwv9SykoskY6R5\nI3YRNLRM7l59+V5v3sPuqzVW3cBe4tnZzBqJjuE8PteIc4hoqI/7zlxOBuopqnx3aa3T8YtF2vTI\nnsz2SN+tx1mUYNbUspaMm0Qy1KgRnOhxY7xOeKoralK+foDf2weG69R9WScyY68+D3+hWropykA7\nAIOJaAURLSCiXv48KQcHB4cLQQCrQwcM5xvAqwlPuZG+RNQbwBQArcrqPP/TtwEARQeOI6xDL4R3\ndHO3g4MDkJ68AhnJK/y+3yo2z1YIFUr68LopvjPGxHs/zwTwijFmkfdzBoA+xpjdpfyteWyGh/Qt\nCe7RwlSTZgugifW2k72x2IeMDj8yQguM7xZ14NYJk3GLJXT9G6HPIE3/jZa74POX3/O1b3vqN772\nwaPaXXBYKJLJRJEWIdqUlqLnicKE3WPVr4sQ0fWNoq5fxzCdiHFEuB+6NtX6G4tF2fRZGzja/tjl\n2p0xM437yVp59yREqX6zMnkfMkllaopWT5Mjq7eI0NtDTmo/fC+0QmpaLBuZSCCTOeItMf2jIvrf\nL1qb7bd/wMplTwr9DTvJ50phgl/fmd0ery7apvp1EG4FWR/Ovsaig3y++8Q4kwlJALDjADMjpKtk\n1yHNspGaGzK5ZkAr/ezrC/W4yPp8ri/OS1P9XrhSC8pLSHF5yfB4bnh71a+BSGyZtoWZMLMtbZOB\n7fiZtGuin93NCVF+SfpYl1NSfkcA3Vs2qjJJHxV1UxD0j800AEMBgIjaAahV2kTs4ODg8N8AVfC/\nc94vUQgRzSGiVCKaTUSNz9K3hrf+3bcV2Xe5bgoimgRgCIAmRJQD4FkAHwGYSEQpAI4BuONs+4gJ\n9qzusvfxr2o/wS88Ycm2vTaJOb6t2mguo+TQDhWrii+TNXf18o7865sgVp72yvgzocnaVfBT5UoY\nAG59klfDMo12xlfaxOpzOWu/ynOwudQ5e3kf2/aIUjvWkmqgWNkVibTh6AZ6RXG3WPE9MEavWFLE\nKv+RIWwJJOXrlOo8obS1S2jO/rlYWwl/GsYc3NnbeNVzzNLmXbaW7+3Yrom+9guzdHpscTEf94Xx\n8b72h8v0ajUyhK+5rkh3n7RK85ubh3K/7s00j3XcpXz9L0/j84iN1u9U7+b8d1+k8HVstqpyf/FN\nlq+d9OYNvvZ3W/V4jGrMAbh6YlX75Wbd74hIKc4U5a1qWwHGAUKVMEoEMD9brtP99wmt6C4i5fmh\nwTrgPTODn6OscA4AeUKNbvkyrijevYVOIZepzSsEH7tot+apL9rKHcMsNTp/IYC0tScBzDPGvOqt\nDv2U97vS8AiAzQAalbFdoSJsilvK2HR7RQ7g4ODgUOkI3GR8DYBLve1PACxEKZMxEUUDGAXgrwAe\ntbeXBpcO7eDgUO0QQGpbmDGmEACMMQVEFFZGvzcBPAagTDeGjUqZjH/0KpTJVOZckSrbJSpI9b/+\nCg6sxDfX5viUJA4M/Gqg5qtKyIrI/1zKqcK/sQTVX/821dde8uFnvrZUXAOAliEcSHv1cw5+XDEm\nUfW7uQfziZ/+hMvX9O/VQvU7LgJu23ewu+DXFifzxreX+Nr9Etgt832KDopImo7NEz0u3AeTk/n+\n2QLoaUI0f0x/ppZPswTV0/ZycGTVNuYgp2bqsMGfbmER+Yc+XsP7tkzkrQ35+ucIPnJwAx3Y7SiU\ny4LrsZti3grtzpCc4fxDOuU7o4hNZumy+GROhur3eWMOdjUP5vOwU80jRfXux77lCtMHj+pA7N39\n+fmnF7O7LjVfB5oa12cXgXymv+mnqf7/EM+kgQhq2yWt2sUyhz9XVIDOKtGug9liXDwwTI/BIsHH\nHj6U301bcW1lJrsAs4Ra3LjL9P4GtuBzSsqvmLrauaIs2tqqZT8hafnicv6W5gKQJGqCJx79x1K6\n/4wBQUSjARQaY9Z5E+Qq9MvgVsYODg7VDmXNfn36D0af/oN9n99946Wf9THGDC9zvx5piHBjTCER\nRQDYVUq3AQDGENEoAPUANCSiT40xZ42tnW/Sh4ODg0PVBVXw37njWwC/8LbvBDDd7mCMedoY09IY\n0wrAOADzy5uIgUpaGR/ymk6HBAuho6gdtmGHVswKFyaiVLgCgNoiEp0uorTTftqu+oUK3rFUnZKC\n9ACQ/t00X7vt1df62ik52nzq1py5tt26CRFxK600VwiHx8RyxLtrlFbCWprBJv1xy10g0UZUvZY1\n4Wpb1YdTDvNxp67W7IIGddn0vbILm9mpRTrVfO0GNlUnzWZXTKjFBU0W7IztuXyfaln15v45hzm5\nI4XbY4elAif9e6Pac8T/4AltcqcVs8thm6jYXNcSaN+ezee0pY2ugjysHZvIy0XtvNgYzbrYJWrE\nhQp2QY7FDNiYyqn2V4vagI3q6ucjMTSOz2HtNu3akS6HpT/xMxjfS/OR41vw+yPTq3+yjnVUjK22\nzTmon1msecs5WXweMQ11jcLGjdhNI7nPqQV67O/eJ57PBnb7TLRS9+NujUegEUCf8SsAphDR3QCy\nAdwMAEQUCeADY8xV57tj56ZwcHCodggUtc0YswfAsFK+3wngZxOxNzFuUUX27SZjBweH6ocqkVN3\nbqiUGnhn6r39v5Uc9R7Tlc3lPYd15HnychaXT2it1TkHx7F5NlvUHwuyTNUOYUyEP3yC3RTPPPKG\n6vfs67/ztSOFOtd7P2q3h0TbFmzSFu7T0fp2kWwKypRVqTIGAAlhvI/cg2z6rszVLpubOnFQd+kO\nvt7mjfT+vt/EacS3JGgi/cIsjnKvSOV+r4zRpdYXZLOpmisSdOxkjkcGxPraM9I4BTqjSN+LusKV\n8kBfZr58bSU6rMlit4KsB2iPzfCG/HzkuzZrszb124Yzw2FIjHZTJBcyc0PWIWxgjZ97EqN97bki\ngWHtdp30ESUKEtzfh6/x3ZWa4XFFez6P1SI9f1uhft7XJ/DzPiQSQL5Ymaf63dafzy+9mF02trqb\nrPnXQNTKaxGsx89R8Y7EBWu31CTBtMgVqnoPXqZZMc3q8Ts3TYjcS+YLAGQJJpV0vQHAezd29ks6\ndFrB4fI7AmgXUb/KpEO7lbGDg0O1Q1VTZKsI3GTs4OBQ7XARzsWV46YY/d4qADrpY1B7dj9s2amF\nuCWbwkrJx06Ray9VvYLqavMss4DJ9Iv/xckcf52gMxN/EMkTMllgZBdN7k/O5XNsKszl+haD4LqO\nIulj5hZfu32kTk8Pqc+/g98LEfoXr+2i+j3xVYqvfViwUeLb68SfuKZsWiZt06Z0gojeJwkWR7+2\n2gW0TjBILuvA20qOajdFlmAUJIoS969P2aT6derI5yhdHdf20EL7x0/yGEwTro5LrChMdyHI37AO\n37+pli5JunDLPHGNrvUm1dnuGsiJGD9Yrg45tm4VGihvLMxU/e7oy+6CicvYvVbzEj0uOgvtC+kO\ns9k9khmxKJXPqVW4ZuM0CxKsi3R+3m0i9DgLEq6JWOEqW5CmNVrahPG9tVeV+cJl1S6M3832TXVx\nAllAYHkKuzbG9NPJWT0i+Vqa1NXuksHtQ/3ipsjYVTE3RZsw56ZwcHBwCBguxkoflTIZb/I68++9\nmlcpkj+cYXF6G7bjVe4pa+W+NIlXNn8Yy3zIn9L1L71cDQ/65W2+tr2SHSaqEXdqxmnZ2/frX9bu\n0bytexivcuZt1yuqT0WF5PtFoOvPIlUWACLFsWRA8KTRCnY39OPV29tT1vvaNayU+OvFivz7lblq\n20HBL+0muM/zN+jqyz1Eqm+UWL3l7deWy0JRYTl/D59HL0ubN6wxB3R2COW3Txdmq37yGiXP+LvN\nuppXfDO+7+8n8TUeO6HvWVOxYis8pFeegzrwNS4WOsCHrTTiA0JX+itROTmmmU7dl6t3qaxml/f6\nZgGvqO8axap6a6wU8i8z+ZoTe/Cqe9Yyfc+eH8cW1CqxCp+zQveTKnj/WMBBaTttup5QwQtpoMtC\n/bKnCGZm8fm9b6nqyWBcVKReyUt8tobfkfjoCgmanTOqWrHRiuCCMvCI6HdEtJGINhDR50RUdnEv\nBwcHh8pC4DLwAobznoyJqDmAhwD08FYAqQlP6p+Dg4PDfxWBEpcPJC7UTXEJgAZEdBpAfQD5pXV6\n8FpPSZf1eWzuSg7qqVPazMwTZZeaNtLlioKFwPiGPO73/dsfqX6jH77b124m9rF1l04B/mE5m3XX\nCjWxrZaa1k0J7AbIPcAujPkpOnjUNY7N7NkZHNC4WvBWASBfuGmai6BN7RqakxktqvbedjXzgvcc\n1Nzsd1fydZRYFbUbCQ5tj+ZsZg+I0SbivAx29UxcxiLlUVY69Lgr2d0kA6qZeVqsPqEl7z9WqN5N\ntcTq14t0+DEd+D7vOai5tfuEEto1ndnd8MK3Wqz+EhF8W2dVaR4h+L61a3K/Ns20W2HVdnadBQsl\nNZsvnpzP+x/Xm900662yXZMeGOBrS5fAB9N10LNrF+aIr1nPbqT27XVAObgOj5kru3CwtXW4dqPM\nF0pqzYQIfefm2o2wLJ3dJTd31QFWWXZpYRK3w8N1AG/rTt5HbCy73mav1dNCO1HEIW+/Tsv2Fy5G\natt5r4yNMfkAXgeQAyAPwD5jzDx/nZiDg4PD+eIi9FKc/8qYiILhUb2PAbAfwFQiusUYM8nuO3vi\nBABA4YHjCO/YCxGdep/vYR0cHKoR8jetQv6mJL/v92JcGZ83z5iIbgQwwhjzK+/n2+GpEP2g1c/8\nx2vmvLswy/f9y8LkzjmgTbpuEcyL3VComRY1xV2+9Rd/5baoUQcA8VFsQiVls8uhTk3tBohryqZb\nW2GOr83X5u18wZK4V4hvr8/XrIuTop5fdpHeh8SgtuzOqC+4oIni2gHg61SO5G/ewddxwnLtDBYs\nBGsTrmzNJm62cLHUqaENox+EW6WhqPTbJVy7KRZvZ3eE5My2aaJN/c2FfKz9x5hn3L+lNpFbNOT9\nf7SGzeAOlhksK1bHC3O8UW3NMf/Td8xceWdsd7VNVof+6C4uDJC8S7Nx0oSi3d2CTXC/YLQAwF0D\nmAki07KbWe61y1qxaS7fuQa19HpIVvmuLVgSxUe0OZ+1lz9vEzUE+8fpwhInxT2TKfiZFkOmpXgG\nz/2QqrZFC3ZKgaiT+OgQXV08pYjdTTL1esYGLfn71nXMBMm2FPyu6NTMLzzj3D0Vc3+0CK1TLXjG\nOQD6ElFdeIqSXg7A/z9xDg4ODueIi5Hadt6TsTFmFRFNBZAM4IT3/+/768QcHBwczhf/U26KCh+A\nyDS5czIA4I/39PF9//Y3nCpcskczF4ZdxqR4mxT+lz+86Wt//vEzvvZzX+mo9D5hTg3ozemY18fr\nZImPV7JZfFwkD8THaHdBfKQ21c/gP0k6UtxfuB/iQthUfW5yiurXSKiuRQqT+w+W6TdbJAVMmceC\n3XFx+vzuEjXW/jHXStkdzMLu+46wGfzeNH3POnZkxTCZfpucXqT6Fexkc7ShuA57KF0lBOVniUSU\n3G2Fqt+YUWy23tOTr+P/Zm1R/X47lN1DU9Yxi2VJkk5ykYybF27U6eXTN/O1hIm09hlWHb2CPHbZ\nJPTk6+jTWqvAnTzFF71GpGG3b67dBWsz+Lhj+7Hb4/0fdO29bVt4PPYa0M7XjovQrh3pjpBFAibP\n0M/0rfv6+tr3vcmyuqNHaMW++Uu4EMCj47T4e2IkjzXpRpovmEgAEBvH96ZIuOhG9NHp0BtFQQJZ\n+AEAFv52gF/cFDv3HS+/I4DI4NrVwk3h4ODgUDVRJabXc4Orgefg4FDtEChqGxGFENEcIkolotlE\n1LiMfo2J6Esi2kJEm4ioT2n91N9UhpviKy8T4YRgGkjNgP2WKth/FrDJtG3mt2rbn/7GYvAyev/d\nJm1KS9WsEEHaP3FKX2+TBiKfXiRffLpEm7439eG6dwuFqH1GtqV+JdwbkoxvK5D1i2J3RnIB72P7\nXp2wMbYrH3dLIbtzio7qaPGmAlY722IlXxwU4v1B4l7cO0Cbj3HB7C7ZIxTibLZLmBARb1yH9/dN\nqnY/yDqCzw5n19PSPK0q9+l81kz4+G5mOIx+aa7q9+I9vXzt+oKF8M9FWarfk8Pb+tppezVroLFQ\ne3v2sw2+9lPjtDtjeBt22awWov4zt2otifQdfI3vjk3wtXeUaJbAlyl8b2qKsVDLkiXsLxJx1ook\nqYwCLULfRajA1RPMhVOn9fjOLOLzaBHC70vrpprt0SmUj7u+SDOYNhfymEzN57EldV0AoI5Ioskv\n4TFn68HM38TsikeE6wkAru8W6Rc3RWFJxdwU4Y3OzU1BRK8A2G2MeZWIngAQYox5spR+HwNYZIyZ\nSEQ1AdQ3xpTY/STcytjBwaHagYgq9O88cA2AT7ztTwBca3cgokYABhljJgKAMeZkeRMxUEk+4wPe\nKr9SqU2WYqlrrQ7karjVqDFq2wbBtb2+E6eOTlyuV7JRocyNlDGC5EytBNajDf+67z7Eq4htGXql\nfTqRV6gyRTvFqnwrtx0VB+5t8Yenb+UAlOQZ26WLikp4BSzHTrtgHdD5ei2vvOJb6krHK9P5mmUa\nevZ+fayVuXxv5Wprs8W5fuZyrrydvpu3/WilvbYSFYyLBE/227VaLW6P2EdOCa/CwyP1dcjyWXli\n5blnj76OwsO8kkuxeOAj23GQqZZIS162XVsTnZrwSnGa0Lzu1FynG8sq0g0EN3tepl799xbc6nUi\njT9pi+bgBol9LBap9vv2aYtplChbJq2uZdv1O58veLz7hTUa10Sndc9I5/MY11Wr7y1IS/e1i4WW\ndcM6+r3N3M3POF2s5AdYFbpzc/leL8/V991fCKDLOMwYUwgAxpgCIks+0YM4AMVENBFANwCrATxi\njDlSSl8fXADPwcGh2qGsRe+SnxZh6eKzF2smorkAwuVXAAyAP5bSvTQ/b00APQA8YIxZTURvAXgS\nwLNnO66bjB0cHKodylJkGzR4CAYNHuL7/NpLf/lZH2PM8DL3S1RIROHGmEIiigCwq5RuOwDkGmNW\nez9PBfBEeedcKZPx+wuyAADPCFHtuwTnsWSN/qV6/k0ujXTU4iFO+Gy1r32d4AzvLNSm9C6RItpG\nmO3jhZA5APwklMrio9mUnPjwQNVPppX2juD9tWqiAyHxgp8bVp+3PWNxZsd04x/eWRvZJfLamE6q\n39xMftbfrWNXxHGrYvNfr+K/u+XtxWqbFOHfc5jdKvOtYJRUpssT7hE7m+n6CUt87dBQDgrVq6eH\nU+8YdlMs2M732Ta5hw/kIE49ka5+08AY1a9/NAc9M0RgroZ1gu/M5QDwGOFeAoAVws330bcKAAAM\nBUlEQVR1jVDps1dSD01K9rUbNOAg5R099f7iw/h5/+o/63zt9lE6yD51NbtmZNmplRv1c/xeiMiP\n7MvXbwfBJF98l1Dw22+J6b80msfFbe8t97WDg7SbYvtOkWpvBQFfGd3R116dx8/x3jcWqn6XDeH3\nW/Kv7XPv2pFdLPPWaGU+fyGASR/fAvgFgFcA3Algut3BO1HnElE7Y0waPNnJm+1+NlwAz8HBwaHi\neAXAcCJKhWeSfRkAiCiSiGaIfg8D+JyI1sHjN36xvB07N4WDg0O1Q6BWxsaYPQCGlfL9TgBXic/r\nAZyTPGWlTMYHD3pMpzZNOBItXRONel6q+kvFJ8ldBIBGgg/ZsiEzJhI7a0HsOoKhIbnEofW1wleU\n4F5uFLzO/tGa/VAgmBZbirnfcYu3XEP4qqQo2kHLfJTC5td0Z3fL7oO63yViVDUWtcn6t9ZMg2zB\nQujcKVxtkzzunD3sIqhTSyvYSReBVAXrYymBpQpudRNx/4p2a+aCrB6cUcwukdOntesprinvo+CQ\nqP5t2W35BzgYnZzP0fpmTXWqepioLj6ilQ52T97I7oJwUWE5c7d2nUj+fbfWzBevablEjojK1s1D\n+Tz6xWi2i6xWHiPOL9oSec8W7IKIhjxWIxvqimZS7a1RXT53m2NedJifo0zBr2s9+7qCf93TYowc\nOMqurcMnuB3STI/BgW34nckSqmmxjfXzkbXyurWzqrDDP6hxEYpTuJWxg4NDtcPFNxW7ydjBwaE6\n4iKcjS8oHZqIRgJ4C55A4IfGmFdK6WNeX+RREXvmkTd836+f9aqvnbFbMyHWCcJ461DNVtgpzPhv\nVnOSQUy4Nvc6RbCJPFekX0oTFgBydwkFMuEG6GolTgSLOnIpefw3bcK0ALq0jl57j10xT90/RPVb\nm80pp7v3s5mZIExiAPhuISuwdevC7ofcnTo9tolgNQxqr/chH3FKHpvLA1prV8xLnzBT5cFxnNr7\n0QwtNv70eE4dXpnF53HspGYGRIqaazI1+omhbVW/ySnsOtgn3DntI7S5HC3S1SW7JSlH34sjogy9\nLfIuHSQdwnhbZrFOLz8i2CotRf2+T+doRbyxIp13fQ67CA4e1TUKXxzFrAaZNr69SKeaX9GRGSMf\niDTx2EitXnjkOJ9feLBwewRrloR0S43uyOPi6ClLgkCwPUZ01uPntSmsBDewNyvO/X6QTmV+bRHf\nmzTxvHtY9fueFMqEmwt0kspVXcP9kg594Ojp8jsCaFi3RpVRbbuQ6tA1APwDwAgAnQGMJ6IOZ/+r\nwKJgc+Vp2xduWV1+Jz/gyI4N5XfyE47v3FR+Jz9h3col5XfyE3ZsXFUpxylOXVMpx6nsY1XmGPQX\niCr2ryrhQqhtiQDSjTHZxpgTAP4DT972fw2VNUECwK6tlXOsoztSyu/kJ1TqZLxqaaUdK89NxheE\nyhyD/sL/VEFSAFEApCDEDngm6J/hjHvirxM4meOmfzIBPShIR4p/fVmsr13LqtP2wodcw+ydRwbx\nwUuOoaBhbXSL8pi2/5jGSRadO3BE/V5L6PqlHznvXkZ5YyxzL3sfm7GdmgehoGFtdGoe9DNBdan8\n9sEfR/raj3+gJ4RGwezeaNyYzeXEFto0/y6kHuJaeXL7Fy/mcx17TTfVr50oNb82V5vtTcX9bR3G\n+3/+/eWqX/0GddEkzMOc2F7MzIUe8Zqp8vBLs33tFu34foZZLptaQjlvaxrrY9yfux9F6/OxyusW\nefAqFlHfsY8ZBOFBmvki8eoXG33ttm21WX1SFAF8YkgbHF/UCHf38JjXf5mX5tsmNVGmL9Tuh6I8\nTsS5YxwP6+6dNDtDkit2FR/Cya2ev7tzpHbFjHp+pq9979ievnZ0qGYaPPzaj772yCtZ5L21dW93\nNKqDjlEe18XmHewe+WbmRtVv0uOX+9rPzeB3orhYM1+ku/KqeO1WuKZXNH7hFanPP8jj4umZOpHp\nsg78HNan8v0LqqOnmb8vy/K1O4Zrt6HfUNVm2grABfAcHByqHS5GatuFVIfuC+A5Y8xI7+cnARg7\niEdEgRVMdnBwqFbwQwAvC0BMef28yDbGxF7I8fyFC5mMLwFwJiVwJ4BVAMYbY7ac9Q8dHBwcHH6G\nC6kOfYqIHgQwB0xtcxOxg4ODw3kg4GWXHBwcHBzKR8BU24hoJBFtJaI0b62ogIGIfkdEG4loAxF9\nTkS1y/+rCu/7Q6+G6Qbr+4e8xQZTiOhlPx0rmojmewsYphDRw9b23xPRaSIKLWsfFTxOHSJaSUTJ\n3uM86/3+Ve81rSOir7zlY/wCIqpBRGuJ6Fvv5woVdryAYyWLY3UnouXe71YRUa/y9lHB42QR0foz\n+xXfB2JslFng0o/jop33WtZ6/7+fiB4O1Lgo7b0N5Lio8jDG+P0fPJN8BjxO9FoA1gHoEKBjNQew\nDUBt7+cvANzhx/0PBNAdwAbx3RB43DM1vZ+b+ulYEQC6e9tB8PjkO3g/RwP4AcB2AKF+OFZ97/8v\nAbACHlriMAA1vN+/DOAlP97H3wH4DMC33s+vAHjc234CwMsBPNZsAFd421cCWOCn42yDpyCl/C5Q\nY+NjAHd52zUBNArEuBDHqwEgH0CLQIyLMt7bOwM5Lqr6v0CtjCs7IeQSAA3OVGGFZxD5BcaYJQD2\nWl/fB88gOentU/yzPzy/YxUYY9Z52wcBbIGHzw0AbwJ4zB/H8e7/DNG0DjwvtzHGzDPGnCHproDn\nRb9gEFE0gFEA/iW+Lrewox+PdRrAmRVWMAB/KZoTfm5d+n1slFPg0q/jQmAYgExjTG6gxgX0e1sP\nnucSkHFxMSBQk3FpCSFRZfS9IBhj8gG8DiAHnoe5zxgzLxDHEmgHYDARrSCiBf4yeyWIKBaeFflK\nIhoDTxkXv6VCnTHlARQAmGuMsXPJ7wYwy0+HOzNhyABFuBGFHQGUVtjRX8f6HYC/EVEOgFcBPOWn\nYxkAc4koiYh+6f0uEGPDV+DS60J4n4jqB2JcCIwFMLmU7/0yLkp5b/d739tAjYsqj4u+0gcRBcPz\naxoDj+kTRES3BPiwNeExT/sCeBzAFH/unIiC4Kmb9QiAUwCehi5meMGMdmPMaWNMAjyrnD5E5FOy\nIaJnAJwwxky60OMQ0WgAhd4V/9nO+4IjyWc51n3wVOdtCc/E/NGFHsuLAcaYHvCsxB8gokEIzNg4\nU+DyHe/xDgF4DgEYFwBARLUAjAHwpfW9P8eF/d42IKJb8fNx8D/DMAjUZJwHQOYdR8N/pqGNYQC2\nGWP2GGNOAfgaQP8AHesMcr3HgXdFeZqImpz9TyoGr8k2FcC/jTHTAbQGEAtgPRFth+derqHSS4Sf\nM7zm7gIAZ5J3fgHP5OKvH7QBAMYQ0TZ4VlpDiejfAAqIKNx7zLIKO/rrWHcYY6YBgDFmKspI2z9X\nGE91BxhjigBM8+43EGPDLnD5FTyTcywCMy6uBLDGe10AAjIu7Pf2G3je28IAjIuLAoGajJMAtCGi\nGPIwG8bBU8gvEMgB0JeI6hIRwZOE4m++s60rMg3AUMATgQZQyxizu7Q/PA98BGCzMWYCABhjNhpj\nIowxrYwxcfC8mAnGmPMepETU9EyUmojqARgOYCt5JFEfAzDGGHPsbPuoKIwxTxtjWhpjWsEzDuYb\nY24H8B08hR2BMgo7+vFY+UR0KQAQ0eUA0s62n4rA6yYI8rYbALgCQAoCMDa8Znuud3+AZ4yv8fe4\nEBgP4aIIxLhA6e/tZnDBT8BP4+JiQUC0KUwlJoQYY1YR0VR4Krac8P7/fX/tn4gmwRMhb+L1OT4L\nz4Q5kYhSABwDcIefjjUAwK0AUrz+XAPgaWPMD6KbwYWbo5EAPiGPDGoNAF8YY2YSUTqA2vD4QQFg\nhTHm/gs8Vll4GcAUIrobQDaAmwN0HAD4NYAJ5MkaPer9fKEIB/ANedL9awL43Bgzx2vif+TvsQEu\ncFkLHhbCXdZ2f4wLEFF9eFat8h79HX4eF2d5bxui8sZFlYJL+nBwcHCoArjoA3gODg4O1QFuMnZw\ncHCoAnCTsYODg0MVgJuMHRwcHKoA3GTs4ODgUAXgJmMHBweHKgA3GTs4ODhUAbjJ2MHBwaEK4P8D\n30o1F6N6uU8AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# 得られた相関行列をカラーマップで表示する。\n", "import matplotlib.ticker as ticker\n", "plt.pcolor(cormatT, cmap=plt.cm.Blues)\n", "plt.colorbar()\n", "plt.gca().get_xaxis().set_major_locator(ticker.MaxNLocator(integer=True))\n", "plt.gca().get_yaxis().set_major_locator(ticker.MaxNLocator(integer=True))\n", "plt.xlim([0, len(cormatT)])\n", "plt.ylim([0, len(cormatT)])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "__課題9.5__:作成した matrixT をもとに、アイスクリームの好みに関する因子分析を実行し、80人の男女を色分けして、第一因子と第二因子でプロットしてください。また、この結果から、アイスクリームの好みに関して言えることを考察してください。" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# 因子分析の実行\n", "fa = FactorAnalysis()\n", "factors = fa.fit_transform(normalize2(matrixT))" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# 第一因子と第二因子でプロットする\n", "plt.figure(figsize=(8, 8))\n", "for x, y, name in zip(factors[:, 0], factors[:, 1], ids):\n", " plt.text(x, y, name, alpha=0.8, size=8)\n", "plt.scatter(factors[:, 0], factors[:, 1], alpha=0.7, c=gender, cmap=plt.cm.Blues)\n", "plt.title(\"Factor Analysis\")\n", "plt.xlabel(\"The factor score\")\n", "plt.ylabel(\"The factor score\")\n", "plt.grid(True)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# この結果から、アイスクリームの好みに関して言えることを考察してください。\n", "\n", "# 1番〜40番は女性、41番〜80番は男性であるが、相関行列のカラーマップを見た限り、\n", "# 女性と男性で好みがくっきり分かれるということではなさそうである。\n", "# しかし因子分析のプロットでは比較的男性の多いエリア、比較的女性の多いエリアなどがあるので、\n", "# 男性に好まれる味の傾向、女性に好まれる味の傾向というものはありそうである。" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__今日の課題提出__:計算結果を.ipynb ファイル(または.jsonファイル)として保存し、指定したアドレスまでメールしてください。メールタイトルは「__アイスクリーム統計学789__」とし、メール本文に学籍番号と氏名を明記のこと。また、感想も書いてくれると喜びます。今後の講義の改善につながるかも知れません。" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.12" } }, "nbformat": 4, "nbformat_minor": 0 }