diff --git a/python/Deep Learning/Project/part1/Image Classifier Project-zh.ipynb b/python/Deep Learning/Project/part1/Image Classifier Project-zh.ipynb new file mode 100644 index 0000000..7606542 --- /dev/null +++ b/python/Deep Learning/Project/part1/Image Classifier Project-zh.ipynb @@ -0,0 +1,367 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# 开发 AI 应用\n", + "\n", + "未来,AI 算法在日常生活中的应用将越来越广泛。例如,你可能想要在智能手机应用中包含图像分类器。为此,在整个应用架构中,你将使用一个用成百上千个图像训练过的深度学习模型。未来的软件开发很大一部分将是使用这些模型作为应用的常用部分。\n", + "\n", + "在此项目中,你将训练一个图像分类器来识别不同的花卉品种。可以想象有这么一款手机应用,当你对着花卉拍摄时,它能够告诉你这朵花的名称。在实际操作中,你会训练此分类器,然后导出它以用在你的应用中。我们将使用[此数据集](http://www.robots.ox.ac.uk/~vgg/data/flowers/102/index.html),其中包含 102 个花卉类别。你可以在下面查看几个示例。 \n", + "\n", + "\n", + "\n", + "该项目分为多个步骤:\n", + "\n", + "* 加载和预处理图像数据集\n", + "* 用数据集训练图像分类器\n", + "* 使用训练的分类器预测图像内容\n", + "\n", + "我们将指导你完成每一步,你将用 Python 实现这些步骤。\n", + "\n", + "完成此项目后,你将拥有一个可以用任何带标签图像的数据集进行训练的应用。你的网络将学习花卉,并成为一个命令行应用。但是,你对新技能的应用取决于你的想象力和构建数据集的精力。例如,想象有一款应用能够拍摄汽车,告诉你汽车的制造商和型号,然后查询关于该汽车的信息。构建你自己的数据集并开发一款新型应用吧。\n", + "\n", + "首先,导入你所需的软件包。建议在代码开头导入所有软件包。当你创建此 notebook 时,如果发现你需要导入某个软件包,确保在开头导入该软件包。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Imports here" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 加载数据\n", + "\n", + "在此项目中,你将使用 `torchvision` 加载数据([文档](http://pytorch.org/docs/master/torchvision/transforms.html#))。数据应该和此 notebook 一起包含在内,否则你可以[在此处下载数据](https://s3.amazonaws.com/content.udacity-data.com/nd089/flower_data.tar.gz)。数据集分成了三部分:训练集、验证集和测试集。对于训练集,你需要变换数据,例如随机缩放、剪裁和翻转。这样有助于网络泛化,并带来更好的效果。你还需要确保将输入数据的大小调整为 224x224 像素,因为预训练的网络需要这么做。\n", + "\n", + "验证集和测试集用于衡量模型对尚未见过的数据的预测效果。对此步骤,你不需要进行任何缩放或旋转变换,但是需要将图像剪裁到合适的大小。\n", + "\n", + "对于所有三个数据集,你都需要将均值和标准差标准化到网络期望的结果。均值为 `[0.485, 0.456, 0.406]`,标准差为 `[0.229, 0.224, 0.225]`。这样使得每个颜色通道的值位于 -1 到 1 之间,而不是 0 到 1 之间。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "train_dir = 'train'\n", + "valid_dir = 'valid'\n", + "test_dir = 'test'" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Define your transforms for the training, validation, and testing sets\n", + "data_transforms = \n", + "\n", + "# TODO: Load the datasets with ImageFolder\n", + "image_datasets = \n", + "\n", + "# TODO: Using the image datasets and the trainforms, define the dataloaders\n", + "dataloaders = " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 标签映射\n", + "\n", + "你还需要加载从类别标签到类别名称的映射。你可以在文件 `cat_to_name.json` 中找到此映射。它是一个 JSON 对象,可以使用 [`json` 模块](https://docs.python.org/2/library/json.html)读取它。这样可以获得一个从整数编码的类别到实际花卉名称的映射字典。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import json\n", + "\n", + "with open('cat_to_name.json', 'r') as f:\n", + " cat_to_name = json.load(f)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# 构建和训练分类器\n", + "\n", + "数据准备好后,就开始构建和训练分类器了。和往常一样,你应该使用 `torchvision.models` 中的某个预训练模型获取图像特征。使用这些特征构建和训练新的前馈分类器。\n", + "\n", + "这部分将由你来完成。如果你想与他人讨论这部分,欢迎与你的同学讨论!你还可以在论坛上提问或在工作时间内咨询我们的课程经理和助教导师。\n", + "\n", + "请参阅[审阅标准](https://review.udacity.com/#!/rubrics/1663/view),了解如何成功地完成此部分。你需要执行以下操作:\n", + "\n", + "* 加载[预训练的网络](http://pytorch.org/docs/master/torchvision/models.html)(如果你需要一个起点,推荐使用 VGG 网络,它简单易用)\n", + "* 使用 ReLU 激活函数和丢弃定义新的未训练前馈网络作为分类器\n", + "* 使用反向传播训练分类器层,并使用预训练的网络获取特征\n", + "* 跟踪验证集的损失和准确率,以确定最佳超参数\n", + "\n", + "我们在下面为你留了一个空的单元格,但是你可以使用多个单元格。建议将问题拆分为更小的部分,并单独运行。检查确保每部分都达到预期效果,然后再完成下个部分。你可能会发现,当你实现每部分时,可能需要回去修改之前的代码,这很正常!\n", + "\n", + "训练时,确保仅更新前馈网络的权重。如果一切构建正确的话,验证准确率应该能够超过 70%。确保尝试不同的超参数(学习速率、分类器中的单元、周期等),寻找最佳模型。保存这些超参数并用作项目下个部分的默认值。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Build and train your network" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 测试网络\n", + "\n", + "建议使用网络在训练或验证过程中从未见过的测试数据测试训练的网络。这样,可以很好地判断模型预测全新图像的效果。用网络预测测试图像,并测量准确率,就像验证过程一样。如果模型训练良好的话,你应该能够达到大约 70% 的准确率。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Do validation on the test set" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 保存检查点\n", + "\n", + "训练好网络后,保存模型,以便稍后加载它并进行预测。你可能还需要保存其他内容,例如从类别到索引的映射,索引是从某个图像数据集中获取的:`image_datasets['train'].class_to_idx`。你可以将其作为属性附加到模型上,这样稍后推理会更轻松。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "attributes": { + "": "", + "classes": [], + "id": "" + } + }, + "outputs": [], + "source": [ + "\n", + "注意,稍后你需要完全重新构建模型,以便用模型进行推理。确保在检查点中包含你所需的任何信息。如果你想加载模型并继续训练,则需要保存周期数量和优化器状态 `optimizer.state_dict`。你可能需要在下面的下个部分使用训练的模型,因此建议立即保存它。\n", + "\n", + "\n", + "```python\n", + "# TODO: Save the checkpoint " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 加载检查点\n", + "\n", + "此刻,建议写一个可以加载检查点并重新构建模型的函数。这样的话,你可以回到此项目并继续完善它,而不用重新训练网络。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Write a function that loads a checkpoint and rebuilds the model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# 类别推理\n", + "\n", + "现在,你需要写一个使用训练的网络进行推理的函数。即你将向网络中传入一个图像,并预测图像中的花卉类别。写一个叫做 `predict` 的函数,该函数会接受图像和模型,然后返回概率在前 $K$ 的类别及其概率。应该如下所示:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "probs, classes = predict(image_path, model)\n", + "print(probs)\n", + "print(classes)\n", + "> [ 0.01558163 0.01541934 0.01452626 0.01443549 0.01407339]\n", + "> ['70', '3', '45', '62', '55']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "首先,你需要处理输入图像,使其可以用于你的网络。\n", + "\n", + "## 图像处理\n", + "\n", + "你需要使用 `PIL` 加载图像([文档](https://pillow.readthedocs.io/en/latest/reference/Image.html))。建议写一个函数来处理图像,使图像可以作为模型的输入。该函数应该按照训练的相同方式处理图像。\n", + "\n", + "首先,调整图像大小,使最小的边为 256 像素,并保持宽高比。为此,可以使用 [`thumbnail`](http://pillow.readthedocs.io/en/3.1.x/reference/Image.html#PIL.Image.Image.thumbnail) 或 [`resize`](http://pillow.readthedocs.io/en/3.1.x/reference/Image.html#PIL.Image.Image.thumbnail) 方法。然后,你需要从图像的中心裁剪出 224x224 的部分。\n", + "\n", + "图像的颜色通道通常编码为整数 0-255,但是该模型要求值为浮点数 0-1。你需要变换值。使用 Numpy 数组最简单,你可以从 PIL 图像中获取,例如 `np_image = np.array(pil_image)`。\n", + "\n", + "和之前一样,网络要求图像按照特定的方式标准化。均值应标准化为 `[0.485, 0.456, 0.406]`,标准差应标准化为 `[0.229, 0.224, 0.225]`。你需要用每个颜色通道减去均值,然后除以标准差。\n", + "\n", + "最后,PyTorch 要求颜色通道为第一个维度,但是在 PIL 图像和 Numpy 数组中是第三个维度。你可以使用 [`ndarray.transpose`](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.ndarray.transpose.html)对维度重新排序。颜色通道必须是第一个维度,并保持另外两个维度的顺序。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def process_image(image):\n", + " ''' Scales, crops, and normalizes a PIL image for a PyTorch model,\n", + " returns an Numpy array\n", + " '''\n", + " \n", + " # TODO: Process a PIL image for use in a PyTorch model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "要检查你的项目,可以使用以下函数来转换 PyTorch 张量并将其显示在 notebook 中。如果 `process_image` 函数可行,用该函数运行输出应该会返回原始图像(但是剪裁掉的部分除外)。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def imshow(image, ax=None, title=None):\n", + " \"\"\"Imshow for Tensor.\"\"\"\n", + " if ax is None:\n", + " fig, ax = plt.subplots()\n", + " \n", + " # PyTorch tensors assume the color channel is the first dimension\n", + " # but matplotlib assumes is the third dimension\n", + " image = image.numpy().transpose((1, 2, 0))\n", + " \n", + " # Undo preprocessing\n", + " mean = np.array([0.485, 0.456, 0.406])\n", + " std = np.array([0.229, 0.224, 0.225])\n", + " image = std * image + mean\n", + " \n", + " # Image needs to be clipped between 0 and 1 or it looks like noise when displayed\n", + " image = np.clip(image, 0, 1)\n", + " \n", + " ax.imshow(image)\n", + " \n", + " return ax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 类别预测\n", + "\n", + "可以获得格式正确的图像后 \n", + "\n", + "要获得前 $K$ 个值,在张量中使用 [`x.topk(k)`](http://pytorch.org/docs/master/torch.html#torch.topk)。该函数会返回前 `k` 个概率和对应的类别索引。你需要使用 `class_to_idx`(希望你将其添加到了模型中)将这些索引转换为实际类别标签,或者从用来加载数据的[ `ImageFolder`](https://pytorch.org/docs/master/torchvision/datasets.html?highlight=imagefolder#torchvision.datasets.ImageFolder)进行转换。确保颠倒字典\n", + "\n", + "同样,此方法应该接受图像路径和模型检查点,并返回概率和类别。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "probs, classes = predict(image_path, model)\n", + "print(probs)\n", + "print(classes)\n", + "> [ 0.01558163 0.01541934 0.01452626 0.01443549 0.01407339]\n", + "> ['70', '3', '45', '62', '55']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def predict(image_path, model, topk=5):\n", + " ''' Predict the class (or classes) of an image using a trained deep learning model.\n", + " '''\n", + " \n", + " # TODO: Implement the code to predict the class from an image file" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 检查运行状况\n", + "\n", + "你已经可以使用训练的模型做出预测,现在检查模型的性能如何。即使测试准确率很高,始终有必要检查是否存在明显的错误。使用 `matplotlib` 将前 5 个类别的概率以及输入图像绘制为条形图,应该如下所示:\n", + "\n", + "\n", + "\n", + "你可以使用 `cat_to_name.json` 文件(应该之前已经在 notebook 中加载该文件)将类别整数编码转换为实际花卉名称。要将 PyTorch 张量显示为图像,请使用定义如下的 `imshow` 函数。" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Display an image along with the top 5 classes" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/python/Deep Learning/Project/part1/Image Classifier Project.ipynb b/python/Deep Learning/Project/part1/Image Classifier Project.ipynb new file mode 100644 index 0000000..e235a9a --- /dev/null +++ b/python/Deep Learning/Project/part1/Image Classifier Project.ipynb @@ -0,0 +1,350 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Developing an AI application\n", + "\n", + "Going forward, AI algorithms will be incorporated into more and more everyday applications. For example, you might want to include an image classifier in a smart phone app. To do this, you'd use a deep learning model trained on hundreds of thousands of images as part of the overall application architecture. A large part of software development in the future will be using these types of models as common parts of applications. \n", + "\n", + "In this project, you'll train an image classifier to recognize different species of flowers. You can imagine using something like this in a phone app that tells you the name of the flower your camera is looking at. In practice you'd train this classifier, then export it for use in your application. We'll be using [this dataset](http://www.robots.ox.ac.uk/~vgg/data/flowers/102/index.html) of 102 flower categories, you can see a few examples below. \n", + "\n", + "\n", + "\n", + "The project is broken down into multiple steps:\n", + "\n", + "* Load and preprocess the image dataset\n", + "* Train the image classifier on your dataset\n", + "* Use the trained classifier to predict image content\n", + "\n", + "We'll lead you through each part which you'll implement in Python.\n", + "\n", + "When you've completed this project, you'll have an application that can be trained on any set of labeled images. Here your network will be learning about flowers and end up as a command line application. But, what you do with your new skills depends on your imagination and effort in building a dataset. For example, imagine an app where you take a picture of a car, it tells you what the make and model is, then looks up information about it. Go build your own dataset and make something new.\n", + "\n", + "First up is importing the packages you'll need. It's good practice to keep all the imports at the beginning of your code. As you work through this notebook and find you need to import a package, make sure to add the import up here." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Imports here" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load the data\n", + "\n", + "Here you'll use `torchvision` to load the data ([documentation](http://pytorch.org/docs/0.3.0/torchvision/index.html)). The data should be included alongside this notebook, otherwise you can [download it here](https://s3.amazonaws.com/content.udacity-data.com/nd089/flower_data.tar.gz). The dataset is split into three parts, training, validation, and testing. For the training, you'll want to apply transformations such as random scaling, cropping, and flipping. This will help the network generalize leading to better performance. You'll also need to make sure the input data is resized to 224x224 pixels as required by the pre-trained networks.\n", + "\n", + "The validation and testing sets are used to measure the model's performance on data it hasn't seen yet. For this you don't want any scaling or rotation transformations, but you'll need to resize then crop the images to the appropriate size.\n", + "\n", + "The pre-trained networks you'll use were trained on the ImageNet dataset where each color channel was normalized separately. For all three sets you'll need to normalize the means and standard deviations of the images to what the network expects. For the means, it's `[0.485, 0.456, 0.406]` and for the standard deviations `[0.229, 0.224, 0.225]`, calculated from the ImageNet images. These values will shift each color channel to be centered at 0 and range from -1 to 1.\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "data_dir = 'flowers'\n", + "train_dir = data_dir + '/train'\n", + "valid_dir = data_dir + '/valid'\n", + "test_dir = data_dir + '/test'" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Define your transforms for the training, validation, and testing sets\n", + "data_transforms = \n", + "\n", + "# TODO: Load the datasets with ImageFolder\n", + "image_datasets = \n", + "\n", + "# TODO: Using the image datasets and the trainforms, define the dataloaders\n", + "dataloaders = " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Label mapping\n", + "\n", + "You'll also need to load in a mapping from category label to category name. You can find this in the file `cat_to_name.json`. It's a JSON object which you can read in with the [`json` module](https://docs.python.org/2/library/json.html). This will give you a dictionary mapping the integer encoded categories to the actual names of the flowers." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import json\n", + "\n", + "with open('cat_to_name.json', 'r') as f:\n", + " cat_to_name = json.load(f)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Building and training the classifier\n", + "\n", + "Now that the data is ready, it's time to build and train the classifier. As usual, you should use one of the pretrained models from `torchvision.models` to get the image features. Build and train a new feed-forward classifier using those features.\n", + "\n", + "We're going to leave this part up to you. Refer to [the rubric](https://review.udacity.com/#!/rubrics/1663/view) for guidance on successfully completing this section. Things you'll need to do:\n", + "\n", + "* Load a [pre-trained network](http://pytorch.org/docs/master/torchvision/models.html) (If you need a starting point, the VGG networks work great and are straightforward to use)\n", + "* Define a new, untrained feed-forward network as a classifier, using ReLU activations and dropout\n", + "* Train the classifier layers using backpropagation using the pre-trained network to get the features\n", + "* Track the loss and accuracy on the validation set to determine the best hyperparameters\n", + "\n", + "We've left a cell open for you below, but use as many as you need. Our advice is to break the problem up into smaller parts you can run separately. Check that each part is doing what you expect, then move on to the next. You'll likely find that as you work through each part, you'll need to go back and modify your previous code. This is totally normal!\n", + "\n", + "When training make sure you're updating only the weights of the feed-forward network. You should be able to get the validation accuracy above 70% if you build everything right. Make sure to try different hyperparameters (learning rate, units in the classifier, epochs, etc) to find the best model. Save those hyperparameters to use as default values in the next part of the project.\n", + "\n", + "One last important tip if you're using the workspace to run your code: To avoid having your workspace disconnect during the long-running tasks in this notebook, please read in the earlier page in this lesson called Intro to\n", + "GPU Workspaces about Keeping Your Session Active. You'll want to include code from the workspace_utils.py module.\n", + "\n", + "**Note for Workspace users:** If your network is over 1 GB when saved as a checkpoint, there might be issues with saving backups in your workspace. Typically this happens with wide dense layers after the convolutional layers. If your saved checkpoint is larger than 1 GB (you can open a terminal and check with `ls -lh`), you should reduce the size of your hidden layers and train again." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Build and train your network" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Testing your network\n", + "\n", + "It's good practice to test your trained network on test data, images the network has never seen either in training or validation. This will give you a good estimate for the model's performance on completely new images. Run the test images through the network and measure the accuracy, the same way you did validation. You should be able to reach around 70% accuracy on the test set if the model has been trained well." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Do validation on the test set" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Save the checkpoint\n", + "\n", + "Now that your network is trained, save the model so you can load it later for making predictions. You probably want to save other things such as the mapping of classes to indices which you get from one of the image datasets: `image_datasets['train'].class_to_idx`. You can attach this to the model as an attribute which makes inference easier later on.\n", + "\n", + "```model.class_to_idx = image_datasets['train'].class_to_idx```\n", + "\n", + "Remember that you'll want to completely rebuild the model later so you can use it for inference. Make sure to include any information you need in the checkpoint. If you want to load the model and keep training, you'll want to save the number of epochs as well as the optimizer state, `optimizer.state_dict`. You'll likely want to use this trained model in the next part of the project, so best to save it now." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Save the checkpoint " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading the checkpoint\n", + "\n", + "At this point it's good to write a function that can load a checkpoint and rebuild the model. That way you can come back to this project and keep working on it without having to retrain the network." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Write a function that loads a checkpoint and rebuilds the model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Inference for classification\n", + "\n", + "Now you'll write a function to use a trained network for inference. That is, you'll pass an image into the network and predict the class of the flower in the image. Write a function called `predict` that takes an image and a model, then returns the top $K$ most likely classes along with the probabilities. It should look like \n", + "\n", + "```python\n", + "probs, classes = predict(image_path, model)\n", + "print(probs)\n", + "print(classes)\n", + "> [ 0.01558163 0.01541934 0.01452626 0.01443549 0.01407339]\n", + "> ['70', '3', '45', '62', '55']\n", + "```\n", + "\n", + "First you'll need to handle processing the input image such that it can be used in your network. \n", + "\n", + "## Image Preprocessing\n", + "\n", + "You'll want to use `PIL` to load the image ([documentation](https://pillow.readthedocs.io/en/latest/reference/Image.html)). It's best to write a function that preprocesses the image so it can be used as input for the model. This function should process the images in the same manner used for training. \n", + "\n", + "First, resize the images where the shortest side is 256 pixels, keeping the aspect ratio. This can be done with the [`thumbnail`](http://pillow.readthedocs.io/en/3.1.x/reference/Image.html#PIL.Image.Image.thumbnail) or [`resize`](http://pillow.readthedocs.io/en/3.1.x/reference/Image.html#PIL.Image.Image.thumbnail) methods. Then you'll need to crop out the center 224x224 portion of the image.\n", + "\n", + "Color channels of images are typically encoded as integers 0-255, but the model expected floats 0-1. You'll need to convert the values. It's easiest with a Numpy array, which you can get from a PIL image like so `np_image = np.array(pil_image)`.\n", + "\n", + "As before, the network expects the images to be normalized in a specific way. For the means, it's `[0.485, 0.456, 0.406]` and for the standard deviations `[0.229, 0.224, 0.225]`. You'll want to subtract the means from each color channel, then divide by the standard deviation. \n", + "\n", + "And finally, PyTorch expects the color channel to be the first dimension but it's the third dimension in the PIL image and Numpy array. You can reorder dimensions using [`ndarray.transpose`](https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.ndarray.transpose.html). The color channel needs to be first and retain the order of the other two dimensions." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def process_image(image):\n", + " ''' Scales, crops, and normalizes a PIL image for a PyTorch model,\n", + " returns an Numpy array\n", + " '''\n", + " \n", + " # TODO: Process a PIL image for use in a PyTorch model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To check your work, the function below converts a PyTorch tensor and displays it in the notebook. If your `process_image` function works, running the output through this function should return the original image (except for the cropped out portions)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def imshow(image, ax=None, title=None):\n", + " \"\"\"Imshow for Tensor.\"\"\"\n", + " if ax is None:\n", + " fig, ax = plt.subplots()\n", + " \n", + " # PyTorch tensors assume the color channel is the first dimension\n", + " # but matplotlib assumes is the third dimension\n", + " image = image.numpy().transpose((1, 2, 0))\n", + " \n", + " # Undo preprocessing\n", + " mean = np.array([0.485, 0.456, 0.406])\n", + " std = np.array([0.229, 0.224, 0.225])\n", + " image = std * image + mean\n", + " \n", + " # Image needs to be clipped between 0 and 1 or it looks like noise when displayed\n", + " image = np.clip(image, 0, 1)\n", + " \n", + " ax.imshow(image)\n", + " \n", + " return ax" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Class Prediction\n", + "\n", + "Once you can get images in the correct format, it's time to write a function for making predictions with your model. A common practice is to predict the top 5 or so (usually called top-$K$) most probable classes. You'll want to calculate the class probabilities then find the $K$ largest values.\n", + "\n", + "To get the top $K$ largest values in a tensor use [`x.topk(k)`](http://pytorch.org/docs/master/torch.html#torch.topk). This method returns both the highest `k` probabilities and the indices of those probabilities corresponding to the classes. You need to convert from these indices to the actual class labels using `class_to_idx` which hopefully you added to the model or from an `ImageFolder` you used to load the data ([see here](#Save-the-checkpoint)). Make sure to invert the dictionary so you get a mapping from index to class as well.\n", + "\n", + "Again, this method should take a path to an image and a model checkpoint, then return the probabilities and classes.\n", + "\n", + "```python\n", + "probs, classes = predict(image_path, model)\n", + "print(probs)\n", + "print(classes)\n", + "> [ 0.01558163 0.01541934 0.01452626 0.01443549 0.01407339]\n", + "> ['70', '3', '45', '62', '55']\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def predict(image_path, model, topk=5):\n", + " ''' Predict the class (or classes) of an image using a trained deep learning model.\n", + " '''\n", + " \n", + " # TODO: Implement the code to predict the class from an image file" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Sanity Checking\n", + "\n", + "Now that you can use a trained model for predictions, check to make sure it makes sense. Even if the testing accuracy is high, it's always good to check that there aren't obvious bugs. Use `matplotlib` to plot the probabilities for the top 5 classes as a bar graph, along with the input image. It should look like this:\n", + "\n", + "\n", + "\n", + "You can convert from the class integer encoding to actual flower names with the `cat_to_name.json` file (should have been loaded earlier in the notebook). To show a PyTorch tensor as an image, use the `imshow` function defined above." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# TODO: Display an image along with the top 5 classes" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/python/Deep Learning/Project/part1/LICENSE b/python/Deep Learning/Project/part1/LICENSE new file mode 100644 index 0000000..ee6ffb9 --- /dev/null +++ b/python/Deep Learning/Project/part1/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2018 Udacity + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/python/Deep Learning/Project/part1/README.md b/python/Deep Learning/Project/part1/README.md new file mode 100644 index 0000000..49939e7 --- /dev/null +++ b/python/Deep Learning/Project/part1/README.md @@ -0,0 +1,3 @@ +# AI Programming with Python Project + +Project code for Udacity's AI Programming with Python Nanodegree program. In this project, students first develop code for an image classifier built with PyTorch, then convert it into a command line application. diff --git a/python/Deep Learning/Project/part1/assets/Flowers.png b/python/Deep Learning/Project/part1/assets/Flowers.png new file mode 100644 index 0000000..9190c93 Binary files /dev/null and b/python/Deep Learning/Project/part1/assets/Flowers.png differ diff --git a/python/Deep Learning/Project/part1/assets/inference_example.png b/python/Deep Learning/Project/part1/assets/inference_example.png new file mode 100644 index 0000000..dd8b08d Binary files /dev/null and b/python/Deep Learning/Project/part1/assets/inference_example.png differ diff --git a/python/Deep Learning/Project/part1/cat_to_name.json b/python/Deep Learning/Project/part1/cat_to_name.json new file mode 100644 index 0000000..b273b57 --- /dev/null +++ b/python/Deep Learning/Project/part1/cat_to_name.json @@ -0,0 +1 @@ +{"21": "fire lily", "3": "canterbury bells", "45": "bolero deep blue", "1": "pink primrose", "34": "mexican aster", "27": "prince of wales feathers", "7": "moon orchid", "16": "globe-flower", "25": "grape hyacinth", "26": "corn poppy", "79": "toad lily", "39": "siam tulip", "24": "red ginger", "67": "spring crocus", "35": "alpine sea holly", "32": "garden phlox", "10": "globe thistle", "6": "tiger lily", "93": "ball moss", "33": "love in the mist", "9": "monkshood", "102": "blackberry lily", "14": "spear thistle", "19": "balloon flower", "100": "blanket flower", "13": "king protea", "49": "oxeye daisy", "15": "yellow iris", "61": "cautleya spicata", "31": "carnation", "64": "silverbush", "68": "bearded iris", "63": "black-eyed susan", "69": "windflower", "62": "japanese anemone", "20": "giant white arum lily", "38": "great masterwort", "4": "sweet pea", "86": "tree mallow", "101": "trumpet creeper", "42": "daffodil", "22": "pincushion flower", "2": "hard-leaved pocket orchid", "54": "sunflower", "66": "osteospermum", "70": "tree poppy", "85": "desert-rose", "99": "bromelia", "87": "magnolia", "5": "english marigold", "92": "bee balm", "28": "stemless gentian", "97": "mallow", "57": "gaura", "40": "lenten rose", "47": "marigold", "59": "orange dahlia", "48": "buttercup", "55": "pelargonium", "36": "ruby-lipped cattleya", "91": "hippeastrum", "29": "artichoke", "71": "gazania", "90": "canna lily", "18": "peruvian lily", "98": "mexican petunia", "8": "bird of paradise", "30": "sweet william", "17": "purple coneflower", "52": "wild pansy", "84": "columbine", "12": "colt's foot", "11": "snapdragon", "96": "camellia", "23": "fritillary", "50": "common dandelion", "44": "poinsettia", "53": "primula", "72": "azalea", "65": "californian poppy", "80": "anthurium", "76": "morning glory", "37": "cape flower", "56": "bishop of llandaff", "60": "pink-yellow dahlia", "82": "clematis", "58": "geranium", "75": "thorn apple", "41": "barbeton daisy", "95": "bougainvillea", "43": "sword lily", "83": "hibiscus", "78": "lotus lotus", "88": "cyclamen", "94": "foxglove", "81": "frangipani", "74": "rose", "89": "watercress", "73": "water lily", "46": "wallflower", "77": "passion flower", "51": "petunia"} \ No newline at end of file diff --git a/python/Deep Learning/Project/part1/predict.py b/python/Deep Learning/Project/part1/predict.py new file mode 100644 index 0000000..e69de29 diff --git a/python/Deep Learning/Project/part1/train.py b/python/Deep Learning/Project/part1/train.py new file mode 100644 index 0000000..e69de29 diff --git a/python/Deep Learning/Project/part1/workspace-utils.py b/python/Deep Learning/Project/part1/workspace-utils.py new file mode 100644 index 0000000..e5432f0 --- /dev/null +++ b/python/Deep Learning/Project/part1/workspace-utils.py @@ -0,0 +1,54 @@ +import signal + +from contextlib import contextmanager + +import requests + + +DELAY = INTERVAL = 4 * 60 # interval time in seconds +MIN_DELAY = MIN_INTERVAL = 2 * 60 +KEEPALIVE_URL = "https://nebula.udacity.com/api/v1/remote/keep-alive" +TOKEN_URL = "http://metadata.google.internal/computeMetadata/v1/instance/attributes/keep_alive_token" +TOKEN_HEADERS = {"Metadata-Flavor":"Google"} + + +def _request_handler(headers): + def _handler(signum, frame): + requests.request("POST", KEEPALIVE_URL, headers=headers) + return _handler + + +@contextmanager +def active_session(delay=DELAY, interval=INTERVAL): + """ + Example: + + from workspace_utils import active session + + with active_session(): + # do long-running work here + """ + token = requests.request("GET", TOKEN_URL, headers=TOKEN_HEADERS).text + headers = {'Authorization': "STAR " + token} + delay = max(delay, MIN_DELAY) + interval = max(interval, MIN_INTERVAL) + original_handler = signal.getsignal(signal.SIGALRM) + try: + signal.signal(signal.SIGALRM, _request_handler(headers)) + signal.setitimer(signal.ITIMER_REAL, delay, interval) + yield + finally: + signal.signal(signal.SIGALRM, original_handler) + signal.setitimer(signal.ITIMER_REAL, 0) + + +def keep_awake(iterable, delay=DELAY, interval=INTERVAL): + """ + Example: + + from workspace_utils import keep_awake + + for i in keep_awake(range(5)): + # do iteration with lots of work here + """ + with active_session(delay, interval): yield from iterable diff --git a/python/Unsupervised Learning/Dimensionality Reduction and PCA/.ipynb_checkpoints/Interpret_PCA_Results-checkpoint.ipynb b/python/Unsupervised Learning/Dimensionality Reduction and PCA/.ipynb_checkpoints/Interpret_PCA_Results-checkpoint.ipynb new file mode 100644 index 0000000..8606993 --- /dev/null +++ b/python/Unsupervised Learning/Dimensionality Reduction and PCA/.ipynb_checkpoints/Interpret_PCA_Results-checkpoint.ipynb @@ -0,0 +1,271 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Your Turn!\n", + "\n", + "In the last video, you saw two of the main aspects of principal components:\n", + "\n", + "1. **The amount of variability captured by the component.**\n", + "2. **The components themselves.**\n", + "\n", + "In this notebook, you will get a chance to explore these a bit more yourself. First, let's read in the necessary libraries, as well as the data." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/workspace/helper_functions.py:44: FutureWarning: Method .as_matrix will be removed in a future version. Use .values instead.\n", + " mat_data = X.iloc[digit_num].as_matrix().reshape(28,28) #reshape images\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWQAAADLCAYAAABZJumvAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzsnXd8FNX3v59t2fROElIICUlIQu8E6UhvoiIggiBFOqgUxe4HUUF6RxAFlCJIUVCUIjV0kJIAIYHQE0ILkLrl98ckG0JCKJkJ+/N7H168yMzcmXvYnXnPueece6Mym80IBAKB4Pmjft4GCAQCgUBCCLJAIBBYCUKQBQKBwEoQgiwQCARWghBkgUAgsBKEIAsEAoGVIARZIBAIrAQhyAKBQGAlCEEWCAQCK0H7NI1tVHqzLQ5K2VKADO6TZc5UCTuEHcIOYcd/zY7CeCpBtsWBOqpmz2bVM7DPvEXYIewQdgg7/pN2FIYIWQgEAoGVIARZIBAIrISnClkogdtud5YHbaXKN4PwmbZH1mtrS/tgdnUidrgbAI2rxgJwbFFFbFLNOC/fByW42p1Kq+X0nGpgkrbLDz6C2WAosf6tApUKbVAgsSO80Xmnc7rB4nyHI3b3IOiTDIynE8BkLBmTcr6X12oeAGC812H6X2zIxXfLodrzb4nYILAOVHo96c2rcKFtzra9gbgXF6BRqRlxtSYAm9bXJnh+AqZ79zHdvStr/89VkL2jnZkdsJFssw6VjLqo8XAn6dXybP94CnYqmwLHfxgRR3vHeOq1G0LY+DSMJ0/L13kRqOzsONtmnmW73bsNFBXknqcvsvhSFOq2KZgyMh7bXu3kxM1OFXFdHK2IPWoHBy4OrcK/Q2da9hkf+t5P1PsRNkOFhYMJ/Gy/4qKs0utJWhnE2ZrzaHOqAwDVEiPYWfN77i7/k85jRuK8bK+iNgiKoHYlzg6VZEprY6Ss5002hq8H4P2kGqzbVJfADemodx0tdlfa4LKcHudKbKM5+fabAJPZyESffQBM7L8P+kPEz0MoN0reZ+W5CXLChCiW+09Cr9JT93A3fH84gRyPnsbbC+PPNuwPnwUUFGOAXs5XADtON17I7ig1nw3oi+2RRIzXr8tggfXwU/vG/LRlMW+6vozp2uMFWeVTisbvRHN08WObPjUaVxca7bzCSPeZj28MnOwzi0qZQwj4Ut5R08OcnlKFszXnEratDyFvHAGgNDBwdxuWlN3Cim++ZcC/b2GMOaOoHc8bbYA/sSP9qVfrFD8GbgUg3ZwFQLuYriSe9cI5TpILv5/PYrp5G3N2lmL2aDzcOTW5LH83nk4ZrZ1lvxoVJqS3+Hjvg4zveZCU7um8eOBt/F85Waw+Y0Z6Ma3WUpKM6Xhr7PgouQYGk5rYVB8u33FhcPntAPR2vgjAoNabmO3biHLdjxSr3wd5LoJ8s3cU0d2+xVFty8QbkXj3SsGYmirLtW81DWZX+Ownbv+C3sTfi+ZTeeYQ/L8qWUG+MLwK/uOVExzjmXjumszETfUmqGvSE50z3uswTV4agN3a/fIa4+vNSPdtT3XKiDfWMiP7Jfwm71dkJHGjTxSH20/i25tVCO0Tw4PO+snrPhz3zaaSjT3x3Two+7G8/d5ulo7XelvskrMBsI1LwlDaDYNjQSficiM9L7Q8xvaEEML+dx9jbJwsdmhCgrjwSmnC251hRbDkdaaaMlh9v7Rkk0qybUuFX6HCAyeOhHEpFVm+pjGBXx6UXZg1kWH0X7eRtvZ/A3a0Py2NXNKybVCrzJjM+SvIhgdtYXvt+dRaNIzwgSefaDRYGGGD9jM3oi2nxzrisdkW958O5Nx3V/DhCuv8qwHw9QftOf3SbIa6xRFcO5k5hBTnv5uPEhdkTfkQOr6zDRe1LceyjKz7timuN+Rx+zPa1yZ0WEyhxyrNHYL9VemRqz/wAJN88gvOHwMn0OnGKDznKzNcL4zQlvGkj1e2j3YH36Zn5H5227o+8Y1qVj9RyeQToy1bhmYrD+bbd8+cSf0Dffiswu+WfY3sruKmzvOG+jhfos/wmbTd2hMOnpDVJrWDA6+/swlntS1/jGmMPvNAvuM+L8XyQcU3GbNuJQNf/oNNX/o884P+MHfCILbRQkyNTKhRY8LE7/c9qGV7hdIaO0w5SYbcY7n/HvHazhd0lcUGgHq/xvKbx2oAWsS+xKV9fgStuYs557POalULgAbfTaPBzJGU3psOwNUoO2q9dJwT/WYS4jWAsEHyvbzV9vYE/5hIe/tUTEDtg93x6iS9gOweEb5a6FaDT/tHUKVNPFkuzlCM78kYG0dID+nnh6OoZntbAN6sv/OZr/84SlSQs1vUpOmk7bzrfgqAfhOGU0rGeKVhcAqLyvxj2R6bXJ1fjlUHIGRrGqrdUpzpzCoX2nu/RsTPCUzwkYTCT2OPTadkmC+bOVZBRqITH9SNoUOpDpguXiqyrSo9kzPZ8ojOg8S878N6t7WW7Z0ZWsZ8PhjfxdHMJ9iyf1KX1xnw+Sq6OyXnO//lJVuZM+slvGbKN5qI/6gyv7vtJHJXL4L+OlLg4QNQ37gNwFDXBDaF1IUTp+TpXAXVpg/Fb9tdLjdxKrpp3dscrb0UUNNt69uExR4ssv3TsHp+U37yaErZdbfRHo2hLBfyfQ4ZbhoAmkwYid+MvM/ebzskzXPjt/3ODGq4hS16T8yZmbLYFLcgjPW+CwEV1ff3oMygmxgek0cw3rqF3zd7SP9GFhMeSUqUFwBjPVcq1keJCHLSsHoAHBozExNmzmRn0SemB6XXJCDbQFSlQvNAZrDml0NwSDYSumpfgabG23fg9h3W7qjL+Nf2oUW68bqUOcSyHq1xXVJyXrLSeB5VQZcna2u4dJmpyfIWzKv0esY03JBv38qbtQtNHDqt2Ms3wa/h+tYPtLW/Z9nfx/kSDF7L2r/rYTx9ttg2aZydGdThDwCCx2djekQ4xOThSgNb+UMlnZvvZv3y+rD/OH6PcS71230wYWbW7XJEfnZVvucFLC840yOO5yYznR/YZ2xSnfiuGja1mko5rR2N3u+OQ2bBZ+xZWRE1HzVaKu55k6BB1zBYSV5HpdeTXkoaOR7JMlHNRpmKYcXrkLVly9C9/ya6999k2df5YD9c2pzFcO3J4ppPgql+VbZVXG3ZLr0lGYdCxPhBQt7ZywufDrNsD3VN4GbrdNlsKkB2Np3jWyp3/ULQZD59+cqlNvJVNpz7uDr9XC5atlNNGRyeVvWR7f2/2sPc1i15P6lGvv19nC/xytpdqHSFJ2qfhvjRFRjqmkDEjt6YT8oTj31a7oc+Pu6qcXWhuWcsalT8OKcNhkuXS8Cygqjt7Un4Ooqepy+yaekCdraewsRrLWhftSUOq+UT4zvd61JeZ8KEmaBB1wok2TXeXmj9/dD6+crW5+PQeHpwZkFNehw7y6i+KxnVdyU2D7zCIm2SSPg6CrW9vSz9Keoha7y9aPhbLCPccjPUKs4ZMnDYWPQw7Vm4HWJr+TnekI4qK/uJzvPeepX4j9Mp90AmVylMGRmcW14dPtz0+MYyob9jJNP8dH7VnMZLmEKELP2ffmtOvtK2D681xWVp0WVkxrPnOPlaEO+vhK+9D1n293K+wi/qwGLbZNRL/6rO2heZLLzwuTRyOpOdgfpe2iM9yaeidiUGeMxhfVz9xzbNrB5Cf9fNNDzehdKL5alCehi1gwOJI6pg1uXts7tmJt1HRYaf9Ax92mAdHR028+rprsyeVxrX6Es5L4f78tlhb0/ddw+iV0mG5IqxNrgsscN9APilw3Sq2mi5ZUqn1ubiJfCeFJWTI2daz3tor5ZjWUayzRpq6G2J6TGTLvVacfuLCHSbDxV6nSdF2ZCFs6MlXpzLiOrtcZcpifcgtrfzHpexFzpiSnqyoY4h4Txd/32LAzWWATCx1irmu9XCeOuW7DaqdDbcqS1PrO1JsfnzAL+nleLMN56U6339sbG+bVur8l63zWg83DHeuCm7PTtXVMeXx8eCjWfPEfNqWfZuPkRdfd5+VUQ5zEcLT9w+Ka+9uBuA4FW3ixTZJmWk8Miw+C6oz18oVp8PciDjyTy8l2f+hRo1d7b54JiaIFv/D3Lzlcp80nMZnR1vFDi2Ic0RgA++78Xyv1PRHjyBIxdkDZvkonZ3Y6KPVOnRKrYTyaP8GdVnJXXtdhOkzXW2pBeki9qWMy3mEzFuMOVGKlsjbkpOIXxbX5qG5i97jP8wHJs7WVxp4MSh92awotyfNHi3Cy6bi9efYoKs9fej9qpTqMnL2L9ztQ7mdPnfaBpPD76elFfMvSL4L9oHvAZPGG+0WekGOSPk9vapfKcv/rC4MFS2euKaf6fItYti+tiu/Dt1Bi9X7gMHjhfZ1u6qijCdA3eaheG48vlOiDAknOe60RnIK4k83duZ0OHPfk1t2TL0cFvOL/f8UCVeKbKtWmVCo1Jz/pA/wVwssu0Ts/843zdtQCCJjxW2/i7nLRUXSuG6OJrFayuxOKB0vv2n+rsxuvlvANTvdISEXeGKxjeN11MYcLERcwO282fEGtQRufXGtrx/Tar2+C2uIgBr6s4jTGfDvE7fMXlmWwwyviwfxnT/PiFvHOHhHnQcwgykvxola39iLQuBQCCwEhQT5OS5Doz1PI4JM0Ov1GPolXrENdRhSkuTvS+VTpdvWPu0OF0s2TBCSeOwah8nslXYfpv82Lb+q85z1XDvse1Kivd+f0P2a5pQsfBSfana5hFonJ2p6XgOo9mE/VV567INly4XmaBL71ib9I61UaNCjRq/bfKul/AwxtRUjCdP5/sbOnwv66oHsK56ADs2VOPjHxeRvikIlb4YD1oRmDMzOftlJGnmLNSoOG9II3xbXzq+2JUTNUycqGEiqOsxgroeY2daCGpUNLbN5n6ktyL2PAlZLWuyussUWa+pSMhC6+9Hcz8pdnzPlMmh6dIMF9c0ZcrJDEnXqXagO0dq/aTI9f8rXLnnjBtFV7YYk5L55npj3AYlYvrTWbYZlM+KySF/KsvlTPF8CLOdHn8t1PE4z4GcmGRhqDzdqaC/AmhxSSjZBaBuhkuPpQkzDY+9hvP+osNMz4KpQTVszl7FcPXao9vkJMzKfL6H8Rt78NGy5ezeH8b+npUx/Rsru022v+2n68U+mLVq1PczCYk9Umgi04gaE2aOZJmwP39HkWTnk5DYRkuETvf4hk+B7B6yNjAApxXpfO51hBRjOk0mjsR1SbSytb0mI6ptbvl2RfycgMbN7REn5KHx9uLFmbss22Hb+mBIerwn+f8bb+ztS2v/mHxlY5qQIDQhQaR2q8vZKXWpccREw8N3meSzn3WhGzg1Tp5Ki2fl1ptRHG0zPd8+7wXFy2KTbeDOEyxYdKWNL1VttKSaMnBILNkRgzrqlvQXFRkb5PcAtYEBfLl4PoZAryc+x3zgOF8N6YWb9j5DVq9BVaPC4096BkxHYzAfPPHo6eG1K9HKQXoZjLvQvkTXGFHpbFDpbNC4uXHu6yia1MmbPTr/TlncRxR/hTTZBTmxWwBLyv4NwJjLbfCeruziMLn4/RzHuJSKlu0JPgeptPUW91+p88hztAH+XJhTipHu0mpvycY0yo+/X6JLcpYUpX/W84nnceImVifx83o47fRk4dYlLNy6hC0Tp1On9mm2TqrH36MbErJ+AADee+UdqgOM6PMr6srhj22nrhjOrZbpOKryhsiVZg/BnFW8dRPMtnr8NEXXjN5/tQ6rRk0AoMa6dzAVs6rjaWkXeJJ2gScxYcbjpPxJ8EsvB9DzwFuw99hTnWfz5wH+erUWF7M8cJ1+FbWT/OWrj6Py3BOWxYYSNgY/prV8qO3tif8xkvgfI1l3YjMne8xkboC02NCs2+XY8EpdjGfii92PrCGL5EH1+HXgRMCWIZfrc6O7Ow9myJXEeP06Wz+sj8s3aQx1lUqExnsdZsBoB86nSCET7S1p0ofJVofJTkvDmbssYgzw8sk3cVbwjZuwIAjYrtj1i8Jh7zkWpvrzU4dZALx1+E1e3DgaAJ/9mWi3HMIFqaqi/PUK0EGefselhPOBR56g9XK+wrihToT1K7y9JiKU2HdcWdV8FlVt8m7PiJ29CPpKvvWrS9vcRm0fkC+nYWwiTbNfMmkSZbT2DLjUgIhJ1xQp83oUhqY1+NxLmr//YIWS3GSmPlss2Bgbx3fTOrD/k1k0bDUQx1/kmxjyOBK/iGKj9yxMQIUdbxE89VChU96fFXXFcE4Ndqb0P2pc1h3FlJGBJjSY1Cql8BkeT0zwwgLnHMky8Vfn2hhj5dEN2QRZU6oUI4evsNQMHp5TFfeEkp2CbPv7fpb4teblDydavKC5/jvhZ2kxkAM5s9Z8temFeklZa72A4r/lHkWF0lfRqJ5PYYvx+nVWR3ixGmmYGsCjF+vRXClYk/qs7GlehnF/qfnIM6+/k61nMeN4BRYva56vbZtXo+nlvphwnZ4Hb83Jt0IJHXPrsWsaPAnmuHP0v9iQ+QE7+LFzO9x+lO5RrZ8vZztI4ZwyWnsGXX6BS28HYjpXst4x8ECpmzL3isNVE616HuR4qVLPtOSs149HmDs8kKSXsnD8RQEDHyK9Y21AWpJVo1JzPvseIV+kYZRp/QyQwnfvr19OlN4IHaDPiCbcznLlzdKb6eBQcE5C4+OdeTNwL1NWvESZGPmiALIJ8uXXQ3nN8U/Ldpazcm/3ovCcF00Lv1Gc7DOrwLFa+lyb8ovxmewM3vjqPbxXxCieIDCala0rtTaMScn8Nr0RH32RJ8h6lZaR7qcZObiwXwyQ33ObfCuUf9pGYkiUpw7YnJnJvrU1YOgORn74M5MN3UhqamBV09kWj3xLup5D86vicfT5rGmizhFipTxk140xtB1/lM0vD8Tzu5tP/UsATBkZ7LsTRK9K0ezE9vEnPCMaZ2fOvl+BZd2mSf2i4Z4pnY5zRuMXK28o1OxoR0yGH1F6qeJ4YZmil4q1/9KFdZdrUyZBXjtkewWrsyHbLH2xmeZs7pZ7XrlPCJ52mo5xbZ+o7WVjGn3GvIvnvOgiy6D+L2G8eYtxKRVJLSvP7eHx/V5qfjXkqc6ZeyeQmuOHsLW2t2xinEuZdde5YEjjFYdb7J4wm7Ot5lPVRosBIwaMjP2mLx4Lnt8CU6acP7NvB2FzqPiLKT2MMTWVYVMHsfmjSZydXOup12E4/2UUY0pv4qdfm8pqV1bLmtx8S5pocXlMPV7cc4mTb86kso2GyjZSRUzV9cPx+1r+vJQ5Np750zuw/n7+QoAkYzoR2/uw/r6b5W+VuUPR7D2JIeG87HbI5iF7zd7DoiHlcFBnMmXuq4ROLZlkXmEYb9zE3NaBei8P5nqzLOKaf4dGpbZ4pxqVmuC/+hDx4VXMWdk4XS+ZGWkpk4PgAcf95uRA7B5ThvY8MGdmcjzVF3N1meL/ZjNes6LpsLoNse+X5e2mW/LF7nOpvLcH6ZeccDmjxnv+Qbyy9ygyT80YG8eQRq+TWq00Ka+n0Sb4JAdSAlHNLAWAx2/PT4wT+xotHvKPk9vgkaqMLd7T99BYNZKDI79lfrMqrP2qGW5/nC56yYC6lYkbqCX2xemErx9O+KTjsn4/90vrWP3ZRK59rKeGzWHLbwZZlBoAwKRfOxL2oTKfhzkzE/sUE3PefpWZY2+QeNUDzy16PP+Mp1zSURa65S12FXBrj6yx6weRNam3PtIDAJ8nWKtAaUz37+eU20Ebqhc4HsqhEk3WANit3U+btXm22CHzb+WQCbWtLbVcEzn9W5h8FzWbMVy9Rujwa2zFga2FfCf+5P0KHqXrXAznL2B//gJl1sAJwI5zwDmFe308S+sutMSQPRYq+2LwmbaH144O5sqwLIZ+9Bvh/7vKwMPdcVnrgC7NTGoZyStNq5PG1zV/paX9Xn5MDaX6zOGEfSX/y9LlXAY6sCxt+c2NCvzwd2PC5kplqGXjlP08cleH1GyDUBIBLCFMJda2KYzn/lunBdaHKSODrZUcnmgRIIF8aAP8qWt7lOwSrLpUbz+C/3ZY7xrCxM/aU6fWaUaM+4srBjdecpDqr/tdfIFRf3djYrQKt1VH8c9Q5r5Qbz9CrzL5V8Erx97nNvHjeSAEWSCwFsxmss1GZt0uV+JdG2/fIWTEXm4AHyMt5pO3XNd9QpG8x/9bKemSRwiyQGAlGC5dpp1fjcc3FPxnUZmfotBepVJdh5zgSskQaDabSwk7hB3CDmHHf82OwngqQRYIBAKBcoj1kAUCgcBKEIIsEAgEVoIQZIFAILAShCALBAKBlSAEWSAQCKwEIcgCgUBgJQhBFggEAitBCLJAIBBYCUKQBQKBwEoQgiwQCARWghBkgUAgsBKEIAsEAoGVIARZIBAIrAQhyAKBQGAlCEEWCAQCK0EIskAgEFgJQpAFAoHAShCCLBAIBFaCEGSBQCCwEoQgCwQCgZUgBFkgEAisBCHIAoFAYCUIQRYIBAIrQQiyQCAQWAlCkAUCgcBKEIIsEAgEVoIQZIFAILAShCALBAKBlSAEWSAQCKwEIcgCgUBgJQhBFggEAitBCLJAIBBYCUKQBQKBwEoQgiwQCARWghBkgUAgsBKEIAsEAoGVIARZIBAIrAQhyAKBQGAlCEEWCAQCK0EIskAgEFgJQpAFAoHAShCCLBAIBFaCEGSBQCCwEoQgCwQCgZUgBFkgEAisBCHIAoFAYCVon6axjUpvtsVBKVsKkMF9ssyZKmGHsEPYIez4r9lRGE8lyLY4UEfV7Nmsegb2mbcIO4Qdwg5hx3/SjsIQIQuBQCCwEoQgCwQCgZXwVCELgUAOroyux8d9f6KTw00A+l9sDED0pkrYXzNTak70c7RO8CjOfF+Tsy3nE7pqEKHD9z5vcxRFpbNBHVyG1IoeXG5lAuCD+hsA6O18kU+TqzHe+xjZZiMAkdv7EDr0AsYbN4vVrxDk58CtDaEAdAg4zu7Xq2I6cUrW66d1qsOVhiriu8ylZ2JDzk2IwH7NPln7eFo0zs4kda3AF6MXUd82GluVFlPOsfkB/wBg6ruVO6YsFg2qyrZetTEfOvnc7FXVqMDXq75n4IfDcf5ZGfFR1axIUl3nAvsrdT8BwOLAHQRt7IvrURt8f7+E4fwFRex4HKb6Vbk4zMjJerMxoeHr1sv4Kq47XjP3PBd7lEYTEoRxXjZrwpdZ9qlRY8q5Y03Ap16HyDbn7TvR6DvCvxxM2ID9xepbUUFW29uj9i5l2b7YyY9D783I10an0tDqVFuMn3uh3n5ESXPQlJJsyY7052xPDTXCzjM1cC0N/h5BxKRUjDFnFO0/F7NZSrh+4BFD5fZN8T8h37XTOtUhaHQsOwN3ANJD3XM0JK2Rr4+nRePhTvxsf47Vn44aNYcybViUUj/vuMoMQAWHy/R1SWCEewyBP6ew+OUWGE+efi42X23oQgUbLekeagpKZvHRli1Dsx/2MNQt7pFtss1wpvU8aA0dX2kPTRQwpAiujagHwOxhM6mtNwMaADo53KTl+5OoFj6C0CHP90WvBBErEvna54DFYSiMNrGv0MXvIG86J1r2TWu2lFmEFatvxQRZExGK/fxb/BS8yrLvwbdMLtlmWFd+LdsWOjK9bXuMp88qYs+NvlF0Hr4ZgHfd/3zADj2nWs1hQIWmJLUvhfH6dUX6t9jRL4otVSdb+paboNGxLM4R41wWB+6AK9LPPRMbWvbv3huZr13IO8p4gmm1y3Gs/mwAqu/vgec8B2z+PFCg3fmw2kx9qx0nekynk2Myqat2sq5pZQxXryli16PQeHrQufdW5t8pS+mFR4t8MJ8V4/fGIsX4YUYE/M0kKihgSeGYo6pweNRMAExIL8xt6ba8vbk37oc17P10Jr+0ncFH83tiOibvCE/j5sad5uW5FgXtGx607K/leI7uTjdoFtOBBaE/M6RhNwyJF2Xt+3aPKD7xngzY5NsftmEANkmSXLqcBfefDrC4Y3uW3zFwq7ye25Wz8d6pwYXiPUOKCLKqRgXOjtJwPPjnR7bZlu7IJ+PeYuTYn+nokEITu3sMHuhJyAh5BVml15P8S1l+qTIRf22uAEq5zEb/duN+pg0Ha//I3ICtVBkynMBPlRVko06Fo0p+Ic5l995IeEiQHySfWD/crov0T7kVAxQR52bHu+DbKeaRx41n4gmbb2R866qM9TxKb+eLrHWsK7sdj+NKt/KM8fiLGpOGUjrtvzksLwpTg2q8/8PifPu2pdsyfmgvwv7YT3aLmgBUttGQ2N6dgGPy9JvZtha2711hTfm1aCm8VMxohr8i1gL2xA30J+h9eQX5+ouZ2Kts0Kk0rLznzqT/vY7rkmjCyO9AmAGH1dLowGszeMnUv+yCnNI/ilnvz6Savmi/YtvdCDzXxvB9z/p0LL8WAE36E9VOPxEqvZ70FlWYOH0WVWx2AXqSjJkANPt5FEHr03DZewIPv9Lc3J2Ju0aP0dYsW/9PQv+LDQn87jRGGa8Z8s5eWr5TlbNTJCF7oW6MxRN+oW5MAe+5MF6oG0OSjDaBNDraVukX2lGjyHaGhPOsW9CIj94/hk6lkdmKJ+NOtSwAfPbeV6yPy38GQnnFLv/MaP39GLRoGQ1tswDpefwouQb736+JflPBUY2c6N+9yobyv7EzQ8/MK005dCIYn51qbG/mf0KMtiq2zZpLtrtB1v5VNSqwvOE8TEgj9ynxL+K6pGQTzLIKsjmqCss+/JYgre1jh3lDPXbR+OORdHLNi0EZAzJks+XG69XZNW46AEnGTNod7ofXNDsAgrflfcjG5Ou0mDka3V0zIYuPKTI8faSNmQ4YU+SWPolcDzcJCCHv55ZUtbTxjpaiow+L9O69kZZz5MA2OY0NaS60tr9F/KS6lHvv0dc2NK3B+lETMKEnu2TfjxZ+bLxA8T4Cvj/Nhn4utLW/A8CMW6HM/7Ul+lsqDo6c8ZizlUETVo7YYZ60sJNeRHPvBAJwvIkLNrcPFnWqLFzYXoaW4/piE3MJY1IyYaQU2u52jyhOZmcR+fV15JTkDC97qjwQqcj+1QuIl7GHxyObIKvt7Wm5YDtBWlt0Kk2+h2l/zqzBi9keLHqzPew9xqUP6hE7ZEZOWzXjUiqTDfAsAAAgAElEQVQT/oE8H/ClD+qxqP80AKbfCmfZrBaULqSU6k73utR99yDTPScypOsgTPeV84hA+oza9t+paB9PwtkpdYnvMrfQYz0TG8oerjAfOsn0gV34Y3wMujuPLn03NK1Bck093hoppNM7sRmk3JLVlqLIHYq/oD9M34uNUR+IRal3gjHlBrP6dubgtIOsWl+fcnPOEXg1mvMrKivUY9GobW1Rz0/jdKgU6693pBvu7XKT3HdKxIYyX0jhoceNGFuN3MHOtFAMCecVt6mkkU+QfbwI0J3AhIlsM5ak2YI7wWxsJiUjpOTMMdSVwxnaY52l7fr7buwYUw+bi/IMicq3jqOKjSTG/7SOoNTFaKmu0FGav24M9efD5UuoYiOVX4EN2c66h8L48mNKS2PD/AZ8/uG/Cvf0aIoSY6VixwC6zYc4vxnKID10ant7VAG+AFxpIUXg1o+aYBFjgEWBW2j1SyfMXwej23xIEbse5Hxb6XG4Z85k32+VCMhWNn6s3n6Ew819CLwebXFE5tVcWmjbuVcaA8rkN1Q6G+61qcLW0NmYMHEkU43LJMdHtj/fTgolmTChyVbEpEdialCNsZ7zqT5zOP7I+/0k19ChzskvqVExfswC3q7dS9q+r6H8nPwee0pUKTyjpe/ElHABc3ZWsW2QTZANCef5bP4bNBg+ETe1rWX/4q/b4XpV8k7V9vbcaV+Zxu/vobfLeQCaHO+MyyATNgnyxacmBa4B9JTS3iVuggfgQaTvNVaE/C7ZYan20JJmyqZ3QifsTyXJOvwpDI2HO10H/m3Zvm+wKfGpkr47zJbk3cMoJcYPEz+pLk4ht9lbcwmA5SEwFVJ1sjFiNcPGN+T8ZuXtGt9qBQB/3Pcl4MuSSeblVvVoIsOI/9SWEN0uwC5fm/4XG5PZywGlBPnuS9X4Z6rkGW9Od2J6SDgaDj+yfc3qZy1tfSeUYNJTraHJrD2suFuagIn7ZR+9eB3KfqD6Sk0juzROtZmds6XG1Dl/QPPBqrF2p17mToYtpl898Vj47HFnWfXA99s99Og8MN++eZ9P5fL79bj8fj0uLAli2+QZfOp1iGV3/ag2ZzgOrRJkH3qsTK0GQDenyxxvuIDjDRdYxPhhPrzWlPRGSbKXzzyMqloFGv1zkZHueXW1afP8FO2zMOzX7KPcigGFHtt05Sje0c6kdaqjqA3TOv7A/po/oc75o1Np0Kk0LLpTlvANgyx/+19sjBo1M/12EfdD0cnA/99ptOIIJ+ovwluTX4xTjOlcbZSl6PC8/th9qFFxLMvIlL6vF9k2bnodlgX9jU6lYeyMtxSzqTCuDa/DGI9YZn7VGbNBfvfJfn88jY91faZzfw//ld1Vl1N7QPHmUoi1LAQCgcBKkL8Oee8xym/pR2yzeQBE2Kg5NFRKsKlRE52pY+CCQQTOP01AijLDnR3Ng/mjWmMSXzHjfMKG1IpZlFmnJq2UFPva8z+p4H3qzUgSO3kAlxWx40EutHHJ5x0DlBp8jvSVinddgNzSuE1XjhY4tjhwB8zaQcs1VQs5Ux6mJjbnxfBfuWLI5NVjb5ER7QlA2UUJhF3NC10lubmx7YAtjezSmFjvF+YTrJhNt96MoquT9HmMTynZejSVXo+LpmA4IsWYzgtrRhKaqVwoqdZRI2M9D7Ezw5Yv3u6H7p+iY/Wv1N+PCTMmsxFVCVXBqG2lEOjrb/1Nt3PNcVuszOdhvHETty4G2q15mY3ha4ts+0lyLTSY+NQr/+f1mc8Wmo0ahe/EZ9M2RSaGRHx6A3Wzgs63TqVhwOE3CJx6FGNamhJdA2C4loT+jyTC/pC2fQCNqwvaVS4WO/5J17Fy5ot4XiqZOsMy3+ynW+vmLAvKiyEfO1GWUNkrfp+clr6S6J6dUrdAjfKmK0ctx+XGpqeRVhUHosk04fnPYUDK5j88CDXeukWGWaeIDQ9zz19lWShmyepmluRjSXB2XHX6uBTs763wFoSmKSfGKf2jGOU5mV0Zzgxa14dym4vuK2FCFMtLTUKJGaZFEf+DNB35d/cfaDamMXrzDcX6Mqamom6WSrOXBmKbnInmaBwZ60phnOWN3dqH16lQ04FaqGpUYNLqBYTr9LipbbFtlAITn61/2QXZHFWFuPb2mDCRaMjCXmWmVE7mPNsMc6svZXz57nCk5BaO0bi5cWZsOCcjpLrkq4ZMPhvyDp5/lFzRt9lgwGCSXlIRO3sBEDb8kGJlVU9DyDt7SQIadHo739Rr72hnkqJSZe/PcPkKNpevFNlG4+3FlddCqKqXJvWM3vi6rLXRD1O5Td70X/cYOafqPIbalfi8Q/5h0pncbL1Juap4dZUI+o1Yj73KhvlXGxVZGw6SGEd3+xZHtS0nswy8umcAYcviZJ3UVKidTk6Mq74OgHhDOvb74hXvE8D2ehauEy5x6Fx5FpVbxJut+hP2CKfZfOgk8dkehOnuFlga4mmRTZC1fr5cmuXC3zVm46a2pfu5Vtz8OJCkGrZsGS69LtzUttTRZ3M31AlHZdcRykfsl6Gc6jjdst3uy1ElKsYPs6auFM4ZadNMkeREYeSuAAePrqawX7OPc9SBWXkLEzXo9HaJrxSn8fai6p/XWOf1Byb0rLrnQ+iPd0vs5eX4S8n8f42Nq9N//mrLMqS5dJvxHgClM5Tz0hPbu9HHRVo9LnFRKO6PmIQB0ot5uf8kHHOqp978txfluh8pEWFM6l6RVxy2A9DgvfdwulEylUBxvXScCvoTgh7f9tIH9ahruxuQPp8b8e64P2O/sglycotAZleehYvahk+Tq5E8Phj9tgP4boM6we8AcKbjHKltdRWOJRQ7vdUrisPtJwE6jmRKHqrnvOe73m64LmfIp5JvqvjjyF0B7lEVFtaCJiSIer/GMsbjJDqVhrm3y7D+1Rcwxyg3otI4OxNof5OOZ9rn7Cnae5eLKy/YFhDjqbfC8NssTYZ50NdS6fWYq+WPbWsTk4u98NKgSw0ptf5MPnFVabVkNa2K16cJAMwO2Ig+Z/2V5idfwX/gLcVLREHyjnsP3cipbGnJA7ddF0uk38L4vdU0OiwdBIAuPqcSRmWmarPTLCkzERd13iyGwD+e/VUliyCbo6qw4YtvcVHbMPZaHWKbOaG/nZecsbmZf00Cr8MlN1D/9pM52Kt1fJJci+NN3XL2ltzsr8LYnfNiwFwyn0NapzosDpS8ct8dRfcZNDpWtn6vjK7Hl/1+YPK5FuhbnC9wPHeN5FsvSA/c1HrLcdUcpY4+GxNQ63A3PN9XY4qRdzWxhzFUCmac10LCDksz9cJKSJALY4TbGf6aLK09En8yr/zQ7GDkTKt5+dp2imuHuq1DsWaYdvbYz+dN3sIx0Ze4Hvb4hyWj1xrYFD7PspZIdk4cv0XMyzj0TMdwrWTyHqqA0gxy3c7HydLnYHhMmEtOvHZoud4y01KGGK7Tc6pJzpT6nGVQ1ahyVsKztWx3Ptuu0JUMnxRZBPnq6Gzc1Lb0v9iYpFZqjLfzT7UsGyXV+D48pVpJtP5+3P9eRyXdHkDHyr21CbtVvMWj5UCjUjNiglSrXSqtZDx1+zX7YJb0c9DoWM5Rp0AYIncd5QcTew0GFy9cke0ALe3vcMInlr9aN8x3LHVgKq0CYvnUa/oDE0NMJGRnM+xyM7ZtrkrQ2OgSWVvkbD9JeFwPKz1XMz/2SWbOGTII0trm22/J8Ic/+txzhgz87G9z0cYWnkGQy2y6S2zfbJrYQZOcSSGP4pIhnb5xr2P3ehoGhZentaDWcGey5A+vjK0OQKh9nOLLG+TiuiSatu6j2T96Wq5BhcSH8++bfDOSrH6OUIxEfbEFWaXX4+MsBbN3b6tI0O1oVHo9xtrSW/5sDy07Q6cAkG22K3bQ+0k51zuQIxWmATqqRfcm/J2SXTioMJLTnDCan48VDQa/zc5Z8yxlbbkCnUf+ErgH101+Vsquv8O/PeE9jxO8t0Bahb+wNbH/SHMCYMr55hjm+GD/6z6CKJmXldrentG1/6T7uRaUXi554iWV0vNYEM30t5syxffJY8U7MmwYtvBt7JLMOTPC0p+pb/OB48RkliZCVzB2nJuQ1+RE7XuOfA/HX/aV2OcCkN6hBjsqzaX8P30IGygt8GMsITHOxW/pKWoznN/em0DphybsAIxPqcTJu6VZEvQnbWJfwba/GmNC8RYjKr4gazS42Eg3xfTO3zO3XmOcbdL5rsz8B1rllckkGrKwu178Od9Foa4YzujueQvj1/FP5J8ZlYj4QIqJGVOUK5spCqfO10HZ0fcjsV+zj5ZrCq89fpieiQ1JikrFnuIlt8yHTtJn9nA+7LuMTo7Jlv2RK4Zik5pXFlnmM0mQbEjEhsQC11ESY7Uw+rjsZOnH7XC4UfK//SK+dxDtppVidshyymgLPvS53DJl0ONMF8wfe+C/R55k3/dvdaTskoXUyHk892eq6L1yMOosCPwk74XoWMz74KlRqSg75hR/ptsT9tkdjKnyV/o8CcYbN/GZtoeBv73BlTa+0FyK9+dO+d/yaX0c/jpBJ/+u6BISMciQoC++INvoOBRXlm2lHWlid48mIb/neEEFqTF5KL5b76A58uh58nJw+m0XujnlTfYoY3cT7380z02IrYmWvlVJ61SHnbPy4pE9Exta1kz23WGWtarCd+IeFk0MZBGBln1Klq89LddHZxDx8xBC/zrxXEZQphOnoBl0f2Mkmc5qavc6wv4fqhVop80w4/59NCouyda3avdRPg3OPyW9pEYmRaENDGBRmbVUmT4Ev7jn/wsCDAnn8Zp5HqT5ZHSgFgB27JfumTPyLdFZbEE23r5D2FsHmdTodQZ207G19WT8tXbsy9Tx5l/9AYiYIcWUS5/cU+J1txF/DyD8vXO4lFC5TFGY7t6ljV91Sj3nmz7XW84j1apEsiTx6ngKL3ju4SyXpdLnf342eJXgpBRrJGGiC/fMmZTe82zhmP+fkW/5ze1HCNsOA8j75ZVhSEm0kow9AYQO3UeHodJbLJRDJd6/QCB4dmxtsqm3ry/+O0twsoKVoOhvnRYIBIKnxavjc0q0WAEq81PUwqpUqutQolmXQLPZXErYIewQdgg7/mt2FMZTCbJAIBAIlEOshywQCARWghBkgUAgsBKEIAsEAoGVIARZIBAIrAQhyAKBQGAlCEEWCAQCK0EIskAgEFgJQpAFAoHAShCCLBAIBFaCEGSBQCCwEoQgCwQCgZUgBFkgEAisBCHIAoFAYCUIQRYIBAIrQQiyQCAQWAlCkAUCgcBKEIIsEAgEVoIQZIFAILAShCALBAKBlSAEWSAQCKwEIcgCgUBgJQhBFggEAitBCLJAIBBYCUKQBQKBwEoQgiwQCARWghBkgUAgsBKEIAsEAoGVIARZIBAIrAQhyAKBQGAlCEEWCAQCK0EIskAgEFgJQpAFAoHAShCCLBAIBFaCEGSBQCCwEoQgCwQCgZUgBFkgEAisBCHIAoFAYCUIQRYIBAIrQQiyQCAQWAlCkAUCgcBKEIIsEAgEVoIQZIFAILAShCALBAKBlSAEWSAQCKwEIcgCgUBgJQhBFggEAitB+zSNbVR6sy0OStlSgAzuk2XOVAk7hB3CDmHHf82OwngqQbbFgTqqZs9m1TOwz7yl5OxQa0geUIfOA7bw3a5GhA3a/3zsKAJhx3/bDk35ELqv30Ynh6sAdK7zEobLV0rcjuIi7HgyOwpDhCwAlV7P3c61OPjhTO4Z9YSPOvm8TRL8HySudym6Ol5Hr9KiV2mJ+cj/eZskKGGeykP+L6IJDcb1h1tsKDubnRla/m3ji+n+NUX6Sn+pNtlv32BH5ZWWfQ3+7YLNfHfs1u4v4kz5UOn1ZDauxPlOee9i751qXH7aWyL9Cx7NZ51W5tt2SPw//3j+n0ORb1xdORwA07FT+fZntq5FYgcVjj73+KvGfGbcqMe/7fyfalgmJ5qwcnRdv52ezil8fr0i0TXsMRtkFGOVitRudQCw7X2VmaHTidDpMGGyNNleZRlnpxoYPKgbDn0MGC5ekq//h9CEBJHcxIfdn03Ptz+6uZ6vfqqsWL/Whu9eJxYEbGdnhpYGtgYANCo1RrOpQNsZt4P59VI17D51gr3HFLMpeVA9WtpPBOwwYQbA9axRsf4E1okigvygEJsaVCO+rxTPPtJsOvYqGzakuZBgsKety1GO3LDn5ltReP19UVExehC1gwNX+lZh3vAZlNdl0jL2NTRD7TEbzsjWhyY0mLN9vDne40Hx0xCbnc2etHIAuGrS6OSYTJjOhk0VfqHJC0NxWq7cZ3BzuobdVaYX2F/R5i5x0+tQucp5/o0LoPTfWpxWyOsxqyuHk9jePd++sBbxTCj7K4PPdgXg8tYAAIIWxmO4liRr/w9y9ptIxn5yFydNBrvuFzy+MLoBtu4ZZKbr+KXBXAZXjCd2eTZDhwzD9ndlRjLuL1/CTW0HQOT2PgAEr9qnSF9Pys3eUQAMHrOaHk6So1LtQHf8+yZjTLlRYnZo3NwAiJ1YjpmNl/LjtRe419GM8cbNErOhpFBsTKTSakkaUJuDH8y0vPEvGYxU/3Uw4d+c4+Lr5Vg1fCJnvovgTNNZRAYNpuzHJSPIp2eFE9d8JplmIw0/fw+P76KR3ReZn8HxsILiN2T4MOzWSQ+1xtuL39dksSjwyYP+z4K6cjjlFp5jiu8KCvqA4KK2JfaVmdJGCNAaRo2qR9xb5QqMcp4G8wtViR+gYnrUMnw0+6loU1ii2YaN4WsBMIVL1kW/pefdk50p1eH0M/ddFPZr9nF0DYBtocfDOABA2st10DU0ARpKqQ0Y9U+UKH9mcr10Q6ZG0X4eh9rWFpct9mwsOwsAE2bLfXOo1lIiRw0heEy04naotFrSW1fnnck/A/CSwzYA2gZvIXjKW4T2lFeQvaOdWRy4g56JDdm9N5KQdx7tlJydUheA+C5zAWgw+G3s1xT/BaqYIGc0r8b+D2YAKiL+6QtAyOQsQg7txQB4H/AlSGvLqaYL2JJuS9D6ezmyrQyGpjXIHH0LgNhKc/n2ZiS/f9oUj1+VubHO7g2EMBifUpXVyxrh9/UeAOzI72GpVYVJpHxoKpTn6v9gre8uniaHO6n0XhavuMjqVxthPPlswvjFkoVU0+f+/wqK2fiUqmy+Wt5ypHnpU7zv+S9Rtpl0DDzO/oDgEhs1PYgmIpTYkS4sazLbEmKqt/FdwlYr47FqIkL5IWwRRrM9mWYDwUsU6ebJbHF1ofXu8wxwTSD3OzuZZaDbD++wqvckwnQ2rO0ymVE/vokxRr4R5cNo/f2I+dSXc23nF3r8dLPvqD5yKL7f7pGlv7NT6rIpUBLXxYE7IHAHdCnqjKP5tnbOmkfLNVWLbYcigqzxcGfA1FWoUVF5bw/KdT8CkE9wk9/LQI2KLel63v2uH34H5PlgC6DWcO7L2hzvOR0tkucR+vcAIj66hv0l5YaEwZ8d5qXlPVHfSMXvUuH/N5NvKb4r8wOgpvf5FrhujJHdUz81wJXTNWcDanQqDbFZmWSjJkKns7TRqTRkP/Q21Kk09HS+zLxa7rg9Y9HJmz8PoULDswAciQskaFn+TuziknFMTLBs7y8bQuSwhsR0mcH7nv/SrHYDHEpAkDVubtxuUZ7rHTMAmFF7Gc3s0iSbMlW89dMwwj5WziMMW3oOL409APUP96DU1kOK9VUUmlKlyF5uywDXBI5lGfm4uaRIqvRMylzew8UeroTp0nBXGzE66hWzQ+vvR8M/zrDBY8Mj2+hUGoLaJ5D5bfH7S+tUx+Lp9kxsCOSI8nNAEUHOjgzkFce/MQFlel3IN0zW+ngT+0EQJ2pOZ+19T7797HX8flZGjLWlfYj9IJC4V2ZxJjubtuuGAhAx7RqGS5cV6TMXc2Ym5n9jCw0RaFxdADj9no1lX/zccFxT5X3o1U5OtKl71JJEvGPKot2adwn4y8jSeVMopdFb9ldbM4Iy5ZNYGr6UUho92WYwYcKn9zkyf3i2/st+FE1uiDaM6wWOGwo5p3UD6eX9SXItXHafL7SNXKgdHLjRuTI1Bx9hhu9sS2gNYHeGjrcPvkG5T9Ioe1rB4blaQw/3PWhUNhjNJlQb3B9/jkKcfSeEk+Ez2Z2hY2KzThjPn7McMzWoRqhuF2DHprRg2H9cERs0bm7EfOKbT4zPZd8DoMXuIfSuGM1YT2nE1tHrKL8G1Cz2KOpKw4Kjt5a+VUnrVIcrDVUFxHr33kgAXqgbYxHucisGEELx8y6K19WoHewx3b0rdebnS+j6ZNb7/MHa+57M7/kSznuVKbfS+njzVfRaKuhsOJOdwcBBwwndKPVV2EOu9ffD5OmC6WiMIvY8yNm5gQDENJCGY30uNMHjz7Oye8enx1Vgre8My3a1zUMIzYmL/XC7JqM8pIfqSKYDoUOl0ULjiaM4+Xpe7PujMr/xxvhhBI1VPmZ4argvv/quBuDPxAh8rsUq15lKRfyCEE42nJm7g/4XGwOwI7oCYT/coey/x+TPLTzEjT61qWpzAKPZxJnsDDznKf85F4YmIpStb0wk06xl8IKh+J/Pc5Iy29bi4+nfU0YrJR2/2NyJUJQZXcaNCedcuzkA3DGlU/X34URMvw1AcMxRtjStz+DFR3FR29HH5RrfDA4g6H35RlEPxo7t1+wjZA20fCc3FJEKYBHe3VPqSqENGVFEkHUxiXRLaMmy4E18Ef0bveaMAKBZl/1M9NnHoMv1SRwcAgfkLyNS6WxIfbk67/3vZ0K0aoZeqcfJLypjuzF/7FYTEcq5LqXI8DHQp94OqtlvIVKXQtM/3iVsgHI1waYG1VhcewEA6pyYbsz3FfC4Lr933Kxufi8m4uMky8to9bmqFkH21twjaVg9/H6/QvlJCbRf248NKxcCUMUGVnabyoezOilWnpg8pB4A+16dCNjQ41wr/IekKuodqzQa1BoTZ7KzCNNJI5X5Af8AMNfpAluqh3P8QjVKr7XBeesZjLduKWiNRMe9AwhCudK6okh8qRTeGjuOZRnx/zoaTWgw8T29AdjbaxKOamk0dc+USdgP9xXL97zXYb3l51d6DCZs236S3paqPW6PrYYpU4VLTjWK3PRMbFhkIu9hXqgrv/OmiCAbb9wkvbM3UzeHMco9nqPDZ1qObUm35XztdECZIU/8j5GcajSbLel6mr8zFMdf9mGbk0jLrY8+NdyRoy1n4KjScyDTzIcJndipCmFj+HpeqHymkMG1fFxubGdJdF0wZNJp2mhKfyd/yObmSxVZ65/n6daeOByfi3n9+LxxmUYdpRBOUn0TRBpQGX3xmrUH1bUkan47lP0jpwEQYaMGrTKZf7WDQ07yF0zYcNeURepQH8yXlJ0taTYYCHztOO/V6k98Z0cAdMHSSK5F0CnuZNnSPvI47esd4YbRkfEzuuM9Q6E8Rw6GG4ULjTYokOuNfEmpaSJ0aTqqI6cxZ2bK2rf+liSxITojZfbaM9v/F9Q5ST0TefHiF+aOJOCgcp+DrTobgEOZWdhcuo0RyHKR7Ihvuihf29X3nAlZdL3Yo5iQd/bmeMGpT3xOWqc6LA6cB0hC7rtDnleUYiELw7Uktkb58u6puHyxuRMZAWh9vBWpM73/ah1iGs3mmxuR7OhTG8cD0rBKExnGxTaefD3gewDCdSmMvtKcHRurETTzNNqUC2hL+9BlZQtml11Hm34j8fhO/qGjNsCf/l03WrYnJDWn9GRlbu7G70ZbPPAUYzr+qy/k8zhNd+/islTyBlyWFjzfZ8oeajZ8k8O1pZR/7P9KEdrzoqw2qh0cCPon/+PU/KtReB1RVvgexHzgOMEH8u+LBWxIJBY4E/kK8//8nl1jJlOrYT/KdFbGkQD4rNlqlkc2xXgqHoDkAXWw73CNT0N+o5ldjgB3giaDBlhKJ+Wi9B+XGN7nBcZ6bybC4SoVd/VmfDWpHLGDgzQ6mHgjkrIzTigaxtmYUolezluoobfh1MeuuO+IolLHgqGrTHM2X07pTikl4/tF8GDc+dyECFlK3kCsZSEQCARWg2IessbVhdMzgoHtLLxTBoBKthcZ6hbHop6t8J0gr4d8/9U6/DhpEvWOvIVnl8uY70ueTEa72sydOZUQnZ5q+3oC4P8/MB85SRn2YERK6F2Z5cTB4J+pPHMU/gqEEABiPvdhres6S+XF8clVcJIhM1sY47wOWaor2o4fRamLT+9JmM0qyzVim82jA7VktfHmK5VZ7zsTnUoKh4xJqkHplacVT6Q9DcaYM7z88Siix8/iRL0faf5iP3Sb5StL81x8mONjs6lko6O7UzLN//yeu2bJ+yqnPVDoOfOmTWX49YGo9vwrmx2GxIvE14I+1AegLMd46bKUTMu9X3e9HIkx9dwjriAPR3aFQbA0USrhxe/hxcLbVdrRl6A5z8c7fpgrDVWErJHnWop5yGc+isiZ9KFnfaNI1jeKpN/CIQCUaxsve39ewxIoq7VHs8wd032p2MocVYV3pvxMmM6WiouG4PfySfxePon5iBSfVGm1pL5el5obzrO/5k90jGtL2aUXZLdNU6E8rU/e5kzLeehUGl5q05OX2vTEaXnJLOjjeTz9mc5zW+rIv1kyG5PDjT5RbPjyW0yYyDYbyTYb+WtBvRKdkvukmHS5s9XMXK8mb/2tOTOTAbHdLdteGnvKae0op3104spHA1muNo88Lgfnx0WhUanRqNSoUVFlzlCMZ5UVY4DQJTdpFtOBe6aMItt5rlMmsfekKJHQA4U85Etj63G620y2pNsyKaQC5KTJghaqOdbXyFD/zUwq1RTjdXnSZ5ltarG+3GzClwwj+GdJ5EwNqlFv5n5c1Wk0f7MfZbfmj7llv1gD85gUdkXO5qe7XlT4cYhipV3xXd0Z6BqHCYjc8yZlTsUp0o/cZLiqcVVnATZMvxUu23VV1Srw66cTccrJ3Hds9CoAXgnPd6VSTsAAAAkASURBVO2GR5HRJi/ZE7DxhuwevGuH83Te2pJfym16ova/3AtBv7Fw71kO1BXDOdRrCkazJPpV9vUgcPLRQmvq5cZ48jTaF6FTo4EktrTFOR7ulpWOne4jlcMNuVwHt3/OKVqFUxQPJvSAp6rMeByyC3LctLr802kC1Q/0w69fCjxQs2DOziY+uxQ19JdR2egefZGn5EakDi0adHdVoFIDJhI66fnT8ziNhw7EYedRNIH+nHvdD4AXOx1gvM8sdCoNgy435GL30gTFKSDGKhVX3oviz54TAD37MnUETFDJniF/HH6T4klq5YLx9p0nPkfj6kLzobsJ1EoP5bYuNQF51paIH6XDO2dSytSbkY/1vNROTqR0rsh9PxUB/yu5hJ/awYFTUyM5XnsGsdnQbd67+MfIf5+YDQbuZD3e41ty14evV7xK0LfHgbuy2wHS8qxXxqnQq3QczZIkL+D1eEwZRXuscqPefoSg7dLPkdHO+Y5tX1ED32sldx88TNDovCSjXBNCcpFVkM99FUXcq7MYl1Ib3x6XMN7Nf9PEfl2OTg5/E/bHCMIuH5St3zKrL3NosJHjg2by3su1OXA9iDOVZgPg/U48K2bkf4gOZRmpvG44ZdcYcuKBCYVcVR4OvjMNcsqGBnw/iID9j7iR6lYm/lV7yo2U58sNXzmYU69Ji8PMD/iH8tP7UepvPe5rT1gm6hSG2smJmy9VZN83c8g2G7ljyqL2lmGEnpQnbmqOqsIvUfMANV+nVGF/pzDgfIF22tI+3HkhkBtd0ngt7DBjPadTafEwWWx4HBpXFy73qsDogSt4zXEHJjT0+2QY/oufjwj8dNeLZV1boL52g8BrexT1VFUR5ThYS6qseb/X2wCoM44o2ONj7KlRgWn+3+Vs2bP6njMBC04+1zzDg9Oq5Sp3y0U2Qdb6eLO063S2pNsT3bcG5rt55UGXx0iF/5taTGTZ3UAix6fIOtwwnEuk1/fDadD+CL09dzHOexcgeXYrgv/iqjGNRr+OJHiV9Ja3OX+dUAXXsQBpJTfPtf+vvTuNieKM4zj+3UNAPPBCUZYVuRQ8SLUeWCGo1Vo1eLReUbGJVq21pjRqjK2m0bZaaTWIiq1nqo3UxirVpI2kFqMFPNFakeLFekIql6uAHDt9MewuCFaLs+y0Pp9XMCTMs9mZ/8w8x2/KbFPPTj7SgAbu/+RfK6AerFkS1QVvivz7iKxRSEMavrw7aPlF5g2MYIMhBZAH5bRDtcybH0Ha7e4AWDLkJdzeKaWUeLlQPOUBYd45HDCsp0LSYsHC4NNvE/iWcoNYBSHu8rxmYO93kRiu2Ytc5ZA+SHoNRfPNjDRmsszzICAv7e6xeyGBu5TvLqi5b9Ms+b/H9UtkeNMjAOwxd+Cr5W/Saq/zBpA+Th9D4LkzDu8y0LVry/Bv5e9j9s1ItEedV4hBTp3rsSWT1tU5HwAfJk6lc5E6BvMAxaa7WSlWkDNXGunjoiN0fe2goCvrBnD8jTUAxNyMwjy9JZXXcpTarY3PylRyVsLKLuMp7N+RY19usv0tr8qF1hc1aI/LCU2N0fd0I8GT/cadtpPoZVfImBuHFm2tgHrAlhthNSIrisvnfQig4QXZYjZjigklcpkXKb0Sbds3GFLA+mYgOTsf7dy6bSq2lBG+ZRF+25TNk6hoaZ+/OXFSCskR3dBq5LuMpJB43LX2rqykh+04lB/KlbgQ/BKViUjVurmBTkdpRAhmHz2FrzxiV/hWerik4a6xD5R9c9+bLxLH47c1h+a3HT/4mvuLgRuBJRj19uIzwzSEnLVdCU6/5fBjVuPqStbaziS1Osy9qlLyRjt20PCZBPkS62U/dgurSvD90ezQVMh/0uGxrhM52+LZF5M8C8UK8sz+xxiQMRnvz1PRtmhB7vSeuEflkt1zE73S5Ucf3/eLqbyZo9Qu61V53USL6yZGJvautb0tjXtVLS/XcancYrsbtKoZUJ/xwMiFtaFIGtDUOMpaJKY/VzG20qSep/W0NoRNXMCw2Wl80v7pd7p7zN7EXhyGIVaHMT1V8UJg+N7E8ui+rGh/iiXtzrOk3XnbU4QFuRgfL3NjR144hVM95O9TgT66qsjeXJ2oZ//r8XR30QO1MwgqJB2x+XJozPbDg/FffAqjRfnP/ySGVanMXTXosa1FNONEo7ShaMJL/Dl0IxVSFYP2LSTgnvNf6XV1ae2LQuSZmXid/sNJrambAHd9TTDuCmd6KNqHrNFI5M8Kw31CLj90W4OpsiUDPnoXn91yIaiscNAcKhXqMvl3Fox5j+RNG1lf2I3NycPInBhfK6AeSh02D9mqKr8Az4Q0LuzxYGyrcSBJXJ/mQ6mP/TQPWZ0LknxFkB6WYLjnuGXLlbdu8/POgUTH2C+QTaozocfsWIS2HHy3W98YUvTc+9N1DeDSEg/OvhpPc60rG4u6km+5SYRbOV8X+3K5tAPJ+/phOPLA9oomfwd/J2qj9+7E6MUpACzNG6jorIGG0oYGcygsAWhm29Z+Xf0vFGgMJeP6UzMDOdoUoXh3BShYkLelh5M9ajO/dnVjztEZvLN0DtKZi7QhzWmPGM7WNOkkUUnyYooA0omK6VsnoL6xVBUVQ/UsC59Pay+BbuzpQ15xqXwQF1Znu5FUxdtTsA4i22QzPmsKus/a0iQtk8PN/FgdbER/NhtLSQkGnDdirwbXZvlyoO1B7laVcnZFb6cdozWZA1oS1EQuxvGFcjqi/kT9cbaN4fGIzt/SQxSdXWGlWEEOmn2K0fSRf+b0C1uEBXXxGHmFO4ALZsAkn9BlZWiPFzjt5FYTvXcnEqLlvN+x52biqXBGRkPdHWd/mt6ybRQAHcvUc+G8Omkz0QMiyAtTaR+yIAj/PZW377DKX37juKdC88yVEDAtg9eQc4g7vkBPMKIgC4IgPIU9orMmZe+OATSS9OydCxqN5i/ApHgrnqyzJEmeoh2iHaIdoh3/t3bU518VZEEQBMFxRB6yIAiCSoiCLAiCoBKiIAuCIKiEKMiCIAgqIQqyIAiCSoiCLAiCoBKiIAuCIKiEKMiCIAgqIQqyIAiCSvwNMM1DDq2vtnAAAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "from sklearn.decomposition import PCA\n", + "from sklearn.preprocessing import StandardScaler\n", + "from sklearn.ensemble import RandomForestClassifier\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.metrics import confusion_matrix, accuracy_score\n", + "from helper_functions import show_images, do_pca, scree_plot, plot_component\n", + "import test_code as t\n", + "\n", + "import matplotlib.image as mpimg\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "%matplotlib inline\n", + "\n", + "#read in our dataset\n", + "train = pd.read_csv('./data/train.csv')\n", + "train.fillna(0, inplace=True)\n", + "\n", + "# save the labels to a Pandas series target\n", + "y = train['label']\n", + "# Drop the label feature\n", + "X = train.drop(\"label\",axis=1)\n", + "\n", + "show_images(30)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`1.` Perform PCA on the **X** matrix using on your own or using the **do_pca** function from the **helper_functions** module. Reduce the original more than 700 features to only 10 principal components." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "# Make sure to keep track of the resulting components and the pca object\n", + "do_pca?\n", + "pca, X_pca = do_pca(10, X)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": true + }, + "source": [ + "`2.` Now use the **scree_plot** function from the **helper_functions** module to take a closer look at the results of your analysis." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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RUREKj1dPFWOjB07lm7dulG7dm06dOjAjBkz/meZhQsXMmzYMBo3blzkKdPjhp/NKX27sOSJc8h+/Qa+/3TCj/MyMjIYNGgQDRs25Pbbb//JesOHDyc1NbX0d0pERESiSmGunJg6dSp33XUXr7/+Ojk5OXz99de0b9/+f5arXr06559/Pq+++upPpgcCzh8+WszqVkO56C+T2L5jBx9P/pD77ruP2bNnA/DYY49x+eWXs3r1aj744IMfw9u4ceNo3749KSkp0d9RERERKVU6zVpOPPjggzzwwAMMGjQIgFatWhW5XJcuXejSpQtpaWk/TtubV8ivx81hyqJNXHPmYB4YEeyxamaYGStXrqRfv36sXr2aW2+9lXr16tG/f39WrVpF586defzxx5k+fXqZ7KeIiIiULrXMlQOFhYWkpqayefNmOnbsSHJyMjfddBN79+495LpZOblc8PJ/+GzxJh4Y0Z3fn9mDW26+iVq1atG1a1datGjB6aefDkDPnj2ZOnUq27dvJzU1le7du3P//ffz61//mvr160d7N0VERCQKFObKgU2bNpGfn8/EiROZMWMGc+fOZc6cOTz66KOHXPfsMd+yYtMuXr40hauOb4eZ8fzzz5OTk8OMGTM455xzSEhIAOCee+5hxowZnHjiidx4443k5+czf/58Ro4cyejRoxk8eDDPPfdctHdXRERESpHCXDlQs2bwtlo333wzLVq0oHHjxtx22218/PHHB13n+9VbACgIBJhw/bH/M/RIfHw8xx9/PJmZmbzwwgsANGzYkHHjxjFv3jxuvfVWbr75Zp599lkef/xxevbsybRp03jxxRdZvHhxlPZURERESpvCXDnQoEEDkpOTIx7Q963v1nLPPxcA8MGNx9Gz1cGHHikoKGDlypX/M/3ll19m0KBB9OzZkwULFpCSkkKNGjXo1asXCxcuPLwdERERkTKnMFdOXHnllTz77LNkZWWxbds2nnnmGUaMGPGTZQoDzqOTF/G7iT/QLzkJgAYJxr59+wDIyspi7Nix7Nq1i8LCQqZMmcK7777LKaec8pPtZGVlMWbMGB566CEA2rVrx/Tp09m1axepqalF9qIVERGR8klhrpy4//776d+/P507d6Zbt2706dOH3/3ud6Snp5OUlMSytFXc8NZsXvzoe9L/fA4f3H8REDxF26VLFwDMjBdeeIHk5GQaNGjAHXfcwTPPPMOoUaN+8l533HEHDzzwAElJwUB4zz338MUXX9C6dWvOPPNMDVEiIiJSgZi7x7qGMpOSkuIVcWDcrJ25XP1GKgvX7+CBEd258rh2sS5JREREoszMZrv7IVtYNM5cObdkw06u/vsstu/N55VLUxiie6yKiIhIGIW5Utb27o+itu1r3iy9VsU1j59RatsSERGR2NE1cyIiIiIVmMKciIiISAWmMCciIiJSgSnMiYiIiFRgCnMiIiIiFZjCnIiIiEgFpjAnIiIiUoEpzElUrVixgsTERC655JIi5z/11FP07NmTOnXq0K5dO5566qmfzP/2228ZMGAAderUoXfv3nzzzTc/zps3bx49evSgcePGPP300z9Oz8/PZ+DAgWRkZERnp0RE5P/bu/v4nuv98eOPZxOtTdPamOsRcmwRRowUOhWLSaKR1rG4uT5xHCdilJ1arERy0aFcHnyPFepULufiJ8dpMpmrXLTYEc4xLIxt9vr98bnw2fWwzz775Hm/3XZrn/f79X6/X+92w3PP18VTlSNODeZE5BkROSwiR0Xk9QLOVxKRldbzu0Qk0Ho8UEQyRCTJ+jXXmf1UzjNs2DBatWpV6HljDIsXL+b8+fN88803zJo1ixUrVgCQlpZG9+7d+fOf/8yFCxcYO3Ys3bp14/z584ClpmxcXBx79+4lJiaG06dPA/D+++/z/PPPU7t2bee/oFJKKeViTgvmRMQD+AjoAjQBIkSkSZ5mUcB5Y0wDYDrwrsO5Y8aYR6xfg53VT+U8K1asoEqVKnTu3LnQNmPHjqVFixZUqFCBhx56iPDwcHbs2AFYsnLVqlXjhRdewMPDg5deegl/f38+++wzAH766Sc6depEzZo1adiwISdOnODEiRPEx8czatQop7xTcZnGhIQEOnbsiI+PD4GBgbnOnT17loiICGrUqIGPjw/t2rVj165d9vOaaVRKKXUrnJmZaw0cNcYcN8ZkAiuA8DxtwoFF1u9XAZ1FREr6ABExN/NVKm+lSiQ9PZ3o6Gjee++9El9jjGH79u0EBQXZPxtj8rVJTk4GIDg4mPXr15OamkpKSgoPPvggI0eOZOrUqdx9992l9zIOiss0enl5MWDAgHzDxQCXLl2iVatW7N69m7S0NCIjIwkLC+PSpUuAZhqVUkrdGmcGczUBx1RCqvVYgW2MMdnAReAB67l6IrJHRLaKyGNO7KdygokTJxIVFXVTAcjkyZPJycnhD3/4AwChoaGcOnWK5cuXk5WVxaJFizh27BhXrlwBIC4ujjlz5tC9e3emT5/Ojh07qFy5MvXr1yc8PJzHH3+cf/zjH6X2TiXJNLZu3Zr+/ftTv379fOfq16/P6NGjqV69Oh4eHgwaNIjMzEwOHz4MuCbTqJRSyv1VcOK9C8qw5c2OFdbmF6COMeaciLQEVotIkDEmPVdDY0qcxQMICQnR7FwZSEpKYuPGjezZs6fE18yaNYvFixezfft2KlWqBMADDzzAmjVrGDNmDMOGDePpp5/mySefpFatWgDUrVuXr776CoArV64QGhrKunXrGDFiBH369CEsLIzg4GA6d+6Mr6/vbb2TLdO4adMmFixYcFv3sklKSiIzM5MGDRoANzKNzZs3t2cao6KinJppVEop5f6cGcoaOTQAABuESURBVMylAo5pmVrAqULapIpIBcAHSDOWsbVrAMaY3SJyDGgEJDqxv6qUbNmyhZSUFOrUqQNYhhevX7/OgQMH+P777/O1/+STT4iNjWXbtm32QM3m8ccf57vvvgMgOzubBx98kD/96U/57vHWW2/x6quvUq1aNfbt20dMTAw+Pj7UqlWLo0eP0rp169t6p1vJNBYlPT2d/v37M2nSJHx8fABLpnHIkCGcPn26wEzjhQsXGD58OC+88EKp9EEppdRvgzODue+AhiJSD/gP8CLQN0+btUAksBPoBWw2xhgR8ccS1F0XkfpAQ+C4E/uqStGgQYN48cUX7Z/j4uJISUlhzpw5+douW7aM8ePHk5CQUODQ5J49ewgODiYjI4Po6Ghq1arF008/navNgQMH2LJli33hRL169di8eTM+Pj4cOXLEHlTeqlvJNBYlIyODbt260aZNG8aNG2c/XpaZRqWUUr8dTpszZ50DNxxYBxwE/s8Ys19E3hKR7tZmC4AHROQoMBqwbV/SAfhBRPZiWRgx2BiT5qy+qtJ17733EhAQYP/y9vbmnnvuwd/fn+3bt+Pt7W1vO2HCBM6dO0erVq3w9vbG29ubwYNvLF6eOnUqfn5+1K5dm19++YXPP/883/OGDRvGjBkz8PDwAOCdd95h5syZBAUFMX78eAICAm7rfRwzjQEBAcTFxREfH0+LFi1u+l7Xrl2jR48e1KxZk3nz5hXaLm+mMSQkJFemUSmllLKRvKsFf8tCQkJMYqJzR2oDX/+nU+9fWlJiw1zdBbdx5coV0tNvTNd0zDT6+/vnapuTk0NmZiYJCQkMHjyYw4cPc9ddd1GxYkWysrLo2bMnHh4erFq1igoVCk6MHzhwgAEDBrBjxw48PDzo2rUr3bt357nnniMoKIjk5OTbDlCVUkqVfyKy2xgTUlw7rQChVDFuJtO4bds2PD096dq1KydOnMDT05OnnnoKsOyb9+WXX7J+/XqqVKliz0Ru37491/OcnWlUSin126KZuVL2W8vMucP7aJbx5r300kts2rSJy5cvExAQwNixY3n11VfztVu0aBEzZ87kyJEj3HffffTt25e3337bnlVMS0sjKiqK9evX4+fnxzvvvEPfvpapsXv37qVv376cOXOGN954w769SlZWFu3bt2fVqlW6d55SShVBM3NKqUKNGzeOlJQU0tPTWbt2LRMmTGD37t352l25coUPPviA//3vf+zatYtNmzYRFxdnPz9s2DAqVqzImTNnWLZsGUOGDGH//v32Z+gmyEop5XzOXM2qVLmjmUYLW5UNABFBRDh27BgtW7bM1W7IkCH272vWrEm/fv1ISEgA4PLly8THx5OcnIy3tzft27ene/fuLFmyhNjYWPsmyJUqVbJvgpyZmUl8fLx95bFSSqnbp5k5pe5QQ4cO5d5776Vx48ZUr16drl27FnvNtm3b7IHgjz/+iIeHB40aNbKfb9asmT0z54pya0opdSfSYE6pO9Ts2bP59ddf2b59Oz179rRX3ijMp59+SmJiImPGjAEsm0HbNjy28fHx4ddffwXKvtyaUkrdqTSYU+oO5uHhQfv27UlNTS1wU2eb1atX8/rrr/P111/j5+cHgLe3d64tW8BS2aJy5crAjU2Qv//+e8LDw4mOjiYuLo4xY8bQp08f1q5dy+jRo0lLu/UtJK9du0ZUVBR169alcuXKNG/enK+//rrAtoMHD7avIPb29qZSpUr2voJlUUj16tW57777aNSoEfPnz7efO3nyJG3atMHX1zdfBZJnnnkGZy+sUkqpomgwp5QiOzubY8eOFXjum2++YeDAgXzxxRc8/PDD9uONGjUiOzubI0eO2I/t3bs313w8G2dtgpydnU3t2rXZunUrFy9eZMqUKfTu3ZuUlJR8befOnculS5fsXxEREblKoxW1KOSd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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "scree_plot?\n", + "scree_plot(pca)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`3.` Using the results of your scree plot, match each letter as the value to the correct key in the **solution_three** dictionary. Once you are confident in your solution run the next cell to see if your solution matches ours." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "a = True\n", + "b = False\n", + "c = 6.13\n", + "d = 'The total amount of variability in the data explained by the first two principal components'\n", + "e = None\n", + "\n", + "solution_three = {\n", + " '10.42' : d,\n", + " 'The first component will ALWAYS have the most amount of variability explained.': a,\n", + " 'The total amount of variability in the data explained by the first component': c,\n", + " 'The sum of the variability explained by all the components can be greater than 100%': b\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Looks good! The amount of variability explained by each principal component gives us an idea of how much of the original variability in the original data is retained by each component. Nice job matching these up!\n" + ] + } + ], + "source": [ + "#Run this cell to see if your solution matches ours\n", + "t.question_3_check(solution_three)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`4.` Use the **plot_component** function from the **helper_functions** module to look at each of the components (remember they are 0 indexed). Use the results to assist with question 5." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Use the images of the component weights to answer the next question\n", + "plot_component?\n", + "plot_component(pca, 3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`5.` Using the results from viewing each of your principal component weights in question 4, change the following values of the **solution_five** dictionary to the **number of the index** for the principal component that best matches the description. Once you are confident in your solution run the next cell to see if your solution matches ours." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "solution_five = {\n", + " 'This component looks like it will assist in identifying zero': 0,\n", + " 'This component looks like it will assist in identifying three': 3\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Nice job! That matches our solution as well! The index of the first principal component appears to have really high weights where a zero would appear. Alternatively, the fourth (third indexed component) appears to downweight where a three would appear to make it stand out.\n" + ] + } + ], + "source": [ + "#Run this cell to see if your solution matches ours\n", + "t.question_5_check(solution_five)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "From this notebook, you have had an opportunity to look at the two major parts of PCA:\n", + "\n", + "`I.` The amount of **variance explained by each component**. This is called an **eigenvalue**.\n", + "\n", + "`II.` The principal components themselves, each component is a vector of weights. In this case, the principal components help us understand which pixels of the image are most helpful in identifying the difference between between digits. **Principal components** are also known as **eigenvectors**." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/python/Unsupervised Learning/Dimensionality Reduction and PCA/.ipynb_checkpoints/PCA_1-checkpoint.ipynb b/python/Unsupervised Learning/Dimensionality Reduction and PCA/.ipynb_checkpoints/PCA_1-checkpoint.ipynb new file mode 100644 index 0000000..f59447f --- /dev/null +++ b/python/Unsupervised Learning/Dimensionality Reduction and PCA/.ipynb_checkpoints/PCA_1-checkpoint.ipynb @@ -0,0 +1,1176 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Your Turn\n", + "\n", + "In the previous video, you saw an example of working with some MNIST digits data. The MNIST dataset can be found here: http://yann.lecun.com/exdb/mnist/.\n", + "\n", + "First, let's import the necessary libraries. Notice there are also some imports from a file called `helper_functions`, which contains the functions used in the previous video." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "from sklearn.decomposition import PCA\n", + "from sklearn.preprocessing import StandardScaler\n", + "from sklearn.ensemble import RandomForestClassifier\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.metrics import confusion_matrix, accuracy_score\n", + "from helper_functions import show_images, show_images_by_digit, fit_random_forest_classifier2 \n", + "from helper_functions import fit_random_forest_classifier, do_pca, plot_components\n", + "import test_code as t\n", + "\n", + "import matplotlib.image as mpimg\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`1.` Use pandas to read in the dataset, which can be found in this workspace using the filepath **'./data/train.csv'**. If you have missing values, fill them with 0. Take a look at info about the data using `head`, `tail`, `describe`, `info`, etc. You can learn more about the data values from the article here: https://homepages.inf.ed.ac.uk/rbf/HIPR2/value.htm." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.read_csv('./data/train.csv')\n", + "df.fillna(value=0, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "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", + "
labelpixel0pixel1pixel2pixel3pixel4pixel5pixel6pixel7pixel8...pixel774pixel775pixel776pixel777pixel778pixel779pixel780pixel781pixel782pixel783
01000000000...0.00.00.00.00.00.00.00.00.00.0
10000000000...0.00.00.00.00.00.00.00.00.00.0
21000000000...0.00.00.00.00.00.00.00.00.00.0
34000000000...0.00.00.00.00.00.00.00.00.00.0
40000000000...0.00.00.00.00.00.00.00.00.00.0
\n", + "

5 rows × 785 columns

\n", + "
" + ], + "text/plain": [ + " label pixel0 pixel1 pixel2 pixel3 pixel4 pixel5 pixel6 pixel7 \\\n", + "0 1 0 0 0 0 0 0 0 0 \n", + "1 0 0 0 0 0 0 0 0 0 \n", + "2 1 0 0 0 0 0 0 0 0 \n", + "3 4 0 0 0 0 0 0 0 0 \n", + "4 0 0 0 0 0 0 0 0 0 \n", + "\n", + " pixel8 ... pixel774 pixel775 pixel776 pixel777 pixel778 \\\n", + "0 0 ... 0.0 0.0 0.0 0.0 0.0 \n", + "1 0 ... 0.0 0.0 0.0 0.0 0.0 \n", + "2 0 ... 0.0 0.0 0.0 0.0 0.0 \n", + "3 0 ... 0.0 0.0 0.0 0.0 0.0 \n", + "4 0 ... 0.0 0.0 0.0 0.0 0.0 \n", + "\n", + " pixel779 pixel780 pixel781 pixel782 pixel783 \n", + "0 0.0 0.0 0.0 0.0 0.0 \n", + "1 0.0 0.0 0.0 0.0 0.0 \n", + "2 0.0 0.0 0.0 0.0 0.0 \n", + "3 0.0 0.0 0.0 0.0 0.0 \n", + "4 0.0 0.0 0.0 0.0 0.0 \n", + "\n", + "[5 rows x 785 columns]" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "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", + "
labelpixel0pixel1pixel2pixel3pixel4pixel5pixel6pixel7pixel8...pixel774pixel775pixel776pixel777pixel778pixel779pixel780pixel781pixel782pixel783
count6304.0000006304.06304.06304.06304.06304.06304.06304.06304.06304.0...6304.0000006304.0000006304.0000006304.06304.06304.06304.06304.06304.06304.0
mean4.4403550.00.00.00.00.00.00.00.00.0...0.1395940.1422910.0269670.00.00.00.00.00.00.0
std2.8856130.00.00.00.00.00.00.00.00.0...5.0999405.5310891.6755470.00.00.00.00.00.00.0
min0.0000000.00.00.00.00.00.00.00.00.0...0.0000000.0000000.0000000.00.00.00.00.00.00.0
25%2.0000000.00.00.00.00.00.00.00.00.0...0.0000000.0000000.0000000.00.00.00.00.00.00.0
50%4.0000000.00.00.00.00.00.00.00.00.0...0.0000000.0000000.0000000.00.00.00.00.00.00.0
75%7.0000000.00.00.00.00.00.00.00.00.0...0.0000000.0000000.0000000.00.00.00.00.00.00.0
max9.0000000.00.00.00.00.00.00.00.00.0...253.000000253.000000130.0000000.00.00.00.00.00.00.0
\n", + "

8 rows × 785 columns

\n", + "
" + ], + "text/plain": [ + " label pixel0 pixel1 pixel2 pixel3 pixel4 pixel5 pixel6 \\\n", + "count 6304.000000 6304.0 6304.0 6304.0 6304.0 6304.0 6304.0 6304.0 \n", + "mean 4.440355 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "std 2.885613 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "min 0.000000 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "25% 2.000000 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "50% 4.000000 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "75% 7.000000 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "max 9.000000 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "\n", + " pixel7 pixel8 ... pixel774 pixel775 pixel776 \\\n", + "count 6304.0 6304.0 ... 6304.000000 6304.000000 6304.000000 \n", + "mean 0.0 0.0 ... 0.139594 0.142291 0.026967 \n", + "std 0.0 0.0 ... 5.099940 5.531089 1.675547 \n", + "min 0.0 0.0 ... 0.000000 0.000000 0.000000 \n", + "25% 0.0 0.0 ... 0.000000 0.000000 0.000000 \n", + "50% 0.0 0.0 ... 0.000000 0.000000 0.000000 \n", + "75% 0.0 0.0 ... 0.000000 0.000000 0.000000 \n", + "max 0.0 0.0 ... 253.000000 253.000000 130.000000 \n", + "\n", + " pixel777 pixel778 pixel779 pixel780 pixel781 pixel782 pixel783 \n", + "count 6304.0 6304.0 6304.0 6304.0 6304.0 6304.0 6304.0 \n", + "mean 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "std 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "min 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "25% 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "50% 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "75% 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "max 0.0 0.0 0.0 0.0 0.0 0.0 0.0 \n", + "\n", + "[8 rows x 785 columns]" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.describe()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`2.` Create a vector called y that holds the **label** column of the dataset. Store all other columns holding the pixel data of your images in X." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "y = df['label']\n", + "X = df.drop('label', axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "That looks right!\n" + ] + } + ], + "source": [ + "#Check Your Solution \n", + "t.question_two_check(y, X)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`3.` Now use the `show_images_by_digit` function from the `helper_functions` module to take a look some of the `1`'s, `2`'s, `3`'s, or any other value you are interested in looking at. Do they all look like what you would expect?" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/workspace/helper_functions.py:63: FutureWarning: Method .as_matrix will be removed in a future version. Use .values instead.\n", + " mat_data = X.iloc[indices[0][digit_num]].as_matrix().reshape(28,28) #reshape images\n" + ] + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show_images_by_digit(7) # Try looking at a few other digits" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`4.` Now that you have had a chance to look through some of the data, you can try some different algorithms to see what works well to use the X matrix to predict the response well. If you would like to use the function I used in the video regarding random forests, you can run the code below, but you might also try any of the supervised techniques you learned in the previous course to see what works best.\n", + "\n", + "If you decide to put together your own classifier, remember the 4 steps to this process:\n", + "\n", + "**I.** Instantiate your model. (with all the hyperparameter values you care about)\n", + "\n", + "**II.** Fit your model. (to the training data)\n", + "\n", + "**III.** Predict using your fitted model. (on the test data)\n", + "\n", + "**IV.** Score your model. (comparing the predictions to the actual values on the test data)\n", + "\n", + "You can also try a grid search to see if you can improve on your initial predictions." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[202 0 0 0 0 0 5 0 2 0]\n", + " [ 0 234 3 0 0 1 1 2 2 0]\n", + " [ 1 6 212 1 2 0 0 5 1 0]\n", + " [ 2 0 6 169 0 10 0 1 2 1]\n", + " [ 0 0 0 0 171 0 2 1 0 4]\n", + " [ 2 1 0 5 0 174 3 0 1 0]\n", + " [ 1 0 0 0 1 2 206 1 0 0]\n", + " [ 0 0 6 1 7 0 0 204 1 6]\n", + " [ 0 1 4 7 0 4 1 0 183 2]\n", + " [ 2 1 0 2 8 1 0 5 6 183]]\n", + "0.931283037001\n" + ] + }, + { + "data": { + "text/plain": [ + "0.93128303700144166" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Remove the tag to fit the RF model from the video, you can also try fitting your own!\n", + "fit_random_forest_classifier(X, y)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`5.` Now for the purpose of this lesson, to look at PCA. In the video, I created a model just using two features. Replicate the process below. You can use the same `do_pca` function that was created in the previous video. Store your variables in **pca** and **X_pca**." + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(6304, 11)" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "do_pca?\n", + "pca, X_pca = do_pca(11, X)\n", + "X_pca.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`6.` The **X_pca** has reduced the original number of more than 700 features down to only 2 features that capture the majority of the variability in the pixel values. Use the space below to fit a model using these two features to predict the written value. You can use the random forest model by running `fit_random_forest_classifier` the same way as in the video. How well does it perform?" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[189 0 2 0 1 7 7 0 1 2]\n", + " [ 0 231 2 0 0 0 3 0 7 0]\n", + " [ 2 2 207 3 3 1 4 3 3 0]\n", + " [ 1 0 12 157 0 6 1 2 11 1]\n", + " [ 0 0 2 0 147 1 4 3 1 20]\n", + " [ 7 0 4 7 3 150 1 0 8 6]\n", + " [ 6 0 1 0 2 1 200 0 1 0]\n", + " [ 1 2 4 1 3 1 1 195 5 12]\n", + " [ 2 2 3 7 3 10 0 1 173 1]\n", + " [ 3 0 1 2 31 0 0 18 6 147]]\n", + "0.863046612206\n" + ] + }, + { + "data": { + "text/plain": [ + "0.86304661220567036" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "fit_random_forest_classifier?\n", + "fit_random_forest_classifier(X_pca, y)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`7.` Now you can look at the separation of the values using the `plot_components` function. If you plot all of the points (more than 40,000), you will likely not be able to see much of what is happening. I recommend plotting just a subset of the data. Which value(s) have some separation that are being predicted better than others based on these two components?" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Try plotting some of the numbers below - you can change the number\n", + "# of digits that are plotted, but it is probably best not to plot the \n", + "# entire dataset. Your visual will not be readable.\n", + "\n", + "plot_components(X_pca[:200], y[:200])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`8.` See if you can find a reduced number of features that provides better separation to make predictions. Say you want to get separation that allows for accuracy of more than 90%, how many principal components are needed to obtain this level of accuracy? Were you able to substantially reduce the number of features needed in your final model?" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[[111 0 38 13 7 7 26 0 7 0]\n", + " [ 0 208 0 4 1 8 4 7 7 4]\n", + " [ 38 2 72 25 16 23 35 1 13 3]\n", + " [ 13 2 31 18 22 27 25 15 25 13]\n", + " [ 5 4 18 19 47 17 16 11 10 31]\n", + " [ 8 8 31 24 14 23 30 3 34 11]\n", + " [ 30 4 54 17 13 28 38 2 23 2]\n", + " [ 3 6 3 10 33 9 3 90 8 60]\n", + " [ 7 6 23 29 24 32 28 7 36 10]\n", + " [ 2 12 2 17 29 9 4 54 8 71]]\n", + "0.34310427679\n", + "[[157 0 6 2 1 11 18 1 13 0]\n", + " [ 0 224 1 4 2 5 5 0 2 0]\n", + " [ 18 3 122 30 5 3 38 0 8 1]\n", + " [ 3 3 59 54 6 15 27 4 17 3]\n", + " [ 6 0 2 4 95 15 1 13 16 26]\n", + " [ 7 0 8 17 22 63 27 7 29 6]\n", + " [ 17 8 18 15 2 10 128 0 13 0]\n", + " [ 0 2 0 4 24 9 1 120 8 57]\n", + " [ 15 2 6 29 27 40 36 2 44 1]\n", + " [ 2 2 1 2 45 4 1 55 8 88]]\n", + "0.526189332052\n", + "[[175 0 8 0 4 11 4 0 7 0]\n", + " [ 0 225 1 1 0 2 3 2 9 0]\n", + " [ 13 2 167 10 4 8 20 0 3 1]\n", + " [ 2 0 22 122 0 11 3 1 28 2]\n", + " [ 5 0 4 1 124 1 7 15 0 21]\n", + " [ 5 0 5 28 16 81 3 5 34 9]\n", + " [ 4 0 28 0 2 3 173 0 1 0]\n", + " [ 3 3 3 1 20 4 0 133 9 49]\n", + " [ 14 6 6 29 4 42 1 3 97 0]\n", + " [ 2 1 2 2 47 6 1 45 7 95]]\n", + "0.66890917828\n", + "[[176 0 9 0 4 6 5 1 7 1]\n", + " [ 0 229 2 1 0 2 2 2 4 1]\n", + " [ 14 2 176 10 5 8 11 1 1 0]\n", + " [ 1 0 24 119 0 13 1 2 29 2]\n", + " [ 3 0 1 0 120 1 10 6 1 36]\n", + " [ 9 1 10 23 3 93 2 9 31 5]\n", + " [ 3 0 17 0 3 0 187 0 1 0]\n", + " [ 2 2 5 3 9 6 0 172 4 22]\n", + " [ 14 2 3 19 4 49 2 3 105 1]\n", + " [ 2 1 2 1 50 8 1 24 4 115]]\n", + "0.716962998558\n", + "[[177 0 5 0 4 11 8 0 4 0]\n", + " [ 0 231 2 1 0 1 2 0 6 0]\n", + " [ 2 2 204 6 5 1 1 2 5 0]\n", + " [ 0 0 18 134 0 10 2 3 23 1]\n", + " [ 1 0 3 0 125 1 8 7 1 32]\n", + " [ 7 0 1 10 2 146 2 4 9 5]\n", + " [ 4 0 6 1 4 0 195 0 1 0]\n", + " [ 1 3 7 0 10 1 0 182 4 17]\n", + " [ 4 3 5 22 6 13 1 2 145 1]\n", + " [ 0 1 0 0 56 2 1 24 11 113]]\n", + "0.793849111004\n", + "[[178 0 4 0 4 10 8 0 5 0]\n", + " [ 0 231 2 2 0 0 2 0 5 1]\n", + " [ 2 2 205 6 4 0 3 2 4 0]\n", + " [ 0 1 15 132 0 10 2 5 25 1]\n", + " [ 0 0 2 0 132 1 4 7 5 27]\n", + " [ 10 1 2 11 5 141 0 5 9 2]\n", + " [ 3 0 5 1 4 0 196 0 2 0]\n", + " [ 1 2 6 0 8 2 1 180 7 18]\n", + " [ 1 2 4 15 2 13 0 2 161 2]\n", + " [ 1 0 0 1 52 1 1 28 10 114]]\n", + "0.802498798654\n", + "[[184 0 3 1 1 8 10 0 1 1]\n", + " [ 0 231 2 3 0 1 2 0 4 0]\n", + " [ 2 2 202 7 5 1 2 3 4 0]\n", + " [ 1 0 13 153 0 8 3 2 11 0]\n", + " [ 0 0 3 0 135 2 7 2 3 26]\n", + " [ 6 0 4 6 5 154 1 0 8 2]\n", + " [ 6 0 4 0 3 0 196 0 2 0]\n", + " [ 0 0 5 1 6 1 1 195 4 12]\n", + " [ 1 2 4 14 4 12 0 2 162 1]\n", + " [ 1 0 1 1 46 1 0 18 9 131]]\n", + "0.837578087458\n", + "[[187 0 2 1 1 8 8 0 1 1]\n", + " [ 0 234 3 0 0 0 2 0 4 0]\n", + " [ 1 2 205 6 4 0 6 3 1 0]\n", + " [ 1 0 12 152 0 10 0 3 11 2]\n", + " [ 0 0 3 0 135 1 5 2 2 30]\n", + " [ 7 0 2 4 3 159 0 0 7 4]\n", + " [ 4 0 2 0 2 0 202 0 1 0]\n", + " [ 1 2 5 1 6 0 1 191 6 12]\n", + " [ 2 2 2 10 3 13 0 0 169 1]\n", + " [ 2 0 0 1 45 2 1 18 8 131]]\n", + "0.848149927919\n", + "[[191 0 3 0 1 5 7 0 1 1]\n", + " [ 0 233 2 1 0 0 2 0 4 1]\n", + " [ 2 2 208 5 3 0 1 3 4 0]\n", + " [ 0 0 14 158 0 6 0 2 10 1]\n", + " [ 0 0 0 0 144 2 5 3 1 23]\n", + " [ 4 0 2 9 3 154 0 0 8 6]\n", + " [ 6 0 1 0 4 0 199 0 1 0]\n", + " [ 0 2 4 1 6 0 1 193 7 11]\n", + " [ 2 2 1 11 4 11 0 1 169 1]\n", + " [ 1 0 0 3 32 1 1 16 10 144]]\n", + "0.861604997597\n", + "[[189 0 4 0 0 6 8 0 1 1]\n", + " [ 0 232 2 2 0 0 2 0 4 1]\n", + " [ 1 2 206 4 3 1 4 3 4 0]\n", + " [ 1 0 10 159 0 7 0 2 12 0]\n", + " [ 0 0 1 0 143 1 6 2 0 25]\n", + " [ 6 0 2 9 4 153 1 0 6 5]\n", + " [ 5 0 2 0 3 0 200 0 1 0]\n", + " [ 0 1 4 1 6 0 1 193 6 13]\n", + " [ 2 2 2 8 3 10 0 1 172 2]\n", + " [ 2 2 0 2 31 0 1 17 8 145]]\n", + "0.861124459395\n", + "[[190 0 3 1 0 4 7 2 2 0]\n", + " [ 0 232 2 1 0 0 2 0 5 1]\n", + " [ 2 2 207 4 2 1 3 3 4 0]\n", + " [ 1 0 10 156 0 8 1 2 12 1]\n", + " [ 0 0 2 0 149 1 4 2 1 19]\n", + " [ 6 0 3 7 2 157 0 0 6 5]\n", + " [ 4 0 1 0 2 0 203 0 1 0]\n", + " [ 0 1 4 3 4 0 1 194 6 12]\n", + " [ 2 2 1 9 3 12 0 1 171 1]\n", + " [ 2 0 1 3 26 1 0 16 9 150]]\n", + "0.869293608842\n", + "[[191 0 4 0 0 4 8 1 1 0]\n", + " [ 0 233 2 0 0 0 2 0 5 1]\n", + " [ 3 3 207 4 3 0 3 2 3 0]\n", + " [ 1 0 13 158 0 6 0 2 9 2]\n", + " [ 0 0 2 0 145 1 6 1 1 22]\n", + " [ 2 0 2 8 4 158 3 0 5 4]\n", + " [ 5 0 1 0 2 0 201 1 1 0]\n", + " [ 1 2 4 2 2 0 1 197 6 10]\n", + " [ 2 1 1 9 4 13 0 0 171 1]\n", + " [ 2 0 1 2 32 0 0 17 8 146]]\n", + "0.868332532436\n", + "[[190 0 3 2 1 4 7 1 1 0]\n", + " [ 0 234 2 0 0 1 2 0 4 0]\n", + " [ 1 2 208 6 3 0 2 3 3 0]\n", + " [ 2 0 8 165 0 4 1 2 6 3]\n", + " [ 0 0 3 0 149 1 6 1 0 18]\n", + " [ 2 0 2 6 0 166 2 0 5 3]\n", + " [ 5 0 1 0 2 1 201 0 1 0]\n", + " [ 0 2 5 2 2 0 1 196 3 14]\n", + " [ 3 2 2 11 1 10 0 0 171 2]\n", + " [ 3 0 1 2 30 0 0 17 3 152]]\n", + "0.880345987506\n", + "[[191 0 3 0 0 4 8 1 1 1]\n", + " [ 0 233 2 0 0 0 2 0 5 1]\n", + " [ 2 2 206 5 3 1 3 4 2 0]\n", + " [ 0 0 8 163 0 8 1 2 8 1]\n", + " [ 0 0 2 0 158 0 4 1 0 13]\n", + " [ 2 0 4 5 3 161 2 0 5 4]\n", + " [ 6 0 1 0 2 2 199 0 1 0]\n", + " [ 1 2 5 3 2 0 1 197 2 12]\n", + " [ 3 2 3 13 1 10 1 0 166 3]\n", + " [ 3 0 1 2 23 0 0 15 2 162]]\n", + "0.882268140317\n", + "[[191 0 3 1 1 4 7 0 1 1]\n", + " [ 0 234 2 0 0 0 2 0 4 1]\n", + " [ 2 2 204 6 3 1 4 3 3 0]\n", + " [ 1 0 8 164 0 5 0 2 8 3]\n", + " [ 0 0 4 0 151 1 6 1 0 15]\n", + " [ 1 0 3 8 2 160 2 0 6 4]\n", + " [ 5 0 1 0 3 1 200 0 1 0]\n", + " [ 0 1 6 2 4 0 0 196 3 13]\n", + " [ 2 2 1 10 1 10 0 0 175 1]\n", + " [ 2 0 1 2 17 1 0 14 4 167]]\n", + "0.885151369534\n", + "[[190 0 3 1 1 4 8 0 1 1]\n", + " [ 0 233 2 0 0 1 2 0 4 1]\n", + " [ 3 2 204 6 2 0 4 3 4 0]\n", + " [ 1 0 8 164 0 5 0 2 9 2]\n", + " [ 0 0 4 0 154 1 6 1 0 12]\n", + " [ 1 0 3 7 1 164 0 0 7 3]\n", + " [ 3 0 1 0 4 2 200 0 1 0]\n", + " [ 0 1 6 3 2 0 2 193 2 16]\n", + " [ 2 2 1 10 1 8 0 0 176 2]\n", + " [ 2 0 1 3 13 0 0 15 2 172]]\n", + "0.888995675156\n", + "[[192 0 3 1 0 3 7 1 2 0]\n", + " [ 0 233 2 1 0 0 2 0 4 1]\n", + " [ 2 2 206 6 3 0 2 3 4 0]\n", + " [ 0 0 8 168 0 5 0 2 7 1]\n", + " [ 0 0 3 0 156 1 5 1 0 12]\n", + " [ 2 0 2 7 1 166 2 0 3 3]\n", + " [ 4 0 1 0 3 1 201 0 1 0]\n", + " [ 0 0 5 3 6 0 0 196 2 13]\n", + " [ 3 2 2 13 1 8 1 0 169 3]\n", + " [ 2 1 2 3 17 0 0 16 1 166]]\n", + "0.890437289765\n", + "[[194 0 3 0 0 2 8 0 1 1]\n", + " [ 0 233 2 0 0 2 2 0 4 0]\n", + " [ 2 2 207 5 2 0 2 3 3 2]\n", + " [ 0 0 8 161 0 8 1 2 10 1]\n", + " [ 0 0 3 0 156 1 4 1 0 13]\n", + " [ 2 0 4 5 2 164 1 0 5 3]\n", + " [ 5 0 1 0 4 1 199 0 1 0]\n", + " [ 1 1 6 3 5 0 0 195 3 11]\n", + " [ 3 2 1 11 2 8 0 0 174 1]\n", + " [ 1 0 1 3 13 0 0 14 1 175]]\n", + "0.892839980778\n", + "[[191 0 4 0 0 2 9 1 1 1]\n", + " [ 0 234 2 0 0 1 2 0 4 0]\n", + " [ 3 2 206 5 2 0 3 3 4 0]\n", + " [ 0 0 8 167 0 9 0 2 4 1]\n", + " [ 0 0 3 0 159 1 2 1 0 12]\n", + " [ 2 0 1 7 1 168 0 0 4 3]\n", + " [ 5 0 2 0 4 0 199 0 1 0]\n", + " [ 0 1 5 2 5 0 1 200 2 9]\n", + " [ 2 2 1 10 0 11 0 0 174 2]\n", + " [ 2 0 2 3 17 0 0 16 1 167]]\n", + "0.896203748198\n", + "[[194 0 3 0 0 1 8 1 1 1]\n", + " [ 0 234 2 1 0 0 2 0 3 1]\n", + " [ 2 2 209 5 2 0 3 2 3 0]\n", + " [ 0 0 9 165 0 4 1 2 9 1]\n", + " [ 0 0 3 0 155 1 4 1 0 14]\n", + " [ 1 0 1 7 2 166 0 0 6 3]\n", + " [ 5 0 1 0 2 2 201 0 0 0]\n", + " [ 2 0 6 3 4 0 1 193 2 14]\n", + " [ 3 2 1 11 1 4 0 0 178 2]\n", + " [ 2 0 2 3 14 0 0 14 1 172]]\n", + "0.897164824604\n", + "[[194 0 2 1 1 1 7 1 1 1]\n", + " [ 0 233 2 1 0 0 2 0 5 0]\n", + " [ 2 2 209 4 2 0 2 3 2 2]\n", + " [ 0 0 8 167 0 6 0 2 6 2]\n", + " [ 0 0 4 0 152 1 4 1 0 16]\n", + " [ 2 0 1 9 1 166 1 0 3 3]\n", + " [ 5 0 1 0 2 2 201 0 0 0]\n", + " [ 1 1 7 1 2 0 0 193 4 16]\n", + " [ 3 1 1 12 0 7 1 0 174 3]\n", + " [ 1 0 2 3 17 1 0 14 2 168]]\n", + "0.892359442576\n", + "[[190 0 3 1 2 1 8 2 1 1]\n", + " [ 0 234 2 0 0 0 2 0 4 1]\n", + " [ 2 2 209 3 2 0 3 4 3 0]\n", + " [ 0 0 7 167 0 5 1 2 8 1]\n", + " [ 1 0 4 0 155 1 5 1 0 11]\n", + " [ 2 0 3 7 1 163 3 0 4 3]\n", + " [ 4 0 1 0 2 2 201 0 1 0]\n", + " [ 1 2 6 1 5 0 0 196 2 12]\n", + " [ 3 1 1 12 2 6 1 0 174 2]\n", + " [ 2 0 2 3 15 0 0 12 2 172]]\n", + "0.894281595387\n", + "[[193 0 2 1 1 1 6 3 1 1]\n", + " [ 0 234 2 1 0 0 2 0 3 1]\n", + " [ 3 2 207 4 1 0 3 3 4 1]\n", + " [ 0 0 9 168 0 6 0 2 5 1]\n", + " [ 0 0 4 0 154 1 4 1 0 14]\n", + " [ 2 0 3 7 1 165 2 0 3 3]\n", + " [ 6 0 1 0 1 1 201 0 1 0]\n", + " [ 0 0 7 1 6 0 0 196 3 12]\n", + " [ 0 1 1 12 0 6 1 0 178 3]\n", + " [ 2 0 2 3 18 0 0 16 1 166]]\n", + "0.89476213359\n", + "[[191 0 4 1 1 1 7 1 1 2]\n", + " [ 0 234 2 0 0 1 2 0 3 1]\n", + " [ 2 2 208 3 2 0 4 3 4 0]\n", + " [ 0 0 8 169 0 5 0 2 7 0]\n", + " [ 0 0 3 0 157 1 3 1 0 13]\n", + " [ 1 0 3 7 2 166 1 0 2 4]\n", + " [ 2 0 2 0 3 2 202 0 0 0]\n", + " [ 0 1 7 1 4 0 0 194 2 16]\n", + " [ 0 1 1 12 1 5 0 1 181 0]\n", + " [ 1 0 1 2 14 1 0 14 2 173]]\n", + "0.901009130226\n", + "With only 25 components, a random forest acheived an accuracy of 0.9010091302258529.\n" + ] + } + ], + "source": [ + "for comp in range(2, 100):\n", + " pca, X_pca = do_pca(comp, X)\n", + " acc = fit_random_forest_classifier(X_pca, y)\n", + " if acc > .90:\n", + " print(\"With only {} components, a random forest acheived an accuracy of {}.\".format(comp, acc))\n", + " break" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`9.` It is possible that extra features in the dataset even lead to overfitting or the [curse of dimensionality](https://stats.stackexchange.com/questions/65379/machine-learning-curse-of-dimensionality-explained). Do you have evidence of this happening for this dataset? Can you support your evidence with a visual or table? To avoid printing out all of the metric results, I created another function called `fit_random_forest_classifier2`. I ran through a significant number of components to create the visual for the solution, but I strongly recommend you look in the range below 100 principal components!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [ + "# I would highly recommend not running the below code, as it had to run overnight to complete.\n", + "# Instead, you can run a smaller number of components that still allows you to see enough.\n", + "\n", + "\n", + "#accs = []\n", + "#comps = []\n", + "#for comp in range(2, 700):\n", + "# comps.append(comp)\n", + "# pca, X_pca = do_pca(comp, X)\n", + "# acc = fit_random_forest_classifier2(X_pca, y)\n", + "# accs.append(acc)" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "ename": "NameError", + "evalue": "name 'comps' is not defined", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mplot\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcomps\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maccs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'bo'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m;\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mxlabel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Number of Components'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m;\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mylabel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Accuracy'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m;\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtitle\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Number of Components by Accuracy'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m;\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mNameError\u001b[0m: name 'comps' is not defined" + ] + } + ], + "source": [ + "plt.plot(comps, accs, 'bo');\n", + "plt.xlabel('Number of Components');\n", + "plt.ylabel('Accuracy');\n", + "plt.title('Number of Components by Accuracy');" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": true + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/python/Unsupervised Learning/Dimensionality Reduction and PCA/Interpret_PCA_Results.ipynb b/python/Unsupervised Learning/Dimensionality Reduction and PCA/Interpret_PCA_Results.ipynb index c0b1b45..8606993 100644 --- a/python/Unsupervised Learning/Dimensionality Reduction and PCA/Interpret_PCA_Results.ipynb +++ b/python/Unsupervised Learning/Dimensionality Reduction and PCA/Interpret_PCA_Results.ipynb @@ -263,7 +263,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.3" + "version": "3.7.3" } }, "nbformat": 4, diff --git a/python/Unsupervised Learning/Dimensionality Reduction and PCA/PCA_1.ipynb b/python/Unsupervised Learning/Dimensionality Reduction and PCA/PCA_1.ipynb index 9034d2d..f59447f 100644 --- a/python/Unsupervised Learning/Dimensionality Reduction and PCA/PCA_1.ipynb +++ b/python/Unsupervised Learning/Dimensionality Reduction and PCA/PCA_1.ipynb @@ -1168,7 +1168,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.3" + "version": "3.7.3" } }, "nbformat": 4, diff --git a/python/Unsupervised Learning/Project/.ipynb_checkpoints/Identify_Customer_Segments-checkpoint.ipynb b/python/Unsupervised Learning/Project/.ipynb_checkpoints/Identify_Customer_Segments-checkpoint.ipynb new file mode 100644 index 0000000..68012fc --- /dev/null +++ b/python/Unsupervised Learning/Project/.ipynb_checkpoints/Identify_Customer_Segments-checkpoint.ipynb @@ -0,0 +1,13542 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Project: Identify Customer Segments\n", + "\n", + "In this project, you will apply unsupervised learning techniques to identify segments of the population that form the core customer base for a mail-order sales company in Germany. These segments can then be used to direct marketing campaigns towards audiences that will have the highest expected rate of returns. The data that you will use has been provided by our partners at Bertelsmann Arvato Analytics, and represents a real-life data science task.\n", + "\n", + "This notebook will help you complete this task by providing a framework within which you will perform your analysis steps. In each step of the project, you will see some text describing the subtask that you will perform, followed by one or more code cells for you to complete your work. **Feel free to add additional code and markdown cells as you go along so that you can explore everything in precise chunks.** The code cells provided in the base template will outline only the major tasks, and will usually not be enough to cover all of the minor tasks that comprise it.\n", + "\n", + "It should be noted that while there will be precise guidelines on how you should handle certain tasks in the project, there will also be places where an exact specification is not provided. **There will be times in the project where you will need to make and justify your own decisions on how to treat the data.** These are places where there may not be only one way to handle the data. In real-life tasks, there may be many valid ways to approach an analysis task. One of the most important things you can do is clearly document your approach so that other scientists can understand the decisions you've made.\n", + "\n", + "At the end of most sections, there will be a Markdown cell labeled **Discussion**. In these cells, you will report your findings for the completed section, as well as document the decisions that you made in your approach to each subtask. **Your project will be evaluated not just on the code used to complete the tasks outlined, but also your communication about your observations and conclusions at each stage.**" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# import libraries here; add more as necessary\n", + "import numpy as np\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "# magic word for producing visualizations in notebook\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 0: Load the Data\n", + "\n", + "There are four files associated with this project (not including this one):\n", + "\n", + "- `Udacity_AZDIAS_Subset.csv`: Demographics data for the general population of Germany; 891211 persons (rows) x 85 features (columns).\n", + "- `Udacity_CUSTOMERS_Subset.csv`: Demographics data for customers of a mail-order company; 191652 persons (rows) x 85 features (columns).\n", + "- `Data_Dictionary.md`: Detailed information file about the features in the provided datasets.\n", + "- `AZDIAS_Feature_Summary.csv`: Summary of feature attributes for demographics data; 85 features (rows) x 4 columns\n", + "\n", + "Each row of the demographics files represents a single person, but also includes information outside of individuals, including information about their household, building, and neighborhood. You will use this information to cluster the general population into groups with similar demographic properties. Then, you will see how the people in the customers dataset fit into those created clusters. The hope here is that certain clusters are over-represented in the customers data, as compared to the general population; those over-represented clusters will be assumed to be part of the core userbase. This information can then be used for further applications, such as targeting for a marketing campaign.\n", + "\n", + "To start off with, load in the demographics data for the general population into a pandas DataFrame, and do the same for the feature attributes summary. Note for all of the `.csv` data files in this project: they're semicolon (`;`) delimited, so you'll need an additional argument in your [`read_csv()`](https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html) call to read in the data properly. Also, considering the size of the main dataset, it may take some time for it to load completely.\n", + "\n", + "Once the dataset is loaded, it's recommended that you take a little bit of time just browsing the general structure of the dataset and feature summary file. You'll be getting deep into the innards of the cleaning in the first major step of the project, so gaining some general familiarity can help you get your bearings." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# Load in the general demographics data.\n", + "azdias = pd.read_csv('Udacity_AZDIAS_Subset.csv', sep=';')\n", + "\n", + "# Load in the feature summary file.\n", + "feat_info = pd.read_csv('AZDIAS_Feature_Summary.csv', sep=';')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "azdias shape is (891221, 85). feat shape is (85, 4)\n" + ] + }, + { + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
0-1212.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
1-1125.0152545...2.03.02.01.01.05.04.03.05.04.0
2-1323.0141235...3.03.01.00.01.04.04.03.05.02.0
32422.0425212...2.02.02.00.01.03.04.02.03.03.0
4-1315.0434132...2.04.02.01.02.03.03.04.06.05.0
53122.0315225...2.03.01.01.01.05.05.02.03.03.0
6-1225.0151543...3.03.01.00.01.05.05.04.06.03.0
7-1113.0334132...3.03.01.00.01.04.04.02.05.02.0
8-1313.0442422...2.03.02.01.01.03.03.02.04.03.0
9-1324.0242354...2.03.02.01.01.03.03.02.03.01.0
\n", + "

10 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 -1 2 1 2.0 \n", + "1 -1 1 2 5.0 \n", + "2 -1 3 2 3.0 \n", + "3 2 4 2 2.0 \n", + "4 -1 3 1 5.0 \n", + "5 3 1 2 2.0 \n", + "6 -1 2 2 5.0 \n", + "7 -1 1 1 3.0 \n", + "8 -1 3 1 3.0 \n", + "9 -1 3 2 4.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 3 4 3 5 \n", + "1 1 5 2 5 \n", + "2 1 4 1 2 \n", + "3 4 2 5 2 \n", + "4 4 3 4 1 \n", + "5 3 1 5 2 \n", + "6 1 5 1 5 \n", + "7 3 3 4 1 \n", + "8 4 4 2 4 \n", + "9 2 4 2 3 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 5 3 ... NaN NaN \n", + "1 4 5 ... 2.0 3.0 \n", + "2 3 5 ... 3.0 3.0 \n", + "3 1 2 ... 2.0 2.0 \n", + "4 3 2 ... 2.0 4.0 \n", + "5 2 5 ... 2.0 3.0 \n", + "6 4 3 ... 3.0 3.0 \n", + "7 3 2 ... 3.0 3.0 \n", + "8 2 2 ... 2.0 3.0 \n", + "9 5 4 ... 2.0 3.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 2.0 1.0 1.0 5.0 4.0 3.0 \n", + "2 1.0 0.0 1.0 4.0 4.0 3.0 \n", + "3 2.0 0.0 1.0 3.0 4.0 2.0 \n", + "4 2.0 1.0 2.0 3.0 3.0 4.0 \n", + "5 1.0 1.0 1.0 5.0 5.0 2.0 \n", + "6 1.0 0.0 1.0 5.0 5.0 4.0 \n", + "7 1.0 0.0 1.0 4.0 4.0 2.0 \n", + "8 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "9 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN \n", + "1 5.0 4.0 \n", + "2 5.0 2.0 \n", + "3 3.0 3.0 \n", + "4 6.0 5.0 \n", + "5 3.0 3.0 \n", + "6 6.0 3.0 \n", + "7 5.0 2.0 \n", + "8 4.0 3.0 \n", + "9 3.0 1.0 \n", + "\n", + "[10 rows x 85 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Check the structure of the data after it's loaded (e.g. print the number of\n", + "# rows and columns, print the first few rows).\n", + "\n", + "azdias_shape=azdias.shape\n", + "feat_shape=feat_info.shape\n", + "\n", + "print(f'azdias shape is {azdias_shape}. feat shape is {feat_shape}')\n", + "\n", + "azdias.head(10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
0AGER_TYPpersoncategorical[-1,0]
1ALTERSKATEGORIE_GROBpersonordinal[-1,0,9]
2ANREDE_KZpersoncategorical[-1,0]
3CJT_GESAMTTYPpersoncategorical[0]
4FINANZ_MINIMALISTpersonordinal[-1]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "0 AGER_TYP person categorical [-1,0]\n", + "1 ALTERSKATEGORIE_GROB person ordinal [-1,0,9]\n", + "2 ANREDE_KZ person categorical [-1,0]\n", + "3 CJT_GESAMTTYP person categorical [0]\n", + "4 FINANZ_MINIMALIST person ordinal [-1]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "feat_info.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "> **Tip**: Add additional cells to keep everything in reasonably-sized chunks! Keyboard shortcut `esc --> a` (press escape to enter command mode, then press the 'A' key) adds a new cell before the active cell, and `esc --> b` adds a new cell after the active cell. If you need to convert an active cell to a markdown cell, use `esc --> m` and to convert to a code cell, use `esc --> y`. \n", + "\n", + "## Step 1: Preprocessing\n", + "\n", + "### Step 1.1: Assess Missing Data\n", + "\n", + "The feature summary file contains a summary of properties for each demographics data column. You will use this file to help you make cleaning decisions during this stage of the project. First of all, you should assess the demographics data in terms of missing data. Pay attention to the following points as you perform your analysis, and take notes on what you observe. Make sure that you fill in the **Discussion** cell with your findings and decisions at the end of each step that has one!\n", + "\n", + "#### Step 1.1.1: Convert Missing Value Codes to NaNs\n", + "The fourth column of the feature attributes summary (loaded in above as `feat_info`) documents the codes from the data dictionary that indicate missing or unknown data. While the file encodes this as a list (e.g. `[-1,0]`), this will get read in as a string object. You'll need to do a little bit of parsing to make use of it to identify and clean the data. Convert data that matches a 'missing' or 'unknown' value code into a numpy NaN value. You might want to see how much data takes on a 'missing' or 'unknown' code, and how much data is naturally missing, as a point of interest.\n", + "\n", + "**As one more reminder, you are encouraged to add additional cells to break up your analysis into manageable chunks.**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following will replace the indexes with np.na in the dataframe:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "feat_list = feat_info['missing_or_unknown'].tolist()\n", + "missing_list = []\n", + "\n", + "for i in feat_list:\n", + " subcount = 0\n", + " i = i.replace('[', '')\n", + " i = i.replace(']', '')\n", + " i = i.split(',')\n", + " missing_list.append(i)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "def replace(value, items, **kwargs):\n", + " for i in items:\n", + " try:\n", + " if value == np.int(i):\n", + " return np.nan\n", + " else:\n", + " pass\n", + " except ValueError:\n", + " if value == str(i):\n", + " return np.nan\n", + " else:\n", + " pass\n", + " return value" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AGER_TYP 0\n", + "ALTERSKATEGORIE_GROB 1\n", + "ANREDE_KZ 2\n", + "CJT_GESAMTTYP 3\n", + "FINANZ_MINIMALIST 4\n", + "FINANZ_SPARER 5\n", + "FINANZ_VORSORGER 6\n", + "FINANZ_ANLEGER 7\n", + "FINANZ_UNAUFFAELLIGER 8\n", + "FINANZ_HAUSBAUER 9\n", + "FINANZTYP 10\n", + "GEBURTSJAHR 11\n", + "GFK_URLAUBERTYP 12\n", + "GREEN_AVANTGARDE 13\n", + "HEALTH_TYP 14\n", + "LP_LEBENSPHASE_FEIN 15\n", + "LP_LEBENSPHASE_GROB 16\n", + "LP_FAMILIE_FEIN 17\n", + "LP_FAMILIE_GROB 18\n", + "LP_STATUS_FEIN 19\n", + "LP_STATUS_GROB 20\n", + "NATIONALITAET_KZ 21\n", + "PRAEGENDE_JUGENDJAHRE 22\n", + "RETOURTYP_BK_S 23\n", + "SEMIO_SOZ 24\n", + "SEMIO_FAM 25\n", + "SEMIO_REL 26\n", + "SEMIO_MAT 27\n", + "SEMIO_VERT 28\n", + "SEMIO_LUST 29\n", + "SEMIO_ERL 30\n", + "SEMIO_KULT 31\n", + "SEMIO_RAT 32\n", + "SEMIO_KRIT 33\n", + "SEMIO_DOM 34\n", + "SEMIO_KAEM 35\n", + "SEMIO_PFLICHT 36\n", + "SEMIO_TRADV 37\n", + "SHOPPER_TYP 38\n", + "SOHO_KZ 39\n", + "TITEL_KZ 40\n", + "VERS_TYP 41\n", + "ZABEOTYP 42\n", + "ALTER_HH 43\n", + "ANZ_PERSONEN 44\n", + "ANZ_TITEL 45\n", + "HH_EINKOMMEN_SCORE 46\n", + "KK_KUNDENTYP 47\n", + "W_KEIT_KIND_HH 48\n", + "WOHNDAUER_2008 49\n", + "ANZ_HAUSHALTE_AKTIV 50\n", + "ANZ_HH_TITEL 51\n", + "GEBAEUDETYP 52\n", + "KONSUMNAEHE 53\n", + "MIN_GEBAEUDEJAHR 54\n", + "OST_WEST_KZ 55\n", + "WOHNLAGE 56\n", + "CAMEO_DEUG_2015 57\n", + "CAMEO_DEU_2015 58\n", + "CAMEO_INTL_2015 59\n", + "KBA05_ANTG1 60\n", + "KBA05_ANTG2 61\n", + "KBA05_ANTG3 62\n", + "KBA05_ANTG4 63\n", + "KBA05_BAUMAX 64\n", + "KBA05_GBZ 65\n", + "BALLRAUM 66\n", + "EWDICHTE 67\n", + "INNENSTADT 68\n", + "GEBAEUDETYP_RASTER 69\n", + "KKK 70\n", + "MOBI_REGIO 71\n", + "ONLINE_AFFINITAET 72\n", + "REGIOTYP 73\n", + "KBA13_ANZAHL_PKW 74\n", + "PLZ8_ANTG1 75\n", + "PLZ8_ANTG2 76\n", + "PLZ8_ANTG3 77\n", + "PLZ8_ANTG4 78\n", + "PLZ8_BAUMAX 79\n", + "PLZ8_HHZ 80\n", + "PLZ8_GBZ 81\n", + "ARBEIT 82\n", + "ORTSGR_KLS9 83\n", + "RELAT_AB 84\n" + ] + } + ], + "source": [ + "for col, index in zip(azdias, range(len(missing_list))):\n", + " print(col, index)\n", + " azdias.iloc[:,index] = azdias.iloc[:,index].apply(replace, items=missing_list[index], axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
0NaN2.012.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
1NaN1.025.0152545...2.03.02.01.01.05.04.03.05.04.0
2NaN3.023.0141235...3.03.01.00.01.04.04.03.05.02.0
32.04.022.0425212...2.02.02.00.01.03.04.02.03.03.0
4NaN3.015.0434132...2.04.02.01.02.03.03.04.06.05.0
53.01.022.0315225...2.03.01.01.01.05.05.02.03.03.0
6NaN2.025.0151543...3.03.01.00.01.05.05.04.06.03.0
7NaN1.013.0334132...3.03.01.00.01.04.04.02.05.02.0
8NaN3.013.0442422...2.03.02.01.01.03.03.02.04.03.0
9NaN3.024.0242354...2.03.02.01.01.03.03.02.03.01.0
10NaN3.021.0225315...2.04.02.00.02.03.03.04.06.05.0
11NaN2.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
12NaN3.016.0534241...3.03.01.00.01.05.05.03.06.04.0
13NaN1.025.0143552...2.01.01.01.01.03.03.03.06.04.0
14NaN3.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
151.04.024.0415114...NaNNaNNaNNaNNaNNaNNaN4.08.05.0
16NaN1.021.0431451...3.03.01.00.01.03.04.01.02.01.0
17NaN2.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
18NaN2.026.0241541...2.03.02.01.01.03.03.03.04.03.0
19NaN3.013.0523131...2.04.02.01.02.05.04.04.06.03.0
\n", + "

20 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 NaN 2.0 1 2.0 \n", + "1 NaN 1.0 2 5.0 \n", + "2 NaN 3.0 2 3.0 \n", + "3 2.0 4.0 2 2.0 \n", + "4 NaN 3.0 1 5.0 \n", + "5 3.0 1.0 2 2.0 \n", + "6 NaN 2.0 2 5.0 \n", + "7 NaN 1.0 1 3.0 \n", + "8 NaN 3.0 1 3.0 \n", + "9 NaN 3.0 2 4.0 \n", + "10 NaN 3.0 2 1.0 \n", + "11 NaN 2.0 1 6.0 \n", + "12 NaN 3.0 1 6.0 \n", + "13 NaN 1.0 2 5.0 \n", + "14 NaN 3.0 1 6.0 \n", + "15 1.0 4.0 2 4.0 \n", + "16 NaN 1.0 2 1.0 \n", + "17 NaN 2.0 1 6.0 \n", + "18 NaN 2.0 2 6.0 \n", + "19 NaN 3.0 1 3.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 3 4 3 5 \n", + "1 1 5 2 5 \n", + "2 1 4 1 2 \n", + "3 4 2 5 2 \n", + "4 4 3 4 1 \n", + "5 3 1 5 2 \n", + "6 1 5 1 5 \n", + "7 3 3 4 1 \n", + "8 4 4 2 4 \n", + "9 2 4 2 3 \n", + "10 2 2 5 3 \n", + "11 3 4 3 5 \n", + "12 5 3 4 2 \n", + "13 1 4 3 5 \n", + "14 3 4 3 5 \n", + "15 4 1 5 1 \n", + "16 4 3 1 4 \n", + "17 3 4 3 5 \n", + "18 2 4 1 5 \n", + "19 5 2 3 1 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 5 3 ... NaN NaN \n", + "1 4 5 ... 2.0 3.0 \n", + "2 3 5 ... 3.0 3.0 \n", + "3 1 2 ... 2.0 2.0 \n", + "4 3 2 ... 2.0 4.0 \n", + "5 2 5 ... 2.0 3.0 \n", + "6 4 3 ... 3.0 3.0 \n", + "7 3 2 ... 3.0 3.0 \n", + "8 2 2 ... 2.0 3.0 \n", + "9 5 4 ... 2.0 3.0 \n", + "10 1 5 ... 2.0 4.0 \n", + "11 5 3 ... NaN NaN \n", + "12 4 1 ... 3.0 3.0 \n", + "13 5 2 ... 2.0 1.0 \n", + "14 5 3 ... NaN NaN \n", + "15 1 4 ... NaN NaN \n", + "16 5 1 ... 3.0 3.0 \n", + "17 5 3 ... NaN NaN \n", + "18 4 1 ... 2.0 3.0 \n", + "19 3 1 ... 2.0 4.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 2.0 1.0 1.0 5.0 4.0 3.0 \n", + "2 1.0 0.0 1.0 4.0 4.0 3.0 \n", + "3 2.0 0.0 1.0 3.0 4.0 2.0 \n", + "4 2.0 1.0 2.0 3.0 3.0 4.0 \n", + "5 1.0 1.0 1.0 5.0 5.0 2.0 \n", + "6 1.0 0.0 1.0 5.0 5.0 4.0 \n", + "7 1.0 0.0 1.0 4.0 4.0 2.0 \n", + "8 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "9 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "10 2.0 0.0 2.0 3.0 3.0 4.0 \n", + "11 NaN NaN NaN NaN NaN NaN \n", + "12 1.0 0.0 1.0 5.0 5.0 3.0 \n", + "13 1.0 1.0 1.0 3.0 3.0 3.0 \n", + "14 NaN NaN NaN NaN NaN NaN \n", + "15 NaN NaN NaN NaN NaN 4.0 \n", + "16 1.0 0.0 1.0 3.0 4.0 1.0 \n", + "17 NaN NaN NaN NaN NaN NaN \n", + "18 2.0 1.0 1.0 3.0 3.0 3.0 \n", + "19 2.0 1.0 2.0 5.0 4.0 4.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN \n", + "1 5.0 4.0 \n", + "2 5.0 2.0 \n", + "3 3.0 3.0 \n", + "4 6.0 5.0 \n", + "5 3.0 3.0 \n", + "6 6.0 3.0 \n", + "7 5.0 2.0 \n", + "8 4.0 3.0 \n", + "9 3.0 1.0 \n", + "10 6.0 5.0 \n", + "11 NaN NaN \n", + "12 6.0 4.0 \n", + "13 6.0 4.0 \n", + "14 NaN NaN \n", + "15 8.0 5.0 \n", + "16 2.0 1.0 \n", + "17 NaN NaN \n", + "18 4.0 3.0 \n", + "19 6.0 3.0 \n", + "\n", + "[20 rows x 85 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.head(20)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.1.2: Assess Missing Data in Each Column\n", + "\n", + "How much missing data is present in each column? There are a few columns that are outliers in terms of the proportion of values that are missing. You will want to use matplotlib's [`hist()`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.hist.html) function to visualize the distribution of missing value counts to find these columns. Identify and document these columns. While some of these columns might have justifications for keeping or re-encoding the data, for this project you should just remove them from the dataframe. (Feel free to make remarks about these outlier columns in the discussion, however!)\n", + "\n", + "For the remaining features, are there any patterns in which columns have, or share, missing data?" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Rather than using a histogram which is cumbersome to plot, we can achieve the same result by finding how many missing values make up the entire column. We can sort this in descending order and we can see which columns have the most missing values." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "# Perform an assessment of how much missing data there is in each column of the\n", + "# dataset.\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "null_col_count = azdias.isnull().sum(axis=0)\n", + "# print(null_col_count)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "ax_rows = azdias.shape[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "def findTotal(value, total):\n", + " return value/total" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "anomalies = null_col_count.apply(findTotal, total=ax_rows).sort_values(ascending=False)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "There are six columns that I would consdier to be anomalies in terms of missing values, they are:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "TITEL_KZ 0.997576\n", + "AGER_TYP 0.769554\n", + "KK_KUNDENTYP 0.655967\n", + "KBA05_BAUMAX 0.534687\n", + "GEBURTSJAHR 0.440203\n", + "ALTER_HH 0.348137\n", + "dtype: float64" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "anomalies[0:6]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can drop these columns:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(['TITEL_KZ', 'AGER_TYP', 'KK_KUNDENTYP', 'KBA05_BAUMAX', 'GEBURTSJAHR', 'ALTER_HH'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "assert azdias_shape[1]-6 == azdias.shape[1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "To find patterns we can use seaborn heatmap with pd.isnull()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "79" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.shape[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.subplots(figsize=(20,15))\n", + "sns.heatmap(azdias.iloc[:,0:30].isnull(), cbar=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.subplots(figsize=(20,15))\n", + "sns.heatmap(azdias.iloc[:,30:60].isnull(), cbar=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABJsAAAO+CAYAAACjMRQWAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3XuUnVVh/vHvAyFcBAoaoBBigcpVilEC0lIogqClKkVEQKuCl6mFKFChQK2llNKC4oWWtmaQq8V4AYLcFBDloj8uBkgkISCIFJJQAnhBLhKGPL8/3j16HE7IYc5MJjn7+aw1a86737332c86Z4XFnr33K9tERERERERERESMhFXGegAREREREREREdE7MtkUEREREREREREjJpNNERERERERERExYjLZFBERERERERERIyaTTRERERERERERMWIy2RQRERERERERESNmpZhskvRWSfdKul/S8WM9noiIiIiIiIiIaE+2x3oML0nSqsCPgb2B+cAPgUNs3z2mA4uIiIiIiIiIiBdZGVY27Qzcb/sB24uBrwL7jfGYIiIiIiIiIiKijZVhsmki8HDL9fxSFhERERERERERK5hxYz2ADqhN2e/s/ZPUB/QBTJs2bcfDp560PMY15gYWL2Dc+N6fd6slJyRrr6olay05IVl7VS1Za8kJydqraslaS05I1l5US06oLmu7+Zm2VoaVTfOBSS3XmwILWyvY7rc9xfaUvr6+5Tq4iIiIiIiIiIj4rZVhZdMPgS0lbQ4sAA4G3jO2Q4qIeHmeXXjTWA8hIiIiIiJiuVjhJ5tsD0iaClwNrAqcY3vuGA8rIuJlWXOT3cZ6CKNuYPGCsR5CRERExAqvlj9C1pIT6sraqRV+sgnA9lXAVWM9joiIiIiIiIhu1PJHyBpyQn1ZO7UynNkUEREREREREREria4mmySdI2mRpDktZa+UdK2k+8rv9Uv570m6XNJsSXMlHdbS5tWSrpE0T9LdkjYr5XtKukPSHEnnS1opVmJFRERERERERNSq25VN5wFvHVJ2PHCd7S2B68o1wBHA3bZfB+wBfFbS+HLvAuAztrcFdgYWSVoFOB842Pb2wP8CH+hyvBERERERERERMYq6Wilk+8bBVUgt9qOZTIJmsuh64DjAwDqSBKwN/AwYkLQdMM72taXPpwAkbQA8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miR6B/D6YZecBGwAfKuZ2+Ie23sD2wBTJT1BMzF2Ys84ERERERERERGxiuk72VROltMSPnvvEtonLmW8543QtucS+v4EeEm/ZxyupqKttWStJScka1fVlLUWNX2nydo9teSEZO2qWrLWkhOStYtqyQl1ZW1LIx8It1rzmLXGrexnWCEWLbyPGrLWkhOStatqyVpLTkjWrqolay05IVm7qpasteSEZO2iWnJCdVlHXIg0kjY1myZI+qGkOZJulXREaZ8k6XpJMyVNlzSltP+tpJvLz09KQfChse6WNHvomp72HSRdVz77jqSNhj3DcyQtkHR022AREREREREREbHitTmNbhHwYdvbADsDh0naFvgMcILtScA/l/cAdwG72d4e+BdgcNh4r7I9yfbknravAh+1/RLgIuCYYdecAlw+ilwREREREREREbES9J1ssj3P9k3l9cPAHGAcYJoi4ABPA+aWPj+x/dvSfj0wvsVzvAi4uryeBrxt6INSYPxO4NYW40RERERERERExErUZmXTH0maCOwI3AAcCZwk6VfAZ4HjRrjk/fzpiiQD35c0Q9JAT/stwN7l9b7AhHK/9YFjgRP6PNdA2co3fXBw+EKqiIiIiIiIiIhYUVpPNknaALgAONL2Q8AhwFG2JwBHAacP6/8qmsmmY3uad7H9UuB1NNvx/rq0v6+8nwFsCCws7ScAp9hesLRnsz1oe7LtyQMDA0vrGhERERERERERy9GYNp0kjaWZaDrX9oWl+T3AEeX1t2jqLg313768f53t3wy12x7aajdf0kXAFOBq27cDrynXvhB4Q7lkJ+Dtkj4DbAw8IelR26c9lbAREREREREREbF8tTmNTjSrlubYPrnno7nAbuX1HsAdpf9zgAuBA2z/omec9SVtOPSaZnLplvJ+8/LnGsA/Al8BsL2r7Ym2JwKfA/41E00REREREREREauuNiubdgEOAGZLmlnajgc+AJwqaQzwKDC0f+2fgWcAX2rmqVhUTp57JnBRaRsDfM32FeWa/SUdVl5fCJz5F6WKiIiIiIiIiIiVou9kk+1rAS3h45eN0P9g4OAR2u8EdljCPU4FTu3zHJ/o96wREREREREREbFyjeo0uoiIiIiIiIiIiKVpU7NpgqQfSpoj6VZJR5T2HSRdJ2m2pO9I2qi0T5E0s/zMkrTPsPHWlPQzSZf2tEnS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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.subplots(figsize=(20,15))\n", + "sns.heatmap(azdias.iloc[:,60:80].isnull(), cbar=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total no. of columns with pattern in nan values: 47\n", + "Total no. of columns without pattern in nan values: 32\n" + ] + } + ], + "source": [ + "# Remove the outlier columns from the dataset. (You'll perform other data\n", + "# engineering tasks such as re-encoding and imputation later.)\n", + "\n", + "columnList = azdias.columns.values\n", + "columnPatternIndexes = [12, 13, 14, 15 ,16 , 19, 20, 36, 37, 38, 40, 41, 43, 44, 46,\n", + " 46, 47, 48, 49, 50 ,51, 52, 53, 54, 55, 56, 57, 58, 59, 60,\n", + " 61, 62, 63, 64, 65, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,\n", + " 77, 78]\n", + "print(f'Total no. of columns with pattern in nan values: {len(columnPatternIndexes)}')\n", + "print(f'Total no. of columns without pattern in nan values: {len(columnList)-len(columnPatternIndexes)}')\n", + "# print(f'{anomalies[6:]}')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "#### Discussion 1.1.2: Assess Missing Data in Each Column\n", + "\n", + "In total I found 6 columns that I determined to have unusually high levels of nan values for the data and as such I dropped them from the dataframe.\n", + "\n", + "I found 47 columns that appear to have a pattern in missing data. We can see that this pattern is fairly consistent throughout the dataset. \n", + "\n", + "**There are a lot of columns in this data set**, however looking through the data dictionary I can see that many of the categories are of the form:\n", + "\n", + "N (detailed scale) or (rough scale)\n", + "\n", + "where N could be anything from Wealth status to family. As the data is looking at regional areas, it makes sense that if data is missing for one area, it would be missing for all the other categories as well.\n", + "\n", + "For example, PLZ8_ANTG1, PLZ8_ANTG2 and PLZ8_ANTG3 all describe the number of family houses in the PLZ8 region by size of family (1-2 people, 3-5 people etc). If this information is missing in PLZ8_ANTG1, then it makes sense that is also missing in the same region for the other categories. **This could explain why we see patterns throughout the entire dataset**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.1.3: Assess Missing Data in Each Row\n", + "\n", + "Now, you'll perform a similar assessment for the rows of the dataset. How much data is missing in each row? As with the columns, you should see some groups of points that have a very different numbers of missing values. Divide the data into two subsets: one for data points that are above some threshold for missing values, and a second subset for points below that threshold.\n", + "\n", + "In order to know what to do with the outlier rows, we should see if the distribution of data values on columns that are not missing data (or are missing very little data) are similar or different between the two groups. Select at least five of these columns and compare the distribution of values.\n", + "- You can use seaborn's [`countplot()`](https://seaborn.pydata.org/generated/seaborn.countplot.html) function to create a bar chart of code frequencies and matplotlib's [`subplot()`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplot.html) function to put bar charts for the two subplots side by side.\n", + "- To reduce repeated code, you might want to write a function that can perform this comparison, taking as one of its arguments a column to be compared.\n", + "\n", + "Depending on what you observe in your comparison, this will have implications on how you approach your conclusions later in the analysis. If the distributions of non-missing features look similar between the data with many missing values and the data with few or no missing values, then we could argue that simply dropping those points from the analysis won't present a major issue. On the other hand, if the data with many missing values looks very different from the data with few or no missing values, then we should make a note on those data as special. We'll revisit these data later on. **Either way, you should continue your analysis for now using just the subset of the data with few or no missing values.**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We can repeat what we did above but for the rows. I will transpose the dataframe and repeat the same steps as before." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [], + "source": [ + "## Testing ignore this cell\n", + "\n", + "# How much data is missing in each row of the dataset?\n", + "null_row_count = azdias.isnull().sum(axis=1)\n", + "null_row_count = pd.DataFrame(null_row_count)\n", + "null_row_count.columns = ['null_count']\n", + "# null_row_count.sample(frac=1).head(30)\n", + "# null_row_count.groupby('null_count').agg({'null_count': 'count'})" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "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", + "
0123456789...891211891212891213891214891215891216891217891218891219891220
ALTERSKATEGORIE_GROB2134312133...3441232214
ANREDE_KZ1222122112...1122221211
\n", + "

2 rows × 891221 columns

\n", + "
" + ], + "text/plain": [ + " 0 1 2 3 4 5 6 7 \\\n", + "ALTERSKATEGORIE_GROB 2 1 3 4 3 1 2 1 \n", + "ANREDE_KZ 1 2 2 2 1 2 2 1 \n", + "\n", + " 8 9 ... 891211 891212 891213 891214 891215 \\\n", + "ALTERSKATEGORIE_GROB 3 3 ... 3 4 4 1 2 \n", + "ANREDE_KZ 1 2 ... 1 1 2 2 2 \n", + "\n", + " 891216 891217 891218 891219 891220 \n", + "ALTERSKATEGORIE_GROB 3 2 2 1 4 \n", + "ANREDE_KZ 2 1 2 1 1 \n", + "\n", + "[2 rows x 891221 columns]" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiasT = azdias.transpose()\n", + "azdiasT.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "79\n" + ] + } + ], + "source": [ + "null_row_count = azdiasT.isnull().sum(axis=0)\n", + "\n", + "axT_rows = azdiasT.shape[0]\n", + "print(axT_rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0 43\n", + "1 0\n", + "2 0\n", + "3 7\n", + "4 0\n", + "dtype: int64\n", + "\n", + "(891221,)\n" + ] + } + ], + "source": [ + "print(null_row_count.head(5))\n", + "print()\n", + "print(null_row_count.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "643174 0.620253\n", + "732775 0.620253\n", + "472919 0.607595\n", + "183108 0.594937\n", + "139316 0.594937\n", + "dtype: float64" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "anomaliesT_f = null_row_count.apply(findTotal, total=axT_rows).sort_values(ascending=False)\n", + "anomaliesT_f.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0\n", + "count 891221.000000\n", + "mean 0.071518\n", + "std 0.167528\n", + "min 0.000000\n", + "25% 0.000000\n", + "50% 0.000000\n", + "75% 0.037975\n", + "max 0.620253\n" + ] + } + ], + "source": [ + "anomaliesT_f = pd.DataFrame(anomaliesT_f)\n", + "# anomaliesT.iloc[0:5,0]\n", + "print(anomaliesT_f.describe())" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "85% percentile: 0.1013\n", + "86% percentile: 0.1013\n", + "87% percentile: 0.1266\n", + "88% percentile: 0.1646\n", + "89% percentile: 0.2025\n", + "90% percentile: 0.4304\n", + "91% percentile: 0.4304\n", + "\n", + "Limit is 0.43037974683544306\n" + ] + } + ], + "source": [ + "for i in range(85, 92):\n", + " print(f'{i}% percentile: {anomaliesT_f.quantile(q=i*0.01)[0]:.4f}')\n", + "limit = anomaliesT_f.quantile(q=0.9)[0]\n", + "print(f'\\nLimit is {limit}')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "As there is a much larger jump from the 89th to 90th percentile (a factor of around 113%) I would say our threshold for the split for the rows should be those which have 43% or higher missing values of the total data in the top category (denoted as anomaliesU), and those that are less than 43% in the bottom category (denoted as anomaliesL)." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Counter({0: 623209, 47: 45578, 2: 27926, 43: 27369, 8: 24592, 5: 22515, 3: 17629, 1: 15738, 6: 13771, 7: 13714, 4: 12607, 34: 10816, 10: 5410, 15: 4743, 35: 3911, 13: 3255, 9: 3042, 33: 2985, 16: 2505, 14: 2243, 19: 1180, 11: 1127, 12: 766, 17: 677, 37: 538, 45: 494, 18: 428, 38: 421, 41: 356, 20: 349, 32: 206, 44: 155, 21: 150, 40: 137, 23: 132, 22: 129, 36: 84, 39: 77, 24: 69, 26: 59, 25: 55, 27: 24, 42: 21, 29: 12, 30: 6, 28: 5, 31: 3, 49: 2, 48: 1})\n" + ] + } + ], + "source": [ + "import collections\n", + "print(collections.Counter(null_row_count))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "We will now split the dataframe into 2 categories, and then compare the columns of the original matrix like before" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0\n", + "count 89960.000000\n", + "mean 0.550983\n", + "std 0.057724\n", + "min 0.430380\n", + "25% 0.544304\n", + "50% 0.594937\n", + "75% 0.594937\n", + "max 0.620253\n" + ] + } + ], + "source": [ + "# Write code to divide the data into two subsets based on the number of missing\n", + "# values in each row.a\n", + "anomaliesU = anomaliesT_f[(anomaliesT_f>=limit)]\n", + "anomaliesU.dropna(inplace=True)\n", + "print(anomaliesU.describe())" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0\n", + "count 801261.000000\n", + "mean 0.017687\n", + "std 0.046201\n", + "min 0.000000\n", + "25% 0.000000\n", + "50% 0.000000\n", + "75% 0.000000\n", + "max 0.417722\n" + ] + } + ], + "source": [ + "anomaliesL = anomaliesT_f[(anomaliesT_f\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...SEMIO_RATSEMIO_KRITSEMIO_DOMSEMIO_KAEMSEMIO_PFLICHTSEMIO_TRADVZABEOTYPHH_EINKOMMEN_SCOREANZ_HAUSHALTE_AKTIVONLINE_AFFINITAET
8309541.023.01535531...6766565NaNNaN3.0
8293813.021.04244313...4767433NaNNaN4.0
8418751.014.02535521...41245512.0NaN3.0
8481752.013.04424513...51225552.0NaN2.0
8184891.024.03425524...6766565NaNNaN5.0
2155721.014.02535521...5124555NaNNaN4.0
839513.015.05343313...5323446NaNNaN5.0
2847352.014.04424513...4122555NaNNaN4.0
2582001.026.02535541...6766564NaNNaN3.0
3887353.016.05252322...5323443NaNNaN4.0
\n", + "

10 rows × 33 columns

\n", + "" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "830954 1.0 2 3.0 1 \n", + "829381 3.0 2 1.0 4 \n", + "841875 1.0 1 4.0 2 \n", + "848175 2.0 1 3.0 4 \n", + "818489 1.0 2 4.0 3 \n", + "215572 1.0 1 4.0 2 \n", + "83951 3.0 1 5.0 5 \n", + "284735 2.0 1 4.0 4 \n", + "258200 1.0 2 6.0 2 \n", + "388735 3.0 1 6.0 5 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "830954 5 3 5 \n", + "829381 2 4 4 \n", + "841875 5 3 5 \n", + "848175 4 2 4 \n", + "818489 4 2 5 \n", + "215572 5 3 5 \n", + "83951 3 4 3 \n", + "284735 4 2 4 \n", + "258200 5 3 5 \n", + "388735 2 5 2 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER FINANZTYP ... \\\n", + "830954 5 3 1 ... \n", + "829381 3 1 3 ... \n", + "841875 5 2 1 ... \n", + "848175 5 1 3 ... \n", + "818489 5 2 4 ... \n", + "215572 5 2 1 ... \n", + "83951 3 1 3 ... \n", + "284735 5 1 3 ... \n", + "258200 5 4 1 ... \n", + "388735 3 2 2 ... \n", + "\n", + " SEMIO_RAT SEMIO_KRIT SEMIO_DOM SEMIO_KAEM SEMIO_PFLICHT \\\n", + "830954 6 7 6 6 5 \n", + "829381 4 7 6 7 4 \n", + "841875 4 1 2 4 5 \n", + "848175 5 1 2 2 5 \n", + "818489 6 7 6 6 5 \n", + "215572 5 1 2 4 5 \n", + "83951 5 3 2 3 4 \n", + "284735 4 1 2 2 5 \n", + "258200 6 7 6 6 5 \n", + "388735 5 3 2 3 4 \n", + "\n", + " SEMIO_TRADV ZABEOTYP HH_EINKOMMEN_SCORE ANZ_HAUSHALTE_AKTIV \\\n", + "830954 6 5 NaN NaN \n", + "829381 3 3 NaN NaN \n", + "841875 5 1 2.0 NaN \n", + "848175 5 5 2.0 NaN \n", + "818489 6 5 NaN NaN \n", + "215572 5 5 NaN NaN \n", + "83951 4 6 NaN NaN \n", + "284735 5 5 NaN NaN \n", + "258200 6 4 NaN NaN \n", + "388735 4 3 NaN NaN \n", + "\n", + " ONLINE_AFFINITAET \n", + "830954 3.0 \n", + "829381 4.0 \n", + "841875 3.0 \n", + "848175 2.0 \n", + "818489 5.0 \n", + "215572 4.0 \n", + "83951 5.0 \n", + "284735 4.0 \n", + "258200 3.0 \n", + "388735 4.0 \n", + "\n", + "[10 rows x 33 columns]" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Compare the distribution of values for at least five columns where there are\n", + "# no or few missing values, between the two subsets.\n", + "print(f'Number of cols to drop: {len(columnPatternIndexes)}')\n", + "anomaliesL_compare = anomaliesL.drop(anomaliesL.iloc[:,columnPatternIndexes], axis=1)\n", + "print(f'Number of cols kept: {anomaliesL_compare.shape[1]}')\n", + "anomaliesL_compare.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [], + "source": [ + "import random\n", + "\n", + "def dataComparison(df):\n", + " cols = random.sample(list(df.columns.values), 5)\n", + " f, axes = plt.subplots(1, 5, figsize=(25,4))\n", + " for i in range(0, 5):\n", + " sns.countplot(x=cols[i], data=df.fillna('Missing'), ax=axes[i]) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "Let's look at the data distribution for the Lower group (those that don't have many zero values across the rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import itertools\n", + "\n", + "for _ in itertools.repeat(None, 5):\n", + " dataComparison(anomaliesL_compare)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "Now the same for the upper group" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of cols to drop: 47\n", + "Number of cols kept: 33\n" + ] + }, + { + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...SEMIO_RATSEMIO_KRITSEMIO_DOMSEMIO_KAEMSEMIO_PFLICHTSEMIO_TRADVZABEOTYPHH_EINKOMMEN_SCOREANZ_HAUSHALTE_AKTIVONLINE_AFFINITAET
6431743.01NaN2535524...5444544NaNNaNNaN
7327753.02NaN3535524...4766533NaNNaNNaN
4729191.01NaN5152322...4444546NaNNaNNaN
1831081.026.03435534...47665332.0NaN2.0
1393163.026.03435534...47665332.0NaN2.0
6911411.016.03435534...47665332.0NaN2.0
6911423.026.03435534...47665332.0NaN2.0
6911713.016.03435534...47665332.0NaN2.0
6911833.016.03435534...47665332.0NaN2.0
1393323.016.03435534...47665332.0NaN2.0
\n", + "

10 rows × 33 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "643174 3.0 1 NaN 2 \n", + "732775 3.0 2 NaN 3 \n", + "472919 1.0 1 NaN 5 \n", + "183108 1.0 2 6.0 3 \n", + "139316 3.0 2 6.0 3 \n", + "691141 1.0 1 6.0 3 \n", + "691142 3.0 2 6.0 3 \n", + "691171 3.0 1 6.0 3 \n", + "691183 3.0 1 6.0 3 \n", + "139332 3.0 1 6.0 3 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "643174 5 3 5 \n", + "732775 5 3 5 \n", + "472919 1 5 2 \n", + "183108 4 3 5 \n", + "139316 4 3 5 \n", + "691141 4 3 5 \n", + "691142 4 3 5 \n", + "691171 4 3 5 \n", + "691183 4 3 5 \n", + "139332 4 3 5 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER FINANZTYP ... \\\n", + "643174 5 2 4 ... \n", + "732775 5 2 4 ... \n", + "472919 3 2 2 ... \n", + "183108 5 3 4 ... \n", + "139316 5 3 4 ... \n", + "691141 5 3 4 ... \n", + "691142 5 3 4 ... \n", + "691171 5 3 4 ... \n", + "691183 5 3 4 ... \n", + "139332 5 3 4 ... \n", + "\n", + " SEMIO_RAT SEMIO_KRIT SEMIO_DOM SEMIO_KAEM SEMIO_PFLICHT \\\n", + "643174 5 4 4 4 5 \n", + "732775 4 7 6 6 5 \n", + "472919 4 4 4 4 5 \n", + "183108 4 7 6 6 5 \n", + "139316 4 7 6 6 5 \n", + "691141 4 7 6 6 5 \n", + "691142 4 7 6 6 5 \n", + "691171 4 7 6 6 5 \n", + "691183 4 7 6 6 5 \n", + "139332 4 7 6 6 5 \n", + "\n", + " SEMIO_TRADV ZABEOTYP HH_EINKOMMEN_SCORE ANZ_HAUSHALTE_AKTIV \\\n", + "643174 4 4 NaN NaN \n", + "732775 3 3 NaN NaN \n", + "472919 4 6 NaN NaN \n", + "183108 3 3 2.0 NaN \n", + "139316 3 3 2.0 NaN \n", + "691141 3 3 2.0 NaN \n", + "691142 3 3 2.0 NaN \n", + "691171 3 3 2.0 NaN \n", + "691183 3 3 2.0 NaN \n", + "139332 3 3 2.0 NaN \n", + "\n", + " ONLINE_AFFINITAET \n", + "643174 NaN \n", + "732775 NaN \n", + "472919 NaN \n", + "183108 2.0 \n", + "139316 2.0 \n", + "691141 2.0 \n", + "691142 2.0 \n", + "691171 2.0 \n", + "691183 2.0 \n", + "139332 2.0 \n", + "\n", + "[10 rows x 33 columns]" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(f'Number of cols to drop: {len(columnPatternIndexes)}')\n", + "anomaliesU_compare = anomaliesU.drop(anomaliesU.iloc[:,columnPatternIndexes], axis=1)\n", + "print(f'Number of cols kept: {anomaliesU_compare.shape[1]}')\n", + "anomaliesU_compare.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABbkAAAELCAYAAAD0j4vUAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3X+0XWV97/v3RyL+qsgPo0UCB1qibaQVZV/glDFaDhQI1GvoGdpiW0k5jJtzFSwePS1wx+nBqnTQUU/9XdoIkWB7jJTqNbVRmqK0w1aQ4A8QKJcYKKSgxAaRHo5a6Pf+sZ6Fi52dZJOdteZee71fY6yx5/zOZ879zJHkmzm/65nPTFUhSZIkSZIkSdI4ekbXHZAkSZIkSZIkaU9Z5JYkSZIkSZIkjS2L3JIkSZIkSZKksWWRW5IkSZIkSZI0tixyS5IkSZIkSZLGlkVuSZIkSZIkSdLYssgtSZIkSZIkSRpbFrklSZIkSZIkSWPLIrckSZIkSZLmLMl/SXJ7kq8n+ViSZyc5IslNSe5O8vEk+7a2z2rrm9v2wweOc3GL35XktIH48hbbnOSi0Z+hpPkqVdV1H0bqhS98YR1++OFdd0PSHrjlllu+XVWLu+7HnjL/SOPNHCSpK+YfSV2abQ5KcgjwBWBZVf3vJNcAG4AzgE9U1bokfwR8raouT/Im4Ker6v9Ochbwi1X1y0mWAR8DjgVeAvw18NL2a/4/4BRgK3Az8PqqumNX/TIHSeNttjlo0Sg6M58cfvjhbNq0qetuSNoDSf6x6z7MhflHGm/mIEldMf9I6tLTzEGLgOck+VfgucCDwEnAr7Tta4G3A5cDK9oywLXAB5OkxddV1feBe5JsplfwBthcVVtav9a1trsscpuDpPE22xzkdCWSJEmSJEmak6r6J+DdwH30ituPALcA36mqx1uzrcAhbfkQ4P627+Ot/UGD8Wn77Cy+gySrkmxKsmnbtm1zPzlJ855FbkmSJEmSJM1JkgPojaw+gt40I88DTp+haX/e3Oxk29ON7xisWl1VU1U1tXjx2M72JOlpsMgtSZIkSZKkufp54J6q2lZV/wp8AvgZYP8k/elylwAPtOWtwKEAbfsLgO2D8Wn77CwuSRa5JUmSJEmSNGf3AccneW6bW/tkevNlfx54bWuzEvhUW17f1mnbP1dV1eJnJXlWkiOApcCX6L1ocmmSI5LsC5zV2krScIvcSf5LktuTfD3Jx5I8uyWjm5LcneTjLTHRktfHk2xu2w8fOM7FLX5XktMG4stbbHOSi4Z5LpIkSZIkSZpZVd1E7wWSXwZuo1dzWg1cCLy1vUDyIODKtsuVwEEt/lbgonac24Fr6BXIPwucV1VPtHm7zweuA+4ErmltJWl4Re4khwC/AUxV1VHAPvS+Zfs94D1VtRR4GDi37XIu8HBVHQm8p7UjybK238uB5cAfJtknyT7Ah+jN77QMeH1rK0mSJEkTy8FGkrpSVZdU1U9U1VFV9Yaq+n5VbamqY6vqyKp6XVV9v7X9Xls/sm3fMnCcS6vqx6vqZVX1mYH4hqp6adt2aRfnKGl+GvZ0JYuA57S5lZ5L7+26J9H7Zg9gLXBmW17R1mnbT26Pt6wA1rXEeA+wGTi2fTa3ZPkDYF1rK0mSJEkTycFGkiRpEg2tyF1V/wS8m96cTA8CjwC3AN9pj5hA76UBh7TlQ4D7276Pt/YHDcan7bOz+A6SrEqyKcmmbdu2zf3kJEmSJGn+crCRJEmaKMOcruQAehc7RwAvAZ5H79v+6aq/y062Pd34jsGq1VU1VVVTixcv3l3XJUmS5sSpAiR1ZT4NNpIkSRqVRUM89s8D91TVNoAknwB+Btg/yaJ2AbUEeKC13wocCmxtIw5eAGwfiPcN7rOzuDQr973jp7ruwkQ77L/f1nUXpM6Yf7o3rBw0MFXAsqr630muoffI/xn0pgpYl+SP6E0RcDkDUwUk6U8p8MvTpgp4CfDXSV7afs2HgFPoXSfdnGR9Vd0xlBNaYMb9357/d2p3pg02+g7wZ+zdwUYzDZTaYbBRklXAKoDDDjtsxr4e85tXzxgfJ7f8/tldd0GSNIMTPnBC112Yk79789913YWxM8w5ue8Djk/y3Pa428n03oz7eeC1rc1K4FNteX1bp23/XFVVi5/VRjkdASwFvgTcDCxto6L2pXcTuH6I5yNJkjRbThUgqStPDjaqqn8FnjLYqLWZabARsxxstKtBSE/yaVpJkjRKw5yT+yZ6N2pfBm5rv2s1cCHw1iSb6T0Gd2Xb5UrgoBZ/K3BRO87twDX0CuSfBc6rqifaSPDzgeuAO4FrWltJkqTOOFWApI452EiSJE2cYU5XQlVdAlwyLbyF3gik6W2/B7xuJ8e5FLh0hvgGYMPceypJkrR3zJepAlpfdjtdgKSFpapuStIfbPQ48BV6g43+EliX5F0tNjjY6KNtsNF2ekVrqur2Nt3SHe0451XVEwBJ+oON9gHWONhIkiR1bahFbkmSpAk0b95LUlWr6RW3mJqamrEQLmnhcbCRJEmaNMOck1uSJGkSOVWAJEmSJI2QI7klSZL2IqcKkCRJkqTRssgtSZK0lzlVgCRJkiSNjtOVSJIkSZIkSZLGlkVuSZIkSZIkSdLYssgtSZIkSZIkSRpbFrklSZIkSZIkSWPLIrckSZIkSZIkaWxZ5JYkSZIkSZIkjS2L3JIkSZIkSZKksWWRW5IkSZIkSXOS5GVJvjrw+W6StyQ5MMnGJHe3nwe09kny/iSbk9ya5FUDx1rZ2t+dZOVA/Jgkt7V93p8kXZyrpPnHIrckSZIkSZLmpKruqqqjq+po4BjgMeCTwEXA9VW1FLi+rQOcDixtn1XA5QBJDgQuAY4DjgUu6RfGW5tVA/stH8GpSRoDFrklSZIkSZK0N50MfKOq/hFYAaxt8bXAmW15BXB19dwI7J/kYOA0YGNVba+qh4GNwPK2bb+q+mJVFXD1wLEkTTiL3JIkSZIkSdqbzgI+1pZfXFUPArSfL2rxQ4D7B/bZ2mK7im+dIb6DJKuSbEqyadu2bXM8FUnjwCK3JEmSJEmS9ook+wKvAf5sd01niNUexHcMVq2uqqmqmlq8ePFuuiFpIVjUdQckSTM75jev7roLE+2W3z+76y5IkiRJ4+h04MtV9a22/q0kB1fVg23KkYdafCtw6MB+S4AHWvzEafEbWnzJDO0laXgjuX2rriRJkiRJ0sR5PT+cqgRgPdCv5awEPjUQP7vVg44HHmnTmVwHnJrkgFYzOhW4rm17NMnxrf5z9sCxJE24oRW5fauuJEmSJI2Wg40kdSnJc4FTgE8MhC8DTklyd9t2WYtvALYAm4EPA28CqKrtwDuBm9vnHS0G8EbgirbPN4DPDPN8JI2PUU1X8uRbdZOs4IePnayl98jJhQy8VRe4MUn/rbon0t6qC5Ck/1bdG2hv1W3x/lt1TXCSJEmSJlJV3QUcDZBkH+CfeOpgo8uSXNTWL+Spg42OozeQ6LiBwUZT9Oa8vSXJ+qp6mB8ONrqRXpFqOd6HSQKq6jHgoGmxf6ZXF5retoDzdnKcNcCaGeKbgKP2SmclLSijevGkb9WVJEkTwVGUkuaRJwcb0RtUtLbF19IbIAQDg42q6kagP9joNNpgo1bY7g82Opg22KgVqK4eOJYkSVInhl7k9q26kiRpkjhlm6R5pNPBRpIkSaMyipHcM75VF+BpvFV3Z3HfqitJkuYzR1FK6kTXg418mlaSJI3SKIrcvlVXkiRNKkdRSupKp4ONfJpWkiSN0lCL3L5VV1KXkuyT5CtJPt3Wj0hyU5vb9uNthBNJntXWN7fthw8c4+IWvyvJaQPx5S22ub28SZKeoutRlK0PjqSUJpeDjSRJ0sRYNMyD+1ZdSR27ALgT2K+t/x7wnqpal+SPgHPpzWt7LvBwVR2Z5KzW7peTLKM3CvPlwEuAv07y0nasD9H7om4rcHOS9VV1x6hOTNJYmHEUZVU9+DRGUZ44LX4DT2PKtqpaDawGmJqamrEQLmnhGRhs9J8HwpcB1yQ5F7gPeF2LbwDOoDdw6DHgHOgNNkrSH2wEOw42ugp4Dr2BRg42kiRJnRrFdCWSNHJJlgC/QO9pD9pIo5OAa1uT6fPh9ufJvRY4ubVfAayrqu9X1T30bv6ObZ/NVbWlqn4ArGttJWmQoygldaKqHquqg6rqkYHYP1fVyVW1tP3c3uJVVedV1Y9X1U+1gUT9fdZU1ZHt85GB+KaqOqrtc34bsCRJktSZoY7klqQOvRf4LeD5bf0g4DtV9XhbH5zD9sl5b6vq8SSPtPaHADcOHHNwn+nz5B63t09A0vhyFKUkSZIkjY5FbkkLTpJXAw9V1S1JTuyHZ2hau9m2s/hMT8HsdD5cYBXAYYcdtoteS1pInLJNkiRJkkbH6UokLUQnAK9Jci+9qUROojeye/8k/S/3BuewfXI+3Lb9BcB2dj1P7kzxHVTV6qqaqqqpxYsXz/3MJEmSJEmS9BQWuSUtOFV1cVUtqarD6b048nNV9avA54HXtmbT58Ptz5P72ta+WvysJM9KcgSwFPgSvakDliY5Ism+7XesH8GpSZIkSZIkaRqnK5E0SS4E1iV5F/AV4MoWvxL4aJLN9EZwnwVQVbcnuQa4A3gcOK+qngBIcj69l8LtA6ypqttHeiaSJEmSJEkCLHJLWuCq6gbghra8BTh2hjbf44cvgJu+7VLg0hniG+i9LE6SJEmSJEkdcroSSZIkSZIkSdLYssgtSZIkSZIkSRpbFrklSZIkSZIkSWPLIrckSZIkSZIkaWxZ5JYkSZIkSZIkjS2L3JIkSZIkSZqzJPsnuTbJPyS5M8m/T3Jgko1J7m4/D2htk+T9STYnuTXJqwaOs7K1vzvJyoH4MUlua/u8P0m6OE9J849FbkmSJEmSJO0N7wM+W1U/AbwCuBO4CLi+qpYC17d1gNOBpe2zCrgcIMmBwCXAccCxwCX9wnhrs2pgv+UjOCdJY8AityRJkiRJkuYkyX7AzwJXAlTVD6rqO8AKYG1rthY4sy2vAK6unhuB/ZMcDJwGbKyq7VX1MLARWN627VdVX6yqAq4eOJakCWeRW5IkSZIkSXP1Y8A24CNJvpLkiiTPA15cVQ8CtJ8vau0PAe4f2H9ri+0qvnWG+A6SrEqyKcmmbdu2zf3MJM17FrklSZIkSZI0V4uAVwGXV9Urgf/FD6cmmclM82nXHsR3DFatrqqpqppavHjxrnstaUEYapHbFw5IkiRJkiRNhK3A1qq6qa1fS6/o/a021Qjt50MD7Q8d2H8J8MBu4ktmiEvS0Edy+8IBSZIkSRohBxtJ6kJVfRO4P8nLWuhk4A5gPdDPISuBT7Xl9cDZLQ8dDzzSpjO5Djg1yQEtV50KXNe2PZrk+JZ3zh44lqQJN7Qity8ckCRJkqROONhIUlfeDPxpkluBo4HfBS4DTklyN3BKWwfYAGwBNgMfBt4EUFXbgXcCN7fPO1oM4I3AFW2fbwCfGcE5SRoDi4Z47MEXDrwCuAW4gGkvHEgy9BcOSJIkjVKS/endgB1Fb67I/wTcBXwcOBy4F/ilqnq4jUR6H3AG8Bjw61X15XaclcB/a4d9V1WtbfFjgKuA59C7QbygfekvacINDDb6degNNgJ+kGQFcGJrtha4AbiQgcFGwI1tFPjBre3GfmEpSX+w0Q20wUYt3h9sZKFJElX1VWBqhk0nz9C2gPN2cpw1wJoZ4pvoXV9J0lMMc7qSefPCAd+qK0mSRsxRlJK6MjjY6CtJrkjyPKYNNgIcbCRJkhaMYRa5580LB3yrriRJGhWnbJPUsXkx2MiBRpIkaZSGVuT2hQOSJGlCOYpSUpfmxWAjBxpJkqRRGuZIbvCFA5IkafLMi1GU4EhKaRI52EiSJE2iYb540hcOSJKkSTTTKMqLaKMo24u3ZzuK8sRp8Rt4mlO2AasBpqamfDGlNDn6g432pTeQ6Bx6A5yuSXIucB/wutZ2A70X326m9/Lbc6A32ChJf7AR7DjY6Cp6L7/9DA42kiRJHRtqkVuSJGnSVNU3k9yf5GVVdRc/HEV5B73Rk5ex4yjK85Oso/eSyUdaIfw64HcHXjZ5KnBxKzw92kZc3kRvFOUHRnaCkuY9BxtJkqRJY5FbkiRp73MUpSRJkiSNiEVuSZKkvcxRlJIkSZI0OsN+8aQkSZIkSZIkSUNjkVuSJEmSJEmSNLYsckuSJEmSJEmSxpZFbkmSJEmSJEnS2LLILUmSJEmSJEkaWxa5JUmSJEmSJEljyyK3JEmSJEmSJGlsWeSWJEmSJEmSJI0ti9ySJEmSJEmSpLFlkVuSJEmSJEmSNLYsckuSJEmSJGnOktyb5LYkX02yqcUOTLIxyd3t5wEtniTvT7I5ya1JXjVwnJWt/d1JVg7Ej2nH39z2zejPUtJ8ZJFbkiRJkiRJe8t/qKqjq2qqrV8EXF9VS4Hr2zrA6cDS9lkFXA69ojhwCXAccCxwSb8w3tqsGthv+fBPR9I4sMgtSZIkSZKkYVkBrG3La4EzB+JXV8+NwP5JDgZOAzZW1faqehjYCCxv2/arqi9WVQFXDxxL0oSzyC1pQUry7CRfSvK1JLcn+Z0WPyLJTe2xt48n2bfFn9XWN7fthw8c6+IWvyvJaQPx5S22OclF0/sgSZIkSROmgL9KckuSVS324qp6EKD9fFGLHwLcP7Dv1hbbVXzrDPEdJFmVZFOSTdu2bZvjKUkaB0MtcjsXk6QOfR84qapeARxN75v/44HfA97THpV7GDi3tT8XeLiqjgTe09qRZBlwFvByeo/C/WGSfZLsA3yI3iN2y4DXt7aSJEmSNKlOqKpX0btPOi/Jz+6i7Uw1nNqD+I7BqtVVNVVVU4sXL95dnyUtAKMYye1cTJJGrj3y9i9t9ZntU8BJwLUtPv1Ruf4jdNcCJ7cvzlYA66rq+1V1D7CZXi46FthcVVuq6gfAutZWkiSpUw42ktSVqnqg/XwI+CS9+6ZvtalGaD8fas23AocO7L4EeGA38SUzxCWpk+lKnItJ0ki0EddfpXcRtRH4BvCdqnq8NRl8vO3JR+La9keAg3j6j9BJkgUmSfOBg40kjVSS5yV5fn8ZOBX4OrAe6F/HrAQ+1ZbXA2e3a6HjgUfadCbXAacmOaDlnVOB69q2R5Mc3659zh44lqQJN+wi97yYi0nSZKqqJ6rqaHrf8B8L/ORMzdrPoTwq51xw0kSzwCRpPnGwkaRhezHwhSRfA74E/GVVfRa4DDglyd3AKW0dYAOwhd7Tsh8G3gRQVduBdwI3t887WgzgjcAVbZ9vAJ8ZwXlJGgOLhnz8E6rqgSQvAjYm+YddtB3aXEytwL4K4LDDDtt1jyUtOFX1nSQ3AMfTu3Fb1EZrDz7e1n8kbmuSRcALgO3s/FE5dhEf/N2rgdUAU1NTM+YoSRNjBXBiW14L3ABcyECBCbgxSb/AdCKtwASQpF9guoFWYGrxfoHJmzxJff3BRgX8cbseecpgo3aPBg42krSXVNUW4BUzxP8ZOHmGeAHn7eRYa4A1M8Q3AUfNubOSFpyhjuSeL3Mx+cIBafIkWZxk/7b8HODngTuBzwOvbc2mPyrXf4TutcDn2kXXeuCsJM9KcgS9EZNfojeiYGmSI5LsS+/llOuHf2aSxoRPs0nqUucvfvNpNkmSNEpDK3I7F5Okjh0MfD7JrfQK0hur6tP0Rk2+NclmenNuX9naXwkc1OJvpU0jUFW3A9cAdwCfBc5r06A8DpxPL0fdCVzT2koSzIMCE1hkkibVfBhs5EAjSZI0SsOcruTFwCfbe5AWAf+zqj6b5GbgmiTnAvcBr2vtNwBn0JtX6THgHOjNxZSkPxcT7DgX01XAc+g9outjupIAqKpbgVfOEN9C70Zvevx7/DAfTd92KXDpDPEN9HKXJD3FYIEpyVMKTG2agNkWmE6cFr+Bp/k0G06ZJE2UNsDoGVX16MBgo3fww8FGl7HjYKPzk6yj9w6AR1qeug743YF3AZwKXNzuzx5tA5NuojfY6AOjOj9JkqSZDK3I7VxMkiRpEllgktQxBxtJkqSJM+wXT0qSJE0aC0ySOuNgI0mSNIksckuSJO1FFpgkSZIkabSG9uJJSZIkSZIkSZKGzSK3JEmSJEmSJGlszarIneT62cQkaW87+eQdnuw3/0gaGXOQpC6ZgyR1xfwjadzsck7uJM8Gngu8MMkBQNqm/YCXDLlvkibY9773PR577DG+/e1v8/DDD9ObspZ9khyO+UfSkJmDJHVpeg6il38OxPswSUPmNZCkcbW7F0/+Z+At9BLZLfywyP1d4END7JekCffHf/zHvPe97+WBBx7gmGOO6V9cLQM+hflH0pCZgyR1aXoOopd/bsH7MElD5jWQpHG1y+lKqup9VXUE8F+r6seq6oj2eUVVfXBEfZQ0gS644ALuuece3v3ud7NlyxbuuecegNvMP5JGwRwkqUvTcxC9/ON9mKSh8xpI0rja3UhuAKrqA0l+Bjh8cJ+qunpI/ZIkAN785jfz93//99x7770AByU5G8w/kkbDHCSpS/0cBBzYzz9gDpI0fF4DSRo3sypyJ/ko8OPAV4EnWrgAk5ukoXrDG97AN77xDY4++mjovSPg/8D8I2lEzEGSutTPQcCP0Ms/YA6SNAJeA0kaN7MqcgNTwLJqkzFJ0qhs2rSJO+64gyRcfvnl91fVm7vuk6TJYQ6S1KV+DnrGM55xn/lH0ih5DSRp3OxyTu4BXwd+dJgdkaSZHHXUUXzzm9/suhuSJpQ5SFKXzEGSumL+kTRuZjuS+4XAHUm+BHy/H6yq1wylV5LUfPvb32bZsmUce+yxAEcmWQ/mH0mjYQ6S1KV+DgKW9vMPmIMkDZ/XQJLGzWyL3G8fZickaWfe/va3P7n8V3/1V98E/kdnnZE0ccxBkrrUz0Ennnjig5h/JI3QXK6BkuwDbAL+qapeneQIYB1wIPBl4A1V9YMkz6I3x/cxwD8Dv1xV97ZjXAycS++9cL9RVde1+HLgfcA+wBVVddnczlTSQjGrIndV/c2wOyJJM/m5n/u5wdV/MR9JGiVzkKQuDeQg84+kkZrjNdAFwJ3Afm3994D3VNW6JH9Er3h9efv5cFUdmeSs1u6XkywDzgJeDrwE+OskL23H+hBwCrAVuDnJ+qq6Y49OUtKCMqs5uZM8muS77fO9JE8k+e6wOydJz3/+89lvv/3Yb7/9AF5l/pE0SuYgSV3q5yDgld6HSRqlPb0GSrIE+AXgirYe4CTg2tZkLXBmW17R1mnbT27tVwDrqur7VXUPsBk4tn02V9WWqvoBvdHhK+Z+tpIWgtmO5H7+4HqSM+klF0kaqkcfffTJ5SRfBt6F+UfSiJiDJHWpn4OSfKWqprwPkzQqc7gGei/wW0C/jnQQ8J2qerytbwUOacuHAPcDVNXjSR5p7Q8Bbhw45uA+90+LHze7M5K00M1qJPd0VfX/0vsmbreS7JPkK0k+3daPSHJTkruTfDzJvi3+rLa+uW0/fOAYF7f4XUlOG4gvb7HNSS7ak3ORNF6eTv6RpL3NHCSpS+YgSV2ZTf5J8mrgoaq6ZTA80+F2s+3pxmfqy6okm5Js2rZt2y56LWmhmNVI7iT/cWD1GcAUO0kkM3AuJkl77BOf+MTg6gFJLmP2+UeS5sQcJKlLAzlo/ySv5Wnch/niN0lzsYfXQCcAr0lyBvBsenWg99LLYYvaaO4lwAOt/VbgUGBrkkXAC4DtA/G+wX12Fn+KqloNrAaYmpry2k2aALMqcgP/58Dy48C9zGLeo4G5mC4F3jowF9OvtCZrgbfTK3KvaMvQm4vpg9PnYgLuSdKfiwnaXEztd/XnYrLILS0gf/EXfzG4uh/wKM67JmlE5pKDLDBJmquBHLQ/cBqzvA9rHGwkaY/tyTVQVV0MXAyQ5ETgv1bVryb5M+C19K6DVgKfarusb+tfbNs/V1WVZD3wP5P8Ab38sxT4Er2R3EvbNdU/0ctR/fqSpAk32zm5z9nD4zsXk6Q5+chHPvLk8lVXXfWPVXVph92RNGHmmIMsMEmak34Ouuqqq+6tqv9rtvs52EjSXO3l+7ALgXVJ3gV8Bbiyxa8EPtryy3Z61z1U1e1JrqGXVx4HzquqJwCSnA9cR++L/jVVdfsc+iVpAZnVnNxJliT5ZJKHknwryZ+3C6dd7eNcTJLmbOvWrfziL/4iL3rRiwBeMZv8I0l7y57moIEC0xVtvV9gurY1WQuc2ZZXtHXa9pOnF5iq6h6gX2A6llZgqqof0BsV5RMu0gLUz0H08s+s7sOa/mCjf2vrsx5sBAwONpo+qOiQXcQlLSBzvQ+rqhuq6tVteUtVHVtVR1bV69qXZ1TV99r6kW37loH9L62qH6+ql1XVZwbiG6rqpW2bA6AkPWm2L578CL3HSF5C7wLmL1psV/pzMd1L7+brJAbmYmptZpqLiVnOxbSrOZqeoqpWV9VUVU0tXrx4d+cqaR4555xzeM1rXsMDDzwA8DVml38kaa+YQw6ywCRpzvo5iF7+mdV92HwZbORAI2m8eR8madzMtsi9uKo+UlWPt89VwC6rxVV1cVUtqarD6T1y8rmq+lXg8/TmWoKZ52KCgbmYWvysJM9q8y7152K6mTYXU5J92+9YP8vzkTQmtm3bxjnnnMOiRb3vxmaTfyRpb9mTHDRfCkytLxaZpDHWz0HQ+xJsltdB82KwkQONpPHmfZikcTPbIve3k/xakn3a59fovRhpT1xIb164zfRGKQ3OxXRQi78VuAh6czEB/bmYPkubi6mNdOrPxXQncI1zMUkLzwtf+EL+5E/+hCeeeAKAOeYfSXpa9jAHzYsCE1hkksZdPwdB72W2s8lBDjaStDd4HyZp3My2yP2fgF8Cvgk8SO/iZ9Yvo3QuJkl7as2aNVxzzTX86I/+KMAreJr5R5LmYk9ykAUmSXtLPwfRyz9P+z5sGgcbSZo178MkjZtFu28CwDuBlVX1MECSA4F30yt+S9LQ/PZv/zZr167lgAMOIMnX6OUd84+kkdjLOehCYF2SdwFf4akFpo+2AtN2ekVrqur2JP0C0+O0AhNAkn6BaR9gjQUmaWHq56ADDzzwa1UedPRCAAAgAElEQVQ19XTvw6rqBuCGtryF3otrp7f5HvC6nex/KbDDYKKq2gBsmOVpSBpD3odJGjezLXL/dL/ADVBV25O8ckh9kqQn3XrrrRxwwAFPrpt/JI3SXHOQBSZJc+F1kKSumH8kjZvZTlfyjCRPZrc2gmC2BXJJ2mP/9m//xsMPP/kdm/lH0kiZgyR1yRwkqSvmH0njZrYJ6n8Af5/kWqDozc/tHNiShu5tb3sbP/MzP8NrX/tagJcAf4/5R9KImIMkdamfg4CXJHkH3odJGhGvgSSNm1kVuavq6iSbgJOAAP+xqu4Yas8kCTj77LOZmpric5/7HPTmpDX/SBoZc5CkLvVz0Mtf/vJ/BbZhDpI0Il4DSRo3s52uhKq6o6o+WFUfMLFJGqVly5Zx/vnnAzxk/pE0auYgSV1atmwZwDbvwySNmtdAksbJrIvckiRJkiRJkiTNNxa5JUmSJEmSJEljyyK3pAUpyaFJPp/kziS3J7mgxQ9MsjHJ3e3nAS2eJO9PsjnJrUleNXCsla393UlWDsSPSXJb2+f9STL6M5UkSZIkSZpsFrklLVSPA2+rqp8EjgfOS7IMuAi4vqqWAte3dYDTgaXtswq4HHpFceAS4DjgWOCSfmG8tVk1sN/yEZyXJEmSJEmSBljklrQgVdWDVfXltvwocCdwCLACWNuarQXObMsrgKur50Zg/yQHA6cBG6tqe1U9DGwElrdt+1XVF6uqgKsHjiVJkiRJkqQRscgtacFLcjjwSuAm4MVV9SD0CuHAi1qzQ4D7B3bb2mK7im+dIT79d69KsinJpm3btu2N05EkSZIkSdIAi9ySFrQkPwL8OfCWqvrurprOEKs9iD81ULW6qqaqamrx4sWz6bIkSZIkSZKeBovckhasJM+kV+D+06r6RAt/q001Qvv5UItvBQ4d2H0J8MBu4ktmiEuSJEmSJGmELHJLWpCSBLgSuLOq/mBg03pgZVteCXxqIH52eo4HHmnTmVwHnJrkgPbCyVOB69q2R5Mc337X2QPHkiRJkqSJk+TZSb6U5GtJbk/yOy1+RJKbktyd5ONJ9m3xZ7X1zW374QPHurjF70py2kB8eYttTnLRqM9R0vxkkVvSQnUC8AbgpCRfbZ8zgMuAU5LcDZzS1gE2AFuAzcCHgTcBVNV24J3Aze3zjhYDeCNwRdvnG8BnRnFikiRJkjRPfR84qapeARwNLG+DiH4PeE9VLQUeBs5t7c8FHq6qI4H3tHYkWQacBbwcWA78YZJ9kuwDfAg4HVgGvL61lTThFnXdAUkahqr6AjPPmw1w8gztCzhvJ8daA6yZIb4JOGoO3ZQkSZKkBaPdV/1LW31m+xRwEvArLb4WeDtwObCiLQNcC3ywPSm7AlhXVd8H7kmyGTi2tdtcVVsAkqxrbe8Y3llJGgdDG8ntIyqSJEmSJEmTpY24/iq99x9tpPfU63eq6vHWZCtwSFs+BLgfoG1/BDhoMD5tn53FJU24YU5X4iMqkiRp4vhFv6QumYMkda2qnqiqo4El9EZf/+RMzdrPmZ6+rT2IP0WSVUk2Jdm0bdu22XVc0lgbWpG7enb2iMq1Lb4WOLMtr2jrtO0nT39EparuoTf37bHts7mqtlTVD4D+IyqSJEld8ot+SV0yB0maF6rqO8ANwPHA/kn6U+YuAR5oy1uBQwHa9hcA2wfj0/bZWXz6715dVVNVNbV48eK9dUqS5rGhvnjSR1QkSdKk8Yt+SV0yB0nqUpLFSfZvy88Bfh64E/g88NrWbCXwqba8vq3Ttn+uzeu9HjirPW1yBLAU+BJwM7C0PZ2yL70v49YP/8wkzXdDLXLPh0dUwMdUJEnSaPlFv6QuzYcc5D2YNLEOBj6f5FZ6BemNVfVp4ELgre0FkgcBV7b2VwIHtfhbgYsAqup24Bp6L5T8LHBeqzE9DpwPXEeveH5Naytpwi3afZO5q6rvJLmBgUdUWmKa6RGVrbN8RIVdxKf//tXAaoCpqakZC+GSJEl7S1U9ARzdRjJ9kr37Rf9MgxR2+kU/sArgsMMO202vJS0U8yEHeQ8mTaaquhV45QzxLfQGP06Pfw943U6OdSlw6QzxDcCGOXdW0oIytJHcPqIiSZImXZdzUbbf73yU0gTrOgdJkiSNyjCnK/ERFUmSNHH8ol9Sl8xBkiRpEg1tuhIfUZEkSRPqYGBtkn3oDSi4pqo+neQOYF2SdwFf4alf9H+0fdG/nV7BiKq6PUn/i/7HaV/0AyTpf9G/D7DGL/olDTAHSZKkiTOSObklSZImhV/0S+qSOUiSJE2iYU5XIkmSJEmSJEnSUFnkliRJkiRJkiSNLYvckiRJkiRJkqSxZZFbkiRJkiRJkjS2LHJLkiRJkiRJksaWRW5JkiRJkiRJ0tiyyC1JkiRJkiRJGlsWuSVJkiRJkiRJY8sityRJkiRJkiRpbFnkliRJkiRJkiSNLYvckiRJkiRJkqSxZZFbkiRJkiRJkjS2LHJLkiRJkiRJksaWRW5JkiRJkiRJ0tiyyC1JkiRJkqQ5SXJoks8nuTPJ7UkuaPEDk2xMcnf7eUCLJ8n7k2xOcmuSVw0ca2Vrf3eSlQPxY5Lc1vZ5f5KM/kwlzUcWuSVJkiRJkjRXjwNvq6qfBI4HzkuyDLgIuL6qlgLXt3WA04Gl7bMKuBx6RXHgEuA44Fjgkn5hvLVZNbDf8hGcl6QxMLQit9/gSZIkSdJoeR8mqStV9WBVfbktPwrcCRwCrADWtmZrgTPb8grg6uq5Edg/ycHAacDGqtpeVQ8DG4Hlbdt+VfXFqirg6oFjSZpwwxzJ7Td4kiRp4lhgktQx78MkdS7J4cArgZuAF1fVg9ArhAMvas0OAe4f2G1ri+0qvnWGuCQNr8jtN3iSJGlCWWCS1BnvwyR1LcmPAH8OvKWqvrurpjPEag/iM/VhVZJNSTZt27Ztd12WtACMZE5uv8GTJEmTwgKTpPnC+zBJo5bkmfQK3H9aVZ9o4W+16xfaz4dafCtw6MDuS4AHdhNfMkN8B1W1uqqmqmpq8eLFczspSWNh6EVuv8GTJEmTygKTpK50fR/mPZg0edr0aVcCd1bVHwxsWg/0p11bCXxqIH52m7rteOCRdo10HXBqkgPaU2ynAte1bY8mOb79rrMHjiVpwg21yO03eJIkaVJ1XWBqfbDIJE2g+XAf5j2YNJFOAN4AnJTkq+1zBnAZcEqSu4FT2jrABmALsBn4MPAmgKraDrwTuLl93tFiAG8Ermj7fAP4zChOTNL8N7Qit9/gSZKkSTUfCkxgkUmaRN6HSepKVX2hqlJVP11VR7fPhqr656o6uaqWtp/bW/uqqvOq6ser6qeqatPAsdZU1ZHt85GB+KaqOqrtc36buk2ShjqS22/wJEnSxLHAJKlj3odJkqSJs2hYB66qLzDz47QAJ8/QvoDzdnKsNcCaGeKbgKPm0E1JC1SSNcCrgYeq6qgWOxD4OHA4cC/wS1X1cCsSvQ84A3gM+PX+S+OSrAT+Wzvsu6pqbYsfA1wFPIfezeEFjiKQ1PQLTLcl+WqL/T/0CkrXJDkXuA94Xdu2gV7+2UwvB50DvQJTkn6BCXYsMF1FLwd9BgtMkhrvwyRJ0iQaWpFbkjp2FfBB4OqB2EXA9VV1WZKL2vqFwOnA0vY5DrgcOK4VxS8BpujNd3tLkvVV9XBrswq4kV6BajkWmSRhgUmSJEmSRm2oL56UpK5U1d8C26eFVwBr2/Ja4MyB+NVtTrgbgf3bfLmnARuransrbG8Elrdt+1XVF1tx6uqBY0mSJEmSJGmELHJLmiQvbnPZ0n6+qMUPAe4faLe1xXYV3zpDXJIkSZIkSSNmkVuSZp5WoPYgvuOBk1VJNiXZtG3btjl0UZIkSZIkSTOxyC1pknyrTTVC+/lQi28FDh1otwR4YDfxJTPEd1BVq6tqqqqmFi9evFdOQpIkSZIkST9kkVvSJFkPrGzLK4FPDcTPTs/xwCNtOpPrgFOTHJDkAOBU4Lq27dEkxycJcPbAsSRJkiRJkjRCi7rugCQNQ5KPAScCL0yyFbgEuAy4Jsm5wH3A61rzDcAZwGbgMeAcgKranuSdwM2t3Tuqqv8yyzcCVwHPAT7TPpIkSZIkSRoxi9ySFqSqev1ONp08Q9sCztvJcdYAa2aIbwKOmksfJUmSJEmSNHdOVyJJkiRJkiRJGlsWuSVJkiRJkiRJY8sityRJkiRJkiRpbFnkliRJkiRJkiSNLYvckiRJkiRJkqSxZZFbkiRJkiRJkjS2LHJLkiRJkiRJksaWRW5JkiRJkiRJ0tiyyC1JkiRJkqQ5S7ImyUNJvj4QOzDJxiR3t58HtHiSvD/J5iS3JnnVwD4rW/u7k6wciB+T5La2z/uTZLRnKGm+GlqR28QmSZIkSaPlfZikjl0FLJ8Wuwi4vqqWAte3dYDTgaXtswq4HHo5C7gEOA44Frikn7dam1UD+03/XZIm1DBHcl+FiU2SJE0gi0ySOnQV3odJ6khV/S2wfVp4BbC2La8FzhyIX109NwL7JzkYOA3YWFXbq+phYCOwvG3br6q+WFUFXD1wLEkTbmhFbhObJEmaYFdhkUlSB7wPkzQPvbiqHgRoP1/U4ocA9w+029piu4pvnSEuSSwa8e97SmJLMu8T2zG/efUwDqtZuuX3z+66C5IkPW1V9bdJDp8WXgGc2JbXAjcAFzJQZAJuTNIvMp1IKzIBJOkXmW6gFZlavF9k+szwzkjSmBu7+zBJE2GmJ9FqD+I7HjhZRW9AAIcddtie9k/SGJkvL54cWmKDXnJLsinJpm3btu1hFyVJkuZk5KOYvAaStBtDLTCZfyQ132pf4NN+PtTiW4FDB9otAR7YTXzJDPEdVNXqqpqqqqnFixfvlZOQNL+Nusg98sQGJjdJkjSvDa3I5DWQpMYCk6QurQf67xZZCXxqIH52ez/J8cAjbSDAdcCpSQ5oU7WdClzXtj2a5Pj2PpKzB44lacKNushtYpMkSZOqky/7JQnvwySNSJKPAV8EXpZka5JzgcuAU5LcDZzS1gE2AFuAzcCHgTcBtKna3gnc3D7v6E/fBrwRuKLt8w2crk1SM7Q5uVtiOxF4YZKt9F6cdBlwTUty9wGva803AGfQS1KPAedAL7El6Sc22DGxXQU8h15SM7FJkqT5rF9kuowdi0znJ1lH7yWTj7Q5c68DfnfgZZOnAhe366NHW0HqJnpFpg+M8kQkzV/eh0nqUlW9fiebTp6hbQHn7eQ4a4A1M8Q3AUfNpY+SFqahFblNbJIkaVJZZJLUFe/DJGl2jvnNq7vuwpzc8vtnd90FaV4ZWpFbkiRpUllkkiRJkqTRGfWc3JIkSZIkSZIk7TUWuSVJkiRJkiRJY8sityRJkiRJkiRpbFnkliRJkiRJkiSNLYvckiRJkiRJkqSxZZFbkiRJkiRJkjS2LHJLkiRJkiRJksbWoq47IEmSJEnSJLjvHT/VdRfm5LD/flvXXZAkaUYWuSVJkiRJkqQFzC/ZtNA5XYkkSZIkSZIkaWxZ5JYkSZIkSZIkjS2nK5EkSZIWqBM+cELXXZiTv3vz33XdBUmSJI0Bi9ySJEmSFoS/+dmf67oLc/Jzf/s3XXdBkiRpLDldiSRJkiRJkiRpbDmSW5IkaYId85tXd92FObnl98/uuguSpJ2YtCmTfJpEkrrjSG5JkiRJkiRJ0tga+yJ3kuVJ7kqyOclFXfdH0mQxB0nqivlHUpfMQZK6Yv6RNJOxLnIn2Qf4EHA6sAx4fZJl3fZK0qQwB0nqivlHUpfMQZK6Yv6RtDNjXeQGjgU2V9WWqvoBsA5Y0XGfJE0Oc5Ckrph/JHXJHCSpK+YfSTMa9xdPHgLcP7C+FTiuo75ImjzmIEldMf9I6pI5SFJXzD/SDMb9xbcw95ffjnuROzPEaodGySpgVVv9lyR3DbVX88sLgW933Yk9lXev7LoL891Y//lyyUz/hHfp3w2jG3Ow2xxk/hnfv5/mn1kZ6z/jMc9B43QNNNS/J/Pw3+pw/108/b+3wzbcP9/fmKzzJTs93/mUf2C8roHMQXuTOahr5iCvgZ5k/uncpOUfmOc5aNyL3FuBQwfWlwAPTG9UVauB1aPq1HySZFNVTXXdDw2Hf76d220OMv/493Mh88+4U2NzDTRpf08834Vt0s53F8bmGmjS/sw834Vt0s53J7wGmqc834Vvvp/zuM/JfTOwNMkRSfYFzgLWd9wnSZPDHCSpK+YfSV0yB0nqivlH0ozGeiR3VT2e5HzgOmAfYE1V3d5xtyRNCHOQpK6YfyR1yRwkqSvmH0k7M9ZFboCq2gBs6Lof81jnjwhqqPzz7Zg5aJf8+7nw+WfcoTHKP5P298TzXdgm7Xx3yhw0b3m+C9ukne+MzD/zlue78M3rc07VDvPzS5IkSZIkSZI0FsZ9Tm5JkiRJkiRJ0gSzyL2AJdknyVeSfLrrvmjvS3JvktuSfDXJpq77I/UlWZPkoSRf77ov2vuSHJrk80nuTHJ7kgu67pPmp0nMBZN27TVp1yJJ9k9ybZJ/aDnw33fdJ81s0v6vSvLsJF9K8rV2vr/TdZ9GYZJybpKXtVzb/3w3yVu67pdmNmnXQOZcc+58YZF7YbsAuLPrTmio/kNVHV1VU113RBpwFbC8605oaB4H3lZVPwkcD5yXZFnHfdL8dBWTlwsm8dprkq5F3gd8tqp+AngFk/dnPU4m7f+q7wMnVdUrgKOB5UmO77hPozAxObeq7mq59mjgGOAx4JMdd0s7dxWTdQ1kzjXnzgsWuReoJEuAXwCu6LovkiZLVf0tsL3rfmg4qurBqvpyW36U3oXOId32SvPRpOUCr70WtiT7AT8LXAlQVT+oqu902yvtzKT9X1U9/9JWn9k+C/rlWxOec08GvlFV/9h1RzSzSbsGMueac+cLi9wL13uB3wL+reuOaGgK+KsktyRZ1XVnJE2eJIcDrwRu6rYn0rwwiddek3Qt8mPANuAj7VHdK5I8r+tOafcm5f+q9hj5V4GHgI1VtaDPl8nMuX1nAR/ruhPSTMy5C9ZY5FyL3AtQklcDD1XVLV33RUN1QlW9Cjid3uNAP9t1hyRNjiQ/Avw58Jaq+m7X/ZG6NMHXXpN0LbIIeBVweVW9EvhfwEXddkm7M0n/V1XVE20qiyXAsUmO6rpPwzLBOZck+wKvAf6s675I05lzF6ZxyrkWuRemE4DXJLkXWAeclORPuu2S9raqeqD9fIjefGzHdtsjSZMiyTPpXcD+aVV9ouv+SPPARF57Tdi1yFZg68BIrWvpFb01T03q/1VtGp0bWNjzAU9kzm1OB75cVd/quiPSIHOuOXc+sMi9AFXVxVW1pKoOp/co0+eq6tc67pb2oiTPS/L8/jJwKjARb26W1K0koTcn7Z1V9Qdd90eaDybx2mvSrkWq6pvA/Ule1kInA3d02CXtwqT9X5VkcZL92/JzgJ8H/qHbXg3PJObcAa/HqUo0z5hzzbnzhUVuaTy9GPhCkq8BXwL+sqo+23GfJACSfAz4IvCyJFuTnNt1n7RXnQC8gd43+F9tnzO67pTmH3PBgjeJ1yJvBv40ya3A0cDvdtwf7dyk/V91MPD59nfzZnrzw3664z5pL0vyXOAUYGJGyY6rCbwGMueac+eFVC3oF4BKkiRJkiRJkhYwR3JLkiRJkiRJksaWRW5JkiRJkiRJ0tiyyC1JkiRJkiRJGlsWuSVJkiRJkiRJY8sityRJkiRJkiRpbFnkliRJkiRJ+v/bu/egq6o6jOPfJy8pkWmKd5JCvKKDl8YLmqWOUpmFYvKGF9Km+scLo2alJU6aJhrqiDrNlOik4gXQNFPRRGXU8IYopiJh3spLTiqGJvLrj7U2bjbnvOfCC5y3eT4zZ+bsy1p77TPzrnettdf6bTMz67U8yG1tk3SapDmSZkuaJWk3SdMlPZu3Z0m6MZ87VlJI2rKUfkzet2vefkHSBvn75pJuljRX0jxJF0las5uyfFnS25Iel/RXSWdU9hfluatUnpNr5LOg9H0rSbdJej7neb2kjXKet1bSTZQ0QtLUfJ3nK9fdc/l+bTNrh6ThuZ7ZJm8PyNvHlc65RNLo/H2ipPn57/YJSfuVzuuufnsl75sraYqk7Rqlq1PeJXWTpLUkTZN0Rr6PWZXPYklf7fEfzcx6TAe3lZ6RdH6Nc26W9GCl/EU5Pyp9P74nfyczWzE6rA7qI+lqSU9KekrSDEl9G+Ul6exK++e5XB/1XZG/ndn/u8r/9Vm5n7RkrEPS6Nzf2LGU5ilJA0rbO+U64sBK3iHpgtL2yZLG5u93VK77qqS/dFPOiZJGVPYtqGyPkfS+pM+U9o2WdEnlvOml+uyYXB/Nzvf1zdL1iv7gM8pjS6U8+kn6UNIPGpRpyfW1dH+x+KzbTNvMWuNBbmuLpD2Ag4CdI2JHYH/gpXx4VEQMyZ9yZfQkMLK0PQJ4ukbeAqYAN0XEIGAroC9wdoNi3R8ROwG7AkdI2qW0vyjP/k3e31rAH4HLImLLiNgWuAzo1126iBgeEUOA71Wu+0Az1zWzHtcFzGDpuud14IRuOmKn5L/jE4HLK8fq1W/j875BwHXAnyX1ayJdTblsk4FHI+LMiJhaSj8EuBS4H7ijUV5mtmp0eFtpJ+AgSUNLea4L7AysK+nzABFxdqneWVgq88XN/g5mtmp0YB10AvBaROwQEYOBY4EPG+UVEadV2kAPA+dExILalzGzJpX/rw+JiBdqnPMycFo3eRR9ra7K/g+AQ4qHYmURcWDp73ko8A5welt3sHQ5HgaGN3OypM1J97VXrh93B2aXTin6g0OAo4t2UXYY8BDL3nMj4yu/97/z/rptM2udB7mtXZsAb0bEBwAR8WZEvNogzU1A8XTsC8DbwBs1ztsXeD8irsh5fwSMAY6R1KdRwSLiPeBRYGCT91LLd4AHI+KWUr73RMRTy5Gnma1EeYbPUFInqtxhewO4Gzi6QRYPApu1et2IuA64k1SPtGN1YBIwNyJ+XD0oaSvg58CREbG4zWuY2YrXyW2lhcAslq7jDgVuIdU/I2ulM7NepdPqoE2AV4qNiHg2l63pvCQdAWwJjG1wH2bWM24Ftpe0dfVAfkA1AhgNHJAnChYWAb8h/S135yLgtoiY1m4BJQ0kPRg7neYHnjcE3gUWAETEgoiYX+O84p7eK+3rAk4CNpfUcl+xnjptM2uRB7mtXXcC/fNysUsl7VM6dnVpCca40v53gJckDSZVDNfVyXt70iD1EhHxDvAiqVHTLUnrk57Ezcm79i6Vp7unkGWDq2WoKOc5Czi4yXzNbOX5FnB7RDwHvCVp59Kxc4GTJK3WTfphpM5eWb36reoxYJs20gH8CFgUESdWD0haA7gGODkiXmyQj5mtWp3cVloPGATcV9rdBVybP63OTjKzztNpddDvgFMlPSjpLEmDWslLKUTCuaRZ6Ivq3bSZNW3tUj0wtc45i4HzgJ/WODYUmB8R84DpwNcqxycAo8ohRMokDSetwv9JE2UdVxl/KSvaL/cDW0vasIn8ngBeA+ZLukLSN2pdjzSTfVJEvJ7L3B/YOCJmAtcDhzdxrcKY0j3cUz1Yp21mLVp9VRfAeqeIWJDDgewNfAW4TlIx43BURDxSJ2kxO+hAYD/guzXOERAt7C/sLelxUkV8bkTMkfRl0vKPgxrdU4uWylPSxB7O38yWXxdwYf4+KW9PAIiI+ZJmUnu29ThJ55Ge8O9eOdZd/VamNtNBWvK3h6St8gB92S+AORExqcm8zGwV6eC20mxga1Jb6Z8AkjYiDSbNiIiQtEjSYK9gM+u9Oq0OiohZeXb4AaTQKQ/nkCoN88qTEn4P/Cwinq9TbjNrzcIckqORa4DTKiE7IPWtij7JJOBIUughID2sknQVcDywsJwwz4C+GDiwWG3SwCkRseS9Rlo6/vVIYHhELJY0hRROZAL120MRER9JGgZ8kVTPjZe0S0SMLV8vrwy+W9KeOQTtSNLgdnHPvwV+3U25y2UYHxG1Ym7XbJtZezzIbW3LS8mmA9MlPUnjpf+QlsGOAx7JlV6tc+aQlswuIWkdoD8wr5u8e3Iwew6wT8OzzKwj5RUd+wKDJQWwGqmRcWnptF8CN7Ls0/JTSA2044ErgV1o3U5As4PaVffl6/5J0t7F0uL80O5QUsxcM+sFOrWtlMMezZA0NSJmkWYirUea0QSwDqkjt7wxMs1sFeq0OijH0Z4CTJG0mDTz84km8jod+EcR0sTMVp6IWKT0EslTi335wdOhwMF5tbyA9SV9OiLeLSW/kLTC9YpSWpH6OudGxDIx/1uh9FLMQcC0XFetCfyNNMj9L1LbpuyzwJv5vgKYCcyUNC2XcWzl3hdImg7sBTxAGtjfSNKofMqmkgZFxFxgoaQ1I+K/1Ws1UK9tZm1wuBJri6StS0vMIAXk/3ujdDnO0Kl0/1KSu4E+ko7K11oNuACYGBH/ab/ULbkG2FPS14sdkoZJ2mElXd/Mls8I4KqI2CIiBkREf2A+sHlxQkQ8Q3qZ0jIPx3Ks64uAT6jytvBGJB1KmqV0bbuFj4jJpA7m7Upv3l6P1PA6qtJwNLMO1cltpbxK5Bw+7rB2AcNyfTmA9HDPcbnNerFOq4MkDc3tmeIF29vl8nSbl6TdSTF/v9+o7Ga2wkwkrcDol7f3B56IiP657bAFMJkULnKJiHiLNPP52NLuk0lx+Cf0QLm6gLFF+yUiNgU2k7QF6UWUQyVtDCBpV+CTpJBMm2rpUJY160dJqwO7AfOU4pJ/KiI2K7WXzuHj9tK9wBE53drAt4FlwpLUU6NtZm3wILe1qy9wpaSn89KK7fj4qVc5xttd1YQRMSkiHquXcX6iNhw4TNJc4DngfWrHgVoep0t6ufhUyrCQNPB1nKS5kp4mNa5e7+EymNmK0QVUY8tNZtl65GxKA99luS46ixQju1CvfitirM0lNTrjdLoAAAF5SURBVG72jYg3mkhXV0RcTprt9Afgh6TwKZeV49FJaiUOnJmtXJ3eVroc+FJefvw54KFS/vOBdyTt1kJ+ZtZZOq0OGgjcm2eUP05a8Ta5ibzOBPoA91TaQAOb/B3MbDnl2ckXk/ojUL+vVSsU5AXABqXts4BtK3/PTQ8GV4ysUY6pwMiIeA04AbhNKb72hUBXnsy0BnC+pGfyscPzuYUiJvds4ElSn6zePRfvMTkBOCSnewi4ISLKK4bHVO55QI37KbfNrA1K/1PMzMzMzMzMzMzMzHofz+Q2MzMzMzMzMzMzs17LL560XiXHxv1VZff8iBi+KspjZtaO/IKWwyq7b4iI7uJfmpk15LaSma1KroPMrB2SJgBDK7sv8gtnrRUOV2JmZmZmZmZmZmZmvZbDlZiZmZmZmZmZmZlZr+VBbjMzMzMzMzMzMzPrtTzIbWZmZmZmZmZmZma9lge5zczMzMzMzMzMzKzX8iC3mZmZmZmZmZmZmfVa/wOuZ8v+3yiSQgAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "for _ in itertools.repeat(None, 5):\n", + " dataComparison(anomaliesU_compare)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Discussion 1.1.3: Assess Missing Data in Each Row\n", + "\n", + "There is a huge distance that is faily easy to visualise from the above graphs. We can see that the group that is below the threshold looks very reasonable. Without doing any specific statistical analysis we can see that across most columns, the data is fairly evenly spread. With a good mix between the columns - the point to take away is across the columns, the data doesn't look to follow a pattern. \n", + "\n", + "\n", + "Looking at the group which contains the rows above the threshold we can see immediately the data is largely dominated by a single value in each column. Looking at the column ANZ_HAUSHALTE_AKTIV we can see that this column is dominated with missing values exlusively from this rows. This means that all the information we have for this column will come from the other set of rows.\n", + "\n", + "This is a very interesting factor in our data. If we think about it, if a row has a large number of missing values, then there must be only a few cells in that row that contain the information. If we take the columns that we know contain mostly data and not many nan values (as we have exlucded both of these earlier on), then we can see that these rows account for the dominating value. \n", + "\n", + "We can see this from the above graph where SEMIO_Lust is dominated with the value 5 in these upper rows, whereas in the lower group SEMIO_Lust is fairly evenly spread out, with 6, 7 being the two highest values and 5 actually being second from the bottom." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 1.2: Select and Re-Encode Features\n", + "\n", + "Checking for missing data isn't the only way in which you can prepare a dataset for analysis. Since the unsupervised learning techniques to be used will only work on data that is encoded numerically, you need to make a few encoding changes or additional assumptions to be able to make progress. In addition, while almost all of the values in the dataset are encoded using numbers, not all of them represent numeric values. Check the third column of the feature summary (`feat_info`) for a summary of types of measurement.\n", + "- For numeric and interval data, these features can be kept without changes.\n", + "- Most of the variables in the dataset are ordinal in nature. While ordinal values may technically be non-linear in spacing, make the simplifying assumption that the ordinal variables can be treated as being interval in nature (that is, kept without any changes).\n", + "- Special handling may be necessary for the remaining two variable types: categorical, and 'mixed'.\n", + "\n", + "In the first two parts of this sub-step, you will perform an investigation of the categorical and mixed-type features and make a decision on each of them, whether you will keep, drop, or re-encode each. Then, in the last part, you will create a new data frame with only the selected and engineered columns.\n", + "\n", + "Data wrangling is often the trickiest part of the data analysis process, and there's a lot of it to be done here. But stick with it: once you're done with this step, you'll be ready to get to the machine learning parts of the project!" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Counter({'categorical': 21,\n", + " 'ordinal': 49,\n", + " 'numeric': 7,\n", + " 'mixed': 7,\n", + " 'interval': 1})" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# How many features are there of each data type?\n", + "collections.Counter(feat_info['type'].values)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.2.1: Re-Encode Categorical Features\n", + "\n", + "For categorical data, you would ordinarily need to encode the levels as dummy variables. Depending on the number of categories, perform one of the following:\n", + "- For binary (two-level) categoricals that take numeric values, you can keep them without needing to do anything.\n", + "- There is one binary variable that takes on non-numeric values. For this one, you need to re-encode the values as numbers or create a dummy variable.\n", + "- For multi-level categoricals (three or more values), you can choose to encode the values using multiple dummy variables (e.g. via [OneHotEncoder](http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html)), or (to keep things straightforward) just drop them from the analysis. As always, document your choices in the Discussion section." + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
0AGER_TYPpersoncategorical[-1,0]
2ANREDE_KZpersoncategorical[-1,0]
3CJT_GESAMTTYPpersoncategorical[0]
10FINANZTYPpersoncategorical[-1]
12GFK_URLAUBERTYPpersoncategorical[]
13GREEN_AVANTGARDEpersoncategorical[]
17LP_FAMILIE_FEINpersoncategorical[0]
18LP_FAMILIE_GROBpersoncategorical[0]
19LP_STATUS_FEINpersoncategorical[0]
20LP_STATUS_GROBpersoncategorical[0]
21NATIONALITAET_KZpersoncategorical[-1,0]
38SHOPPER_TYPpersoncategorical[-1]
39SOHO_KZpersoncategorical[-1]
40TITEL_KZpersoncategorical[-1,0]
41VERS_TYPpersoncategorical[-1]
42ZABEOTYPpersoncategorical[-1,9]
47KK_KUNDENTYPhouseholdcategorical[-1]
52GEBAEUDETYPbuildingcategorical[-1,0]
55OST_WEST_KZbuildingcategorical[-1]
57CAMEO_DEUG_2015microcell_rr4categorical[-1,X]
58CAMEO_DEU_2015microcell_rr4categorical[XX]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "0 AGER_TYP person categorical [-1,0]\n", + "2 ANREDE_KZ person categorical [-1,0]\n", + "3 CJT_GESAMTTYP person categorical [0]\n", + "10 FINANZTYP person categorical [-1]\n", + "12 GFK_URLAUBERTYP person categorical []\n", + "13 GREEN_AVANTGARDE person categorical []\n", + "17 LP_FAMILIE_FEIN person categorical [0]\n", + "18 LP_FAMILIE_GROB person categorical [0]\n", + "19 LP_STATUS_FEIN person categorical [0]\n", + "20 LP_STATUS_GROB person categorical [0]\n", + "21 NATIONALITAET_KZ person categorical [-1,0]\n", + "38 SHOPPER_TYP person categorical [-1]\n", + "39 SOHO_KZ person categorical [-1]\n", + "40 TITEL_KZ person categorical [-1,0]\n", + "41 VERS_TYP person categorical [-1]\n", + "42 ZABEOTYP person categorical [-1,9]\n", + "47 KK_KUNDENTYP household categorical [-1]\n", + "52 GEBAEUDETYP building categorical [-1,0]\n", + "55 OST_WEST_KZ building categorical [-1]\n", + "57 CAMEO_DEUG_2015 microcell_rr4 categorical [-1,X]\n", + "58 CAMEO_DEU_2015 microcell_rr4 categorical [XX]" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Assess categorical variables: which are binary, which are multi-level, and\n", + "# which one needs to be re-encoded?\n", + "feat_info_cat = feat_info[(feat_info['type']=='categorical')]\n", + "feat_info_cat" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We pick the attribute column, which gives us the columns for our data.\n", + "\n", + "We need to remember to drop the columns from this list that we removed at the start of the project, as they were mostly missing values." + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n", + "18\n" + ] + } + ], + "source": [ + "categorical_cols = feat_info_cat['attribute'].tolist()\n", + "\n", + "drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "for i in drop_cols:\n", + " categorical_cols.remove(i)\n", + " \n", + "print(categorical_cols)\n", + "print(len(categorical_cols))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We will drop from this list the columns that contain just two values. **Note I am dropping them if the length of their unique values is equal to 2. This is because we know that we do not have any columns that have a length of two with non numeric values. This method would not extend to a case where we have 2 non-numeric values**" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ANREDE_KZ\n", + "Values: [1 2]\n", + "Length: 2\n", + "FINANZTYP\n", + "Values: [4 1 6 5 2 3]\n", + "Length: 6\n", + "GFK_URLAUBERTYP\n", + "Values: [ 10. 1. 5. 12. 9. 3. 8. 11. 4. 2. 7. 6. nan]\n", + "Length: 13\n", + "GREEN_AVANTGARDE\n", + "Values: [0 1]\n", + "Length: 2\n", + "LP_FAMILIE_GROB\n", + "Values: [ 2. 3. 1. nan 5. 4.]\n", + "Length: 6\n", + "LP_STATUS_FEIN\n", + "Values: [ 1. 2. 3. 9. 4. 10. 5. 8. 6. 7. nan]\n", + "Length: 11\n", + "LP_STATUS_GROB\n", + "Values: [ 1. 2. 4. 5. 3. nan]\n", + "Length: 6\n", + "NATIONALITAET_KZ\n", + "Values: [ nan 1. 3. 2.]\n", + "Length: 4\n", + "SHOPPER_TYP\n", + "Values: [ nan 3. 2. 1. 0.]\n", + "Length: 5\n", + "SOHO_KZ\n", + "Values: [ nan 1. 0.]\n", + "Length: 3\n", + "VERS_TYP\n", + "Values: [ nan 2. 1.]\n", + "Length: 3\n", + "ZABEOTYP\n", + "Values: [3 5 4 1 6 2]\n", + "Length: 6\n", + "GEBAEUDETYP\n", + "Values: [ nan 8. 1. 3. 2. 6. 4. 5.]\n", + "Length: 8\n", + "OST_WEST_KZ\n", + "Values: [nan 'W' 'O']\n", + "Length: 3\n", + "CAMEO_DEUG_2015\n", + "Values: [nan '8' '4' '2' '6' '1' '9' '5' '7' '3']\n", + "Length: 10\n", + "CAMEO_DEU_2015\n", + "Values: [nan '8A' '4C' '2A' '6B' '8C' '4A' '2D' '1A' '1E' '9D' '5C' '8B' '7A' '5D'\n", + " '9E' '9B' '1B' '3D' '4E' '4B' '3C' '5A' '7B' '9A' '6D' '6E' '2C' '7C' '9C'\n", + " '7D' '5E' '1D' '8D' '6C' '6A' '5B' '4D' '3A' '2B' '7E' '3B' '6F' '5F' '1C']\n", + "Length: 45\n", + "\n", + " Columns to reencode as dummies: ['CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n" + ] + } + ], + "source": [ + "# Re-encode categorical variable(s) to be kept in the analysis.\n", + "for i in categorical_cols:\n", + " print(f'{i}\\nValues: {azdias[i].unique()}\\nLength: {len(azdias[i].unique())}')\n", + " if len(azdias[i].unique()) == 2:\n", + " categorical_cols.remove(i)\n", + "print('\\n Columns to reencode as dummies:', categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "16" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": {}, + "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", + "
CJT_GESAMTTYPFINANZTYPGFK_URLAUBERTYPLP_FAMILIE_FEINLP_FAMILIE_GROBLP_STATUS_FEINLP_STATUS_GROBNATIONALITAET_KZSHOPPER_TYPSOHO_KZVERS_TYPZABEOTYPGEBAEUDETYPOST_WEST_KZCAMEO_DEUG_2015CAMEO_DEU_2015
02.0410.02.02.01.01.0NaNNaNNaNNaN3NaNNaNNaNNaN
15.0110.05.03.02.01.01.03.01.02.058.0W88A
23.0110.01.01.03.02.01.02.00.01.051.0W44C
32.061.0NaNNaN9.04.01.01.00.01.031.0W22A
45.055.010.05.03.02.01.02.00.02.041.0W66B
\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP FINANZTYP GFK_URLAUBERTYP LP_FAMILIE_FEIN \\\n", + "0 2.0 4 10.0 2.0 \n", + "1 5.0 1 10.0 5.0 \n", + "2 3.0 1 10.0 1.0 \n", + "3 2.0 6 1.0 NaN \n", + "4 5.0 5 5.0 10.0 \n", + "\n", + " LP_FAMILIE_GROB LP_STATUS_FEIN LP_STATUS_GROB NATIONALITAET_KZ \\\n", + "0 2.0 1.0 1.0 NaN \n", + "1 3.0 2.0 1.0 1.0 \n", + "2 1.0 3.0 2.0 1.0 \n", + "3 NaN 9.0 4.0 1.0 \n", + "4 5.0 3.0 2.0 1.0 \n", + "\n", + " SHOPPER_TYP SOHO_KZ VERS_TYP ZABEOTYP GEBAEUDETYP OST_WEST_KZ \\\n", + "0 NaN NaN NaN 3 NaN NaN \n", + "1 3.0 1.0 2.0 5 8.0 W \n", + "2 2.0 0.0 1.0 5 1.0 W \n", + "3 1.0 0.0 1.0 3 1.0 W \n", + "4 2.0 0.0 2.0 4 1.0 W \n", + "\n", + " CAMEO_DEUG_2015 CAMEO_DEU_2015 \n", + "0 NaN NaN \n", + "1 8 8A \n", + "2 4 4C \n", + "3 2 2A \n", + "4 6 6B " + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias[categorical_cols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "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", + "
CJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2FINANZTYP_3...CAMEO_DEU_2015_8ACAMEO_DEU_2015_8BCAMEO_DEU_2015_8CCAMEO_DEU_2015_8DCAMEO_DEU_2015_9ACAMEO_DEU_2015_9BCAMEO_DEU_2015_9CCAMEO_DEU_2015_9DCAMEO_DEU_2015_9ECAMEO_DEU_2015_nan
00100000000...0000000001
10000100100...1000000000
20010000100...0000000000
30100000000...0000000000
40000100000...0000000000
\n", + "

5 rows × 148 columns

\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 CJT_GESAMTTYP_4.0 \\\n", + "0 0 1 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 1 0 \n", + "3 0 1 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan FINANZTYP_1 \\\n", + "0 0 0 0 0 \n", + "1 1 0 0 1 \n", + "2 0 0 0 1 \n", + "3 0 0 0 0 \n", + "4 1 0 0 0 \n", + "\n", + " FINANZTYP_2 FINANZTYP_3 ... CAMEO_DEU_2015_8A \\\n", + "0 0 0 ... 0 \n", + "1 0 0 ... 1 \n", + "2 0 0 ... 0 \n", + "3 0 0 ... 0 \n", + "4 0 0 ... 0 \n", + "\n", + " CAMEO_DEU_2015_8B CAMEO_DEU_2015_8C CAMEO_DEU_2015_8D CAMEO_DEU_2015_9A \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_9B CAMEO_DEU_2015_9C CAMEO_DEU_2015_9D CAMEO_DEU_2015_9E \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_nan \n", + "0 1 \n", + "1 0 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 148 columns]" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias_cat_dummies = pd.get_dummies(azdias[categorical_cols].astype(str))\n", + "azdias_cat_dummies.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Discussion 1.2.1: Re-Encode Categorical Features\n", + "\n", + "\n", + "There were 18 of the type 'categorical' that we needed to work with. They were:\n", + "\n", + "['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n", + "\n", + "ANREDE_KZ was binary numerical so we were able to drop it.\n", + "\n", + "CAMEO_DEU_2015 had multiple strings as its values. We will use dummy variables on this.\n", + "\n", + "The remaining 16 columns were multi-level categoricals. I used pd.get_dummies() to convert these to dummy variables.\n", + "\n", + "These 16 become 148 columns of dummy variables. All we need to do now is to drop the columns from the original dataframe, and replace them with these.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.2.2: Engineer Mixed-Type Features\n", + "\n", + "There are a handful of features that are marked as \"mixed\" in the feature summary that require special treatment in order to be included in the analysis. There are two in particular that deserve attention; the handling of the rest are up to your own choices:\n", + "- \"PRAEGENDE_JUGENDJAHRE\" combines information on three dimensions: generation by decade, movement (mainstream vs. avantgarde), and nation (east vs. west). While there aren't enough levels to disentangle east from west, you should create two new variables to capture the other two dimensions: an interval-type variable for decade, and a binary variable for movement.\n", + "- \"CAMEO_INTL_2015\" combines information on two axes: wealth and life stage. Break up the two-digit codes by their 'tens'-place and 'ones'-place digits into two new ordinal variables (which, for the purposes of this project, is equivalent to just treating them as their raw numeric values).\n", + "- If you decide to keep or engineer new features around the other mixed-type features, make sure you note your steps in the Discussion section.\n", + "\n", + "Be sure to check `Data_Dictionary.md` for the details needed to finish these tasks." + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
15LP_LEBENSPHASE_FEINpersonmixed[0]
16LP_LEBENSPHASE_GROBpersonmixed[0]
22PRAEGENDE_JUGENDJAHREpersonmixed[-1,0]
56WOHNLAGEbuildingmixed[-1]
59CAMEO_INTL_2015microcell_rr4mixed[-1,XX]
64KBA05_BAUMAXmicrocell_rr3mixed[-1,0]
79PLZ8_BAUMAXmacrocell_plz8mixed[-1,0]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "15 LP_LEBENSPHASE_FEIN person mixed [0]\n", + "16 LP_LEBENSPHASE_GROB person mixed [0]\n", + "22 PRAEGENDE_JUGENDJAHRE person mixed [-1,0]\n", + "56 WOHNLAGE building mixed [-1]\n", + "59 CAMEO_INTL_2015 microcell_rr4 mixed [-1,XX]\n", + "64 KBA05_BAUMAX microcell_rr3 mixed [-1,0]\n", + "79 PLZ8_BAUMAX macrocell_plz8 mixed [-1,0]" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "feat_info_mixed = feat_info[(feat_info['type']=='mixed')]\n", + "feat_info_mixed" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['LP_LEBENSPHASE_FEIN', 'LP_LEBENSPHASE_GROB', 'PRAEGENDE_JUGENDJAHRE', 'WOHNLAGE', 'CAMEO_INTL_2015', 'KBA05_BAUMAX', 'PLZ8_BAUMAX']\n", + "7\n" + ] + } + ], + "source": [ + "mixed_cols = feat_info_mixed['attribute'].tolist()\n", + "\n", + "# drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "# for i in drop_cols:\n", + "# mixed_cols.remove(i)\n", + " \n", + "print(mixed_cols)\n", + "print(len(mixed_cols))" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [], + "source": [ + "def PRAEGENDE_JUGENDJAHRE_decade(value, **kwargs):\n", + " if (value == 1) or (value == 2):\n", + " return 40\n", + " elif (value == 3) or (value == 4):\n", + " return 50\n", + " elif (value == 5) or (value == 6) or (value == 7):\n", + " return 60\n", + " elif (value == 8) or (value == 9):\n", + " return 70\n", + " elif (value == 10) or (value == 11):\n", + " return 80\n", + " elif (value == 12) or (value == 13):\n", + " return 80\n", + " elif (value == 14) or (value == 15):\n", + " return 90\n", + " else:\n", + " return value" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 90.0\n", + "2 90.0\n", + "3 70.0\n", + "4 70.0\n", + "Name: PRAEGENDE_JUGENDJAHRE_decade, dtype: float64" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['PRAEGENDE_JUGENDJAHRE_decade'] = azdias.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_decade, axis=1)\n", + "azdias['PRAEGENDE_JUGENDJAHRE_decade'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [], + "source": [ + "def PRAEGENDE_JUGENDJAHRE_movement(value, **kwargs):\n", + " if (value == 1) or (value == 3) or (value == 5) or (value == 8) or (value == 10) or (value == 12) or (value == 14):\n", + " return 'mainstream'\n", + " elif (value == 2) or (value == 4) or (value == 6) or (value == 7) or (value == 9) or (value == 11) or (value == 13) or (value == 15):\n", + " return 'avantgarde'\n", + " else:\n", + " return value\n" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 mainstream\n", + "2 avantgarde\n", + "3 mainstream\n", + "4 mainstream\n", + "Name: PRAEGENDE_JUGENDJAHRE_movement, dtype: object" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['PRAEGENDE_JUGENDJAHRE_movement'] = azdias.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_movement, axis=1)\n", + "azdias['PRAEGENDE_JUGENDJAHRE_movement'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movement
0NaNNaN
190.0mainstream
290.0avantgarde
370.0mainstream
470.0mainstream
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_decade PRAEGENDE_JUGENDJAHRE_movement\n", + "0 NaN NaN\n", + "1 90.0 mainstream\n", + "2 90.0 avantgarde\n", + "3 70.0 mainstream\n", + "4 70.0 mainstream" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.iloc[0:5, -2:]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Similar process to the one above" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": {}, + "outputs": [], + "source": [ + "def CAMEO_INTL_2015_wealth(value, **kwargs):\n", + " if pd.isnull(value):\n", + " return value\n", + " else:\n", + " return value[0]\n", + "\n", + "def CAMEO_INTL_2015_life(value, **kwargs):\n", + " if pd.isnull(value):\n", + " return value\n", + " else:\n", + " return value[-1]" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 5\n", + "2 2\n", + "3 1\n", + "4 4\n", + "Name: CAMEO_INTL_2015_wealth, dtype: object" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['CAMEO_INTL_2015_wealth'] = azdias.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_wealth, axis=1)\n", + "azdias['CAMEO_INTL_2015_wealth'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 1\n", + "2 4\n", + "3 2\n", + "4 3\n", + "Name: CAMEO_INTL_2015_life, dtype: object" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['CAMEO_INTL_2015_life'] = azdias.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_life, axis=1)\n", + "azdias['CAMEO_INTL_2015_life'].head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Let's verify that we did it correctly:" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 51\n", + "2 24\n", + "3 12\n", + "4 43\n", + "Name: CAMEO_INTL_2015, dtype: object" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['CAMEO_INTL_2015'].iloc[0:5][:]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Let's create our dummy variables form these new columns" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movementPRAEGENDE_JUGENDJAHRE_decadeCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
0NaNNaNNaNNaN
1mainstream90.051
2avantgarde90.024
3mainstream70.012
4mainstream70.043
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement PRAEGENDE_JUGENDJAHRE_decade \\\n", + "0 NaN NaN \n", + "1 mainstream 90.0 \n", + "2 avantgarde 90.0 \n", + "3 mainstream 70.0 \n", + "4 mainstream 70.0 \n", + "\n", + " CAMEO_INTL_2015_wealth CAMEO_INTL_2015_life \n", + "0 NaN NaN \n", + "1 5 1 \n", + "2 2 4 \n", + "3 1 2 \n", + "4 4 3 " + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "newCols = ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']\n", + "azdias[newCols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movement_avantgardePRAEGENDE_JUGENDJAHRE_movement_mainstreamPRAEGENDE_JUGENDJAHRE_movement_nanPRAEGENDE_JUGENDJAHRE_decade_40.0PRAEGENDE_JUGENDJAHRE_decade_50.0PRAEGENDE_JUGENDJAHRE_decade_60.0PRAEGENDE_JUGENDJAHRE_decade_70.0PRAEGENDE_JUGENDJAHRE_decade_80.0PRAEGENDE_JUGENDJAHRE_decade_90.0PRAEGENDE_JUGENDJAHRE_decade_nan...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
00010000001...0001000001
10100000010...0010100000
21000000010...0000000100
30100001000...0000010000
40100001000...0100001000
\n", + "

5 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement_avantgarde \\\n", + "0 0 \n", + "1 0 \n", + "2 1 \n", + "3 0 \n", + "4 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_mainstream \\\n", + "0 0 \n", + "1 1 \n", + "2 0 \n", + "3 1 \n", + "4 1 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_nan PRAEGENDE_JUGENDJAHRE_decade_40.0 \\\n", + "0 1 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_50.0 PRAEGENDE_JUGENDJAHRE_decade_60.0 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_70.0 PRAEGENDE_JUGENDJAHRE_decade_80.0 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 1 0 \n", + "4 1 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_90.0 PRAEGENDE_JUGENDJAHRE_decade_nan \\\n", + "0 0 1 \n", + "1 1 0 \n", + "2 1 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " ... CAMEO_INTL_2015_wealth_3 \\\n", + "0 ... 0 \n", + "1 ... 0 \n", + "2 ... 0 \n", + "3 ... 0 \n", + "4 ... 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_4 CAMEO_INTL_2015_wealth_5 \\\n", + "0 0 0 \n", + "1 0 1 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 1 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_nan CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 \\\n", + "0 1 0 0 \n", + "1 0 1 0 \n", + "2 0 0 0 \n", + "3 0 0 1 \n", + "4 0 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_3 CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 \\\n", + "0 0 0 0 \n", + "1 0 0 0 \n", + "2 0 1 0 \n", + "3 0 0 0 \n", + "4 1 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_nan \n", + "0 1 \n", + "1 0 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 22 columns]" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias_mixed_dummies = pd.get_dummies(azdias[newCols].astype(str))\n", + "azdias_mixed_dummies.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Discussion 1.2.2: Engineer Mixed-Type Features\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting your findings and decisions regarding mixed-value features. Which ones did you keep, which did you drop, and what engineering steps did you perform?)\n", + "\n", + "I performed the following steps:\n", + "\n", + "* For the categorical data we ignore any binary numerical columns as they are fine as is.\n", + "* We converted the remaining categories to dummy variables\n", + "\n", + "* For the mixed data \n", + " * We looked at the PRAEGENDE_JUGENDJAHRE column\n", + " * We extracted the decade as a new column\n", + " * We extracted the movement as a new column\n", + " * We looked at CAMEO_INTL_2015 column\n", + " * We split the value into 2 single digits and put each one in a column\n", + " * We did a pd.get_dummies() on all of our new columns\n", + " \n", + "All that remains is to drop the columns in categorical_cols and mixed_cols and replace them with azdias_cat_dummies and azdias_mixed_dummies\n", + "\n", + "**For the sake of simplicity I will drop the remaining mixed columns and not do any further work on them**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.2.3: Complete Feature Selection\n", + "\n", + "In order to finish this step up, you need to make sure that your data frame now only has the columns that you want to keep. To summarize, the dataframe should consist of the following:\n", + "- All numeric, interval, and ordinal type columns from the original dataset.\n", + "- Binary categorical features (all numerically-encoded).\n", + "- Engineered features from other multi-level categorical features and mixed features.\n", + "\n", + "Make sure that for any new columns that you have engineered, that you've excluded the original columns from the final dataset. Otherwise, their values will interfere with the analysis later on the project. For example, you should not keep \"PRAEGENDE_JUGENDJAHRE\", since its values won't be useful for the algorithm: only the values derived from it in the engineered features you created should be retained. As a reminder, your data should only be from **the subset with few or no missing values**." + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_ABPRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movementCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
02.012.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.025.01525451...1.05.04.03.05.04.090.0mainstream51
\n", + "

2 rows × 83 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "0 2.0 1 2.0 3 \n", + "1 1.0 2 5.0 1 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER \\\n", + "0 4 3 5 5 \n", + "1 5 2 5 4 \n", + "\n", + " FINANZ_HAUSBAUER FINANZTYP ... PLZ8_BAUMAX PLZ8_HHZ \\\n", + "0 3 4 ... NaN NaN \n", + "1 5 1 ... 1.0 5.0 \n", + "\n", + " PLZ8_GBZ ARBEIT ORTSGR_KLS9 RELAT_AB PRAEGENDE_JUGENDJAHRE_decade \\\n", + "0 NaN NaN NaN NaN NaN \n", + "1 4.0 3.0 5.0 4.0 90.0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement CAMEO_INTL_2015_wealth \\\n", + "0 NaN NaN \n", + "1 mainstream 5 \n", + "\n", + " CAMEO_INTL_2015_life \n", + "0 NaN \n", + "1 1 \n", + "\n", + "[2 rows x 83 columns]" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# If there are other re-engineering tasks you need to perform, make sure you\n", + "# take care of them here. (Dealing with missing data will come in step 2.1.)\n", + "\n", + "azdias.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": { + "scrolled": true + }, + "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", + " \n", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.012.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.025.01525451...2.03.02.01.01.05.04.03.05.04.0
23.023.01412351...3.03.01.00.01.04.04.03.05.02.0
34.022.04252126...2.02.02.00.01.03.04.02.03.03.0
43.015.04341325...2.04.02.01.02.03.03.04.06.05.0
51.022.03152252...2.03.01.01.01.05.05.02.03.03.0
62.025.01515434...3.03.01.00.01.05.05.04.06.03.0
71.013.03341325...3.03.01.00.01.04.04.02.05.02.0
83.013.04424226...2.03.02.01.01.03.03.02.04.03.0
93.024.02423541...2.03.02.01.01.03.03.02.03.01.0
103.021.02253156...2.04.02.00.02.03.03.04.06.05.0
112.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
123.016.05342413...3.03.01.00.01.05.05.03.06.04.0
131.025.01435521...2.01.01.01.01.03.03.03.06.04.0
143.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
154.024.04151142...NaNNaNNaNNaNNaNNaNNaN4.08.05.0
161.021.04314513...3.03.01.00.01.03.04.01.02.01.0
172.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
182.026.02415411...2.03.02.01.01.03.03.03.04.03.0
193.013.05231315...2.04.02.01.02.05.04.04.06.03.0
202.024.04314513...NaNNaNNaNNaNNaNNaNNaN3.04.01.0
212.013.03412513...1.04.03.02.04.04.03.05.07.05.0
221.014.01535551...2.04.02.01.02.04.03.04.05.05.0
233.013.05332216...NaNNaNNaNNaNNaNNaNNaN3.06.02.0
243.026.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
251.013.03535434...2.02.00.00.01.04.05.03.02.05.0
263.013.05242313...NaNNaNNaNNaNNaNNaNNaN4.03.05.0
273.014.03341225...2.03.03.02.04.05.03.04.07.05.0
283.012.03243323...3.03.01.00.01.05.05.03.04.01.0
294.021.05152136...3.02.02.00.01.03.04.02.04.03.0
..................................................................
8911914.021.04151142...3.03.01.00.01.04.05.01.03.01.0
8911921.023.01525351...4.02.01.00.01.03.03.03.05.01.0
8911934.013.04151255...2.04.01.00.02.02.02.04.06.04.0
8911943.014.04342313...3.02.02.00.01.04.04.04.08.05.0
8911954.026.03151152...2.03.02.01.01.04.03.04.07.05.0
8911962.026.01525431...2.03.02.01.01.03.03.03.04.05.0
8911973.021.03241335...2.03.02.01.01.04.04.03.09.05.0
8911983.015.02534531...4.02.01.00.01.04.05.03.09.05.0
8911992.013.02523341...1.04.03.02.05.05.03.03.07.03.0
8912001.023.01535551...1.04.02.01.02.03.03.04.06.05.0
8912013.013.04232236...1.04.03.01.03.04.03.03.07.05.0
8912022.025.01412541...1.04.03.02.05.04.02.04.08.05.0
8912034.021.04151345...2.03.02.01.01.03.03.04.08.05.0
8912043.015.04344216...2.03.01.00.01.03.04.04.07.03.0
8912054.012.04243342...1.04.03.01.03.03.02.03.07.05.0
8912061.024.03424424...3.02.01.00.01.04.05.03.04.03.0
8912073.021.05151242...2.03.02.02.04.04.02.01.05.01.0
8912084.012.05242316...3.02.00.00.01.03.03.04.02.05.0
8912091.025.01423441...1.04.02.01.05.05.04.04.05.05.0
8912103.015.03342226...2.03.02.01.01.03.03.03.09.05.0
8912113.012.03243322...1.04.02.00.02.03.02.03.05.05.0
8912124.011.03151155...1.03.03.02.05.04.01.03.09.05.0
8912134.025.03335326...2.04.02.01.02.05.05.03.04.04.0
8912141.024.01523341...1.04.03.02.05.05.02.03.07.03.0
8912152.026.01524541...2.04.02.01.02.04.04.02.05.02.0
8912163.025.01425441...3.02.00.00.01.02.03.0NaNNaNNaN
8912172.014.03332236...1.03.03.02.04.05.03.04.06.05.0
8912182.024.02425431...4.02.00.00.01.03.04.02.02.03.0
8912191.013.01535551...1.04.03.01.05.01.01.04.07.05.0
8912204.011.04252156...3.03.01.00.01.04.04.03.04.05.0
\n", + "

891221 rows × 79 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "0 2.0 1 2.0 3 \n", + "1 1.0 2 5.0 1 \n", + "2 3.0 2 3.0 1 \n", + "3 4.0 2 2.0 4 \n", + "4 3.0 1 5.0 4 \n", + "5 1.0 2 2.0 3 \n", + "6 2.0 2 5.0 1 \n", + "7 1.0 1 3.0 3 \n", + "8 3.0 1 3.0 4 \n", + "9 3.0 2 4.0 2 \n", + "10 3.0 2 1.0 2 \n", + "11 2.0 1 6.0 3 \n", + "12 3.0 1 6.0 5 \n", + "13 1.0 2 5.0 1 \n", + "14 3.0 1 6.0 3 \n", + "15 4.0 2 4.0 4 \n", + "16 1.0 2 1.0 4 \n", + "17 2.0 1 6.0 3 \n", + "18 2.0 2 6.0 2 \n", + "19 3.0 1 3.0 5 \n", + "20 2.0 2 4.0 4 \n", + "21 2.0 1 3.0 3 \n", + "22 1.0 1 4.0 1 \n", + "23 3.0 1 3.0 5 \n", + "24 3.0 2 6.0 3 \n", + "25 1.0 1 3.0 3 \n", + "26 3.0 1 3.0 5 \n", + "27 3.0 1 4.0 3 \n", + "28 3.0 1 2.0 3 \n", + "29 4.0 2 1.0 5 \n", + "... ... ... ... ... \n", + "891191 4.0 2 1.0 4 \n", + "891192 1.0 2 3.0 1 \n", + "891193 4.0 1 3.0 4 \n", + "891194 3.0 1 4.0 4 \n", + "891195 4.0 2 6.0 3 \n", + "891196 2.0 2 6.0 1 \n", + "891197 3.0 2 1.0 3 \n", + "891198 3.0 1 5.0 2 \n", + "891199 2.0 1 3.0 2 \n", + "891200 1.0 2 3.0 1 \n", + "891201 3.0 1 3.0 4 \n", + "891202 2.0 2 5.0 1 \n", + "891203 4.0 2 1.0 4 \n", + "891204 3.0 1 5.0 4 \n", + "891205 4.0 1 2.0 4 \n", + "891206 1.0 2 4.0 3 \n", + "891207 3.0 2 1.0 5 \n", + "891208 4.0 1 2.0 5 \n", + "891209 1.0 2 5.0 1 \n", + "891210 3.0 1 5.0 3 \n", + "891211 3.0 1 2.0 3 \n", + "891212 4.0 1 1.0 3 \n", + "891213 4.0 2 5.0 3 \n", + "891214 1.0 2 4.0 1 \n", + "891215 2.0 2 6.0 1 \n", + "891216 3.0 2 5.0 1 \n", + "891217 2.0 1 4.0 3 \n", + "891218 2.0 2 4.0 2 \n", + "891219 1.0 1 3.0 1 \n", + "891220 4.0 1 1.0 4 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 4 3 5 \n", + "1 5 2 5 \n", + "2 4 1 2 \n", + "3 2 5 2 \n", + "4 3 4 1 \n", + "5 1 5 2 \n", + "6 5 1 5 \n", + "7 3 4 1 \n", + "8 4 2 4 \n", + "9 4 2 3 \n", + "10 2 5 3 \n", + "11 4 3 5 \n", + "12 3 4 2 \n", + "13 4 3 5 \n", + "14 4 3 5 \n", + "15 1 5 1 \n", + "16 3 1 4 \n", + "17 4 3 5 \n", + "18 4 1 5 \n", + "19 2 3 1 \n", + "20 3 1 4 \n", + "21 4 1 2 \n", + "22 5 3 5 \n", + "23 3 3 2 \n", + "24 4 3 5 \n", + "25 5 3 5 \n", + "26 2 4 2 \n", + "27 3 4 1 \n", + "28 2 4 3 \n", + "29 1 5 2 \n", + "... ... ... ... \n", + "891191 1 5 1 \n", + "891192 5 2 5 \n", + "891193 1 5 1 \n", + "891194 3 4 2 \n", + "891195 1 5 1 \n", + "891196 5 2 5 \n", + "891197 2 4 1 \n", + "891198 5 3 4 \n", + "891199 5 2 3 \n", + "891200 5 3 5 \n", + "891201 2 3 2 \n", + "891202 4 1 2 \n", + "891203 1 5 1 \n", + "891204 3 4 4 \n", + "891205 2 4 3 \n", + "891206 4 2 4 \n", + "891207 1 5 1 \n", + "891208 2 4 2 \n", + "891209 4 2 3 \n", + "891210 3 4 2 \n", + "891211 2 4 3 \n", + "891212 1 5 1 \n", + "891213 3 3 5 \n", + "891214 5 2 3 \n", + "891215 5 2 4 \n", + "891216 4 2 5 \n", + "891217 3 3 2 \n", + "891218 4 2 5 \n", + "891219 5 3 5 \n", + "891220 2 5 2 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER FINANZTYP ... \\\n", + "0 5 3 4 ... \n", + "1 4 5 1 ... \n", + "2 3 5 1 ... \n", + "3 1 2 6 ... \n", + "4 3 2 5 ... \n", + "5 2 5 2 ... \n", + "6 4 3 4 ... \n", + "7 3 2 5 ... \n", + "8 2 2 6 ... \n", + "9 5 4 1 ... \n", + "10 1 5 6 ... \n", + "11 5 3 4 ... \n", + "12 4 1 3 ... \n", + "13 5 2 1 ... \n", + "14 5 3 4 ... \n", + "15 1 4 2 ... \n", + "16 5 1 3 ... \n", + "17 5 3 4 ... \n", + "18 4 1 1 ... \n", + "19 3 1 5 ... \n", + "20 5 1 3 ... \n", + "21 5 1 3 ... \n", + "22 5 5 1 ... \n", + "23 2 1 6 ... \n", + "24 5 3 4 ... \n", + "25 4 3 4 ... \n", + "26 3 1 3 ... \n", + "27 2 2 5 ... \n", + "28 3 2 3 ... \n", + "29 1 3 6 ... \n", + "... ... ... ... ... \n", + "891191 1 4 2 ... \n", + "891192 3 5 1 ... \n", + "891193 2 5 5 ... \n", + "891194 3 1 3 ... \n", + "891195 1 5 2 ... \n", + "891196 4 3 1 ... \n", + "891197 3 3 5 ... \n", + "891198 5 3 1 ... \n", + "891199 3 4 1 ... \n", + "891200 5 5 1 ... \n", + "891201 2 3 6 ... \n", + "891202 5 4 1 ... \n", + "891203 3 4 5 ... \n", + "891204 2 1 6 ... \n", + "891205 3 4 2 ... \n", + "891206 4 2 4 ... \n", + "891207 2 4 2 ... \n", + "891208 3 1 6 ... \n", + "891209 4 4 1 ... \n", + "891210 2 2 6 ... \n", + "891211 3 2 2 ... \n", + "891212 1 5 5 ... \n", + "891213 3 2 6 ... \n", + "891214 3 4 1 ... \n", + "891215 5 4 1 ... \n", + "891216 4 4 1 ... \n", + "891217 2 3 6 ... \n", + "891218 4 3 1 ... \n", + "891219 5 5 1 ... \n", + "891220 1 5 6 ... \n", + "\n", + " PLZ8_ANTG1 PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 2.0 3.0 2.0 1.0 1.0 5.0 \n", + "2 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "3 2.0 2.0 2.0 0.0 1.0 3.0 \n", + "4 2.0 4.0 2.0 1.0 2.0 3.0 \n", + "5 2.0 3.0 1.0 1.0 1.0 5.0 \n", + "6 3.0 3.0 1.0 0.0 1.0 5.0 \n", + "7 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "8 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "9 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "10 2.0 4.0 2.0 0.0 2.0 3.0 \n", + "11 NaN NaN NaN NaN NaN NaN \n", + "12 3.0 3.0 1.0 0.0 1.0 5.0 \n", + "13 2.0 1.0 1.0 1.0 1.0 3.0 \n", + "14 NaN NaN NaN NaN NaN NaN \n", + "15 NaN NaN NaN NaN NaN NaN \n", + "16 3.0 3.0 1.0 0.0 1.0 3.0 \n", + "17 NaN NaN NaN NaN NaN NaN \n", + "18 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "19 2.0 4.0 2.0 1.0 2.0 5.0 \n", + "20 NaN NaN NaN NaN NaN NaN \n", + "21 1.0 4.0 3.0 2.0 4.0 4.0 \n", + "22 2.0 4.0 2.0 1.0 2.0 4.0 \n", + "23 NaN NaN NaN NaN NaN NaN \n", + "24 NaN NaN NaN NaN NaN NaN \n", + "25 2.0 2.0 0.0 0.0 1.0 4.0 \n", + "26 NaN NaN NaN NaN NaN NaN \n", + "27 2.0 3.0 3.0 2.0 4.0 5.0 \n", + "28 3.0 3.0 1.0 0.0 1.0 5.0 \n", + "29 3.0 2.0 2.0 0.0 1.0 3.0 \n", + "... ... ... ... ... ... ... \n", + "891191 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "891192 4.0 2.0 1.0 0.0 1.0 3.0 \n", + "891193 2.0 4.0 1.0 0.0 2.0 2.0 \n", + "891194 3.0 2.0 2.0 0.0 1.0 4.0 \n", + "891195 2.0 3.0 2.0 1.0 1.0 4.0 \n", + "891196 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "891197 2.0 3.0 2.0 1.0 1.0 4.0 \n", + "891198 4.0 2.0 1.0 0.0 1.0 4.0 \n", + "891199 1.0 4.0 3.0 2.0 5.0 5.0 \n", + "891200 1.0 4.0 2.0 1.0 2.0 3.0 \n", + "891201 1.0 4.0 3.0 1.0 3.0 4.0 \n", + "891202 1.0 4.0 3.0 2.0 5.0 4.0 \n", + "891203 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "891204 2.0 3.0 1.0 0.0 1.0 3.0 \n", + "891205 1.0 4.0 3.0 1.0 3.0 3.0 \n", + "891206 3.0 2.0 1.0 0.0 1.0 4.0 \n", + "891207 2.0 3.0 2.0 2.0 4.0 4.0 \n", + "891208 3.0 2.0 0.0 0.0 1.0 3.0 \n", + "891209 1.0 4.0 2.0 1.0 5.0 5.0 \n", + "891210 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "891211 1.0 4.0 2.0 0.0 2.0 3.0 \n", + "891212 1.0 3.0 3.0 2.0 5.0 4.0 \n", + "891213 2.0 4.0 2.0 1.0 2.0 5.0 \n", + "891214 1.0 4.0 3.0 2.0 5.0 5.0 \n", + "891215 2.0 4.0 2.0 1.0 2.0 4.0 \n", + "891216 3.0 2.0 0.0 0.0 1.0 2.0 \n", + "891217 1.0 3.0 3.0 2.0 4.0 5.0 \n", + "891218 4.0 2.0 0.0 0.0 1.0 3.0 \n", + "891219 1.0 4.0 3.0 1.0 5.0 1.0 \n", + "891220 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "\n", + " PLZ8_GBZ ARBEIT ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN NaN NaN \n", + "1 4.0 3.0 5.0 4.0 \n", + "2 4.0 3.0 5.0 2.0 \n", + "3 4.0 2.0 3.0 3.0 \n", + "4 3.0 4.0 6.0 5.0 \n", + "5 5.0 2.0 3.0 3.0 \n", + "6 5.0 4.0 6.0 3.0 \n", + "7 4.0 2.0 5.0 2.0 \n", + "8 3.0 2.0 4.0 3.0 \n", + "9 3.0 2.0 3.0 1.0 \n", + "10 3.0 4.0 6.0 5.0 \n", + "11 NaN NaN NaN NaN \n", + "12 5.0 3.0 6.0 4.0 \n", + "13 3.0 3.0 6.0 4.0 \n", + "14 NaN NaN NaN NaN \n", + "15 NaN 4.0 8.0 5.0 \n", + "16 4.0 1.0 2.0 1.0 \n", + "17 NaN NaN NaN NaN \n", + "18 3.0 3.0 4.0 3.0 \n", + "19 4.0 4.0 6.0 3.0 \n", + "20 NaN 3.0 4.0 1.0 \n", + "21 3.0 5.0 7.0 5.0 \n", + "22 3.0 4.0 5.0 5.0 \n", + "23 NaN 3.0 6.0 2.0 \n", + "24 NaN NaN NaN NaN \n", + "25 5.0 3.0 2.0 5.0 \n", + "26 NaN 4.0 3.0 5.0 \n", + "27 3.0 4.0 7.0 5.0 \n", + "28 5.0 3.0 4.0 1.0 \n", + "29 4.0 2.0 4.0 3.0 \n", + "... ... ... ... ... \n", + "891191 5.0 1.0 3.0 1.0 \n", + "891192 3.0 3.0 5.0 1.0 \n", + "891193 2.0 4.0 6.0 4.0 \n", + "891194 4.0 4.0 8.0 5.0 \n", + "891195 3.0 4.0 7.0 5.0 \n", + "891196 3.0 3.0 4.0 5.0 \n", + "891197 4.0 3.0 9.0 5.0 \n", + "891198 5.0 3.0 9.0 5.0 \n", + "891199 3.0 3.0 7.0 3.0 \n", + "891200 3.0 4.0 6.0 5.0 \n", + "891201 3.0 3.0 7.0 5.0 \n", + "891202 2.0 4.0 8.0 5.0 \n", + "891203 3.0 4.0 8.0 5.0 \n", + "891204 4.0 4.0 7.0 3.0 \n", + "891205 2.0 3.0 7.0 5.0 \n", + "891206 5.0 3.0 4.0 3.0 \n", + "891207 2.0 1.0 5.0 1.0 \n", + "891208 3.0 4.0 2.0 5.0 \n", + "891209 4.0 4.0 5.0 5.0 \n", + "891210 3.0 3.0 9.0 5.0 \n", + "891211 2.0 3.0 5.0 5.0 \n", + "891212 1.0 3.0 9.0 5.0 \n", + "891213 5.0 3.0 4.0 4.0 \n", + "891214 2.0 3.0 7.0 3.0 \n", + "891215 4.0 2.0 5.0 2.0 \n", + "891216 3.0 NaN NaN NaN \n", + "891217 3.0 4.0 6.0 5.0 \n", + "891218 4.0 2.0 2.0 3.0 \n", + "891219 1.0 4.0 7.0 5.0 \n", + "891220 4.0 3.0 4.0 5.0 \n", + "\n", + "[891221 rows x 79 columns]" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We need to drop ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',\n", + " 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',\n", + " 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "79" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(azdias.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "16\n", + "7\n", + "\n", + "148\n", + "22\n" + ] + } + ], + "source": [ + "print(len(categorical_cols))\n", + "print(len(mixed_cols))\n", + "print()\n", + "print(len(azdias_cat_dummies.columns))\n", + "print(len(azdias_mixed_dummies.columns))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have 79 cols which is what we started with after we dropped the mostly empty cols.\n", + "\n", + "We need to do the following:\n", + "\n", + "* Drop categorical_cols and replace with adzias_cat_dummies\n", + "* Drop mixed_cols and replace with azdias_mixed_dummies\n", + "\n", + "We know we need to drop 16+6 = 22 columns from azdias (It's 6 because we dropped one of these right at the start)\n", + "\n", + "We know we need to add 148+22 = 170 columns to azdias\n", + "\n", + "We know we will end up with 79-22+170=227 columns at the end" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": {}, + "outputs": [], + "source": [ + "mixed_cols.remove('KBA05_BAUMAX')" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['LP_LEBENSPHASE_FEIN',\n", + " 'LP_LEBENSPHASE_GROB',\n", + " 'PRAEGENDE_JUGENDJAHRE',\n", + " 'WOHNLAGE',\n", + " 'CAMEO_INTL_2015',\n", + " 'PLZ8_BAUMAX']" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mixed_cols" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(categorical_cols, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(mixed_cols, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.013435530NaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.0215254503.0...963.02.03.02.01.05.04.03.05.04.0
\n", + "

2 rows × 57 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 2.0 1 3 4 \n", + "1 1.0 2 1 5 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 3 5 5 3 \n", + "1 2 5 4 5 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 0 NaN ... NaN NaN \n", + "1 0 3.0 ... 963.0 2.0 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 3.0 2.0 1.0 5.0 4.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN \n", + "1 5.0 4.0 \n", + "\n", + "[2 rows x 57 columns]" + ] + }, + "execution_count": 71, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp = azdias\n", + "azdiastemp.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "azdiastemp = azdiastemp.join(azdias_cat_dummies)" + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp = azdiastemp.join(azdias_mixed_dummies)" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
02.013435530NaN...0001000001
11.0215254503.0...0010100000
23.0214123513.0...0000000100
34.0242521202.0...0000010000
43.0143413203.0...0100001000
\n", + "

5 rows × 227 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 2.0 1 3 4 \n", + "1 1.0 2 1 5 \n", + "2 3.0 2 1 4 \n", + "3 4.0 2 4 2 \n", + "4 3.0 1 4 3 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 3 5 5 3 \n", + "1 2 5 4 5 \n", + "2 1 2 3 5 \n", + "3 5 2 1 2 \n", + "4 4 1 3 2 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... \\\n", + "0 0 NaN ... \n", + "1 0 3.0 ... \n", + "2 1 3.0 ... \n", + "3 0 2.0 ... \n", + "4 0 3.0 ... \n", + "\n", + " CAMEO_INTL_2015_wealth_3 CAMEO_INTL_2015_wealth_4 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 1 \n", + "\n", + " CAMEO_INTL_2015_wealth_5 CAMEO_INTL_2015_wealth_nan \\\n", + "0 0 1 \n", + "1 1 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 CAMEO_INTL_2015_life_3 \\\n", + "0 0 0 0 \n", + "1 1 0 0 \n", + "2 0 0 0 \n", + "3 0 1 0 \n", + "4 0 0 1 \n", + "\n", + " CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 CAMEO_INTL_2015_life_nan \n", + "0 0 0 1 \n", + "1 0 0 0 \n", + "2 1 0 0 \n", + "3 0 0 0 \n", + "4 0 0 0 \n", + "\n", + "[5 rows x 227 columns]" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "We have 227 cols as expected" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 1.3: Create a Cleaning Function\n", + "\n", + "Even though you've finished cleaning up the general population demographics data, it's important to look ahead to the future and realize that you'll need to perform the same cleaning steps on the customer demographics data. In this substep, complete the function below to execute the main feature selection, encoding, and re-engineering steps you performed above. Then, when it comes to looking at the customer data in Step 3, you can just run this function on that DataFrame to get the trimmed dataset in a single step." + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "metadata": {}, + "outputs": [], + "source": [ + "def clean_data(df):\n", + " \"\"\"\n", + " Perform feature trimming, re-encoding, and engineering for demographics\n", + " data\n", + " \n", + " INPUT: Demographics DataFrame\n", + " OUTPUT: Trimmed and cleaned demographics DataFrame\n", + " \"\"\"\n", + " \n", + " # Put in code here to execute all main cleaning steps:\n", + " # convert missing value codes into NaNs, ...\n", + " \n", + " \n", + " # remove selected columns and rows, ...\n", + "\n", + " \n", + " # select, re-encode, and engineer column values.\n", + "\n", + " \n", + " # Return the cleaned dataframe.\n", + " \n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Step 2: Feature Transformation\n", + "\n", + "### Step 2.1: Apply Feature Scaling\n", + "\n", + "Before we apply dimensionality reduction techniques to the data, we need to perform feature scaling so that the principal component vectors are not influenced by the natural differences in scale for features. Starting from this part of the project, you'll want to keep an eye on the [API reference page for sklearn](http://scikit-learn.org/stable/modules/classes.html) to help you navigate to all of the classes and functions that you'll need. In this substep, you'll need to check the following:\n", + "\n", + "- sklearn requires that data not have missing values in order for its estimators to work properly. So, before applying the scaler to your data, make sure that you've cleaned the DataFrame of the remaining missing values. This can be as simple as just removing all data points with missing data, or applying an [Imputer](http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.Imputer.html) to replace all missing values. You might also try a more complicated procedure where you temporarily remove missing values in order to compute the scaling parameters before re-introducing those missing values and applying imputation. Think about how much missing data you have and what possible effects each approach might have on your analysis, and justify your decision in the discussion section below.\n", + "- For the actual scaling function, a [StandardScaler](http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.StandardScaler.html) instance is suggested, scaling each feature to mean 0 and standard deviation 1.\n", + "- For these classes, you can make use of the `.fit_transform()` method to both fit a procedure to the data as well as apply the transformation to the data at the same time. Don't forget to keep the fit sklearn objects handy, since you'll be applying them to the customer demographics data towards the end of the project." + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "metadata": {}, + "outputs": [], + "source": [ + "# If you've not yet cleaned the dataset of all NaN values, then investigate and\n", + "# do that now.\n", + "\n", + "# from sklearn.impute import SimpleImputer\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "To keep things simple I will drop any row with a null value. As long as we know that our final result may suffer because of the lack of information I am happy to do this for the sake of the project. In reality I would spend more time using an Imputer (which isn't a simple thing to do if you want to do it properly), or using another ML algorithm to predict the values we are missing." + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "259095" + ] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp.shape[0] - azdiastemp.dropna().shape[0]\n" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa = azdiastemp.dropna()" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 227)" + ] + }, + "execution_count": 79, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will lose 259,095 (30%) of our rows by dropping null values" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "As we encoded our features from before into dummy variables, we do not need to scale these now. These are contained in the lists azdias_cat_dummies and azdias_mixed_dummies. In addition we don't need to scale GREEN_AVANTGARDE as it is a binary column with 1,0. We do need to scale ANREDE_KZ, as it is not a binary numbered value." + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(891221, 227)" + ] + }, + "execution_count": 80, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp.shape" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop(azdias_cat_dummies.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop(azdias_mixed_dummies.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop('GREEN_AVANTGARDE', axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERHEALTH_TYPRETOURTYP_BK_S...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
11.021525453.01.0...963.02.03.02.01.05.04.03.05.04.0
23.021412353.03.0...712.03.03.01.00.04.04.03.05.02.0
43.014341323.05.0...435.02.04.02.01.03.03.04.06.05.0
51.023152253.03.0...1300.02.03.01.01.05.05.02.03.03.0
\n", + "

4 rows × 56 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "1 1.0 2 1 5 \n", + "2 3.0 2 1 4 \n", + "4 3.0 1 4 3 \n", + "5 1.0 2 3 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "1 2 5 4 5 \n", + "2 1 2 3 5 \n", + "4 4 1 3 2 \n", + "5 5 2 2 5 \n", + "\n", + " HEALTH_TYP RETOURTYP_BK_S ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "1 3.0 1.0 ... 963.0 2.0 \n", + "2 3.0 3.0 ... 712.0 3.0 \n", + "4 3.0 5.0 ... 435.0 2.0 \n", + "5 3.0 3.0 ... 1300.0 2.0 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "1 3.0 2.0 1.0 5.0 4.0 3.0 \n", + "2 3.0 1.0 0.0 4.0 4.0 3.0 \n", + "4 4.0 2.0 1.0 3.0 3.0 4.0 \n", + "5 3.0 1.0 1.0 5.0 5.0 2.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "1 5.0 4.0 \n", + "2 5.0 2.0 \n", + "4 6.0 5.0 \n", + "5 3.0 3.0 \n", + "\n", + "[4 rows x 56 columns]" + ] + }, + "execution_count": 84, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.head(4)" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.preprocessing import StandardScaler\n", + "\n", + "scaler = StandardScaler()" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "StandardScaler(copy=True, with_mean=True, with_std=True)" + ] + }, + "execution_count": 86, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "scaler.fit(azdiastemp_noNa)" + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa_scaled = pd.DataFrame(scaler.transform(azdiastemp_noNa), columns=azdiastemp_noNa.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 88, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_scaled.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 56)" + ] + }, + "execution_count": 89, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_scaled.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 56)" + ] + }, + "execution_count": 90, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 91, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa = azdiastemp.dropna()" + ] + }, + { + "cell_type": "code", + "execution_count": 92, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 227)" + ] + }, + "execution_count": 92, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 93, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop(azdiastemp_noNa_scaled.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 94, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 94, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 95, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Int64Index([ 1, 2, 4, 5, 6, 7, 8, 9,\n", + " 10, 19,\n", + " ...\n", + " 891207, 891209, 891210, 891211, 891212, 891213, 891214, 891215,\n", + " 891219, 891220],\n", + " dtype='int64', length=632126)" + ] + }, + "execution_count": 95, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.index" + ] + }, + { + "cell_type": "code", + "execution_count": 96, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(632126, 171)\n", + "(632126, 56)\n" + ] + } + ], + "source": [ + "print(azdiastemp_noNa.shape)\n", + "print(azdiastemp_noNa_scaled.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 97, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa_final = pd.merge(azdiastemp_noNa.reset_index(), azdiastemp_noNa_scaled.reset_index(), right_index=True, left_index=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 98, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 98, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_final.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 99, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa_final.drop(['index_x', 'index_y'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 100, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(632126, 227)\n" + ] + }, + { + "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", + "
GREEN_AVANTGARDECJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
00000010010...1.057812-0.2310610.1813780.372030.3814591.4402750.586011-0.203820-0.1719750.655880
11001000010...0.3028980.7917000.181378-0.64373-0.9843450.4008630.586011-0.203820-0.171975-0.824992
20000010000...-0.530214-0.2310611.2707640.372030.381459-0.638548-0.3118340.8075280.2635721.396317
30010000001...2.071381-0.2310610.181378-0.643730.3814591.4402751.483855-1.215167-1.043069-0.084556
40000010000...0.7690800.7917000.181378-0.64373-0.9843451.4402751.4838550.8075280.263572-0.084556
50001000000...0.4412490.7917000.181378-0.64373-0.9843450.4008630.586011-1.215167-0.171975-0.824992
61001000000...-0.301635-0.2310610.1813780.372030.381459-0.638548-0.311834-1.215167-0.607522-0.084556
71000100010...-0.244490-0.2310610.1813780.372030.381459-0.638548-0.311834-1.215167-1.043069-1.565428
80100000000...-0.563298-0.2310611.2707640.37203-0.984345-0.638548-0.3118340.8075280.2635721.396317
91001000000...0.029204-0.2310611.2707640.372030.3814591.4402750.5860110.8075280.263572-0.084556
\n", + "

10 rows × 227 columns

\n", + "
" + ], + "text/plain": [ + " GREEN_AVANTGARDE CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 \\\n", + "0 0 0 0 0 \n", + "1 1 0 0 1 \n", + "2 0 0 0 0 \n", + "3 0 0 1 0 \n", + "4 0 0 0 0 \n", + "5 0 0 0 1 \n", + "6 1 0 0 1 \n", + "7 1 0 0 0 \n", + "8 0 1 0 0 \n", + "9 1 0 0 1 \n", + "\n", + " CJT_GESAMTTYP_4.0 CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan \\\n", + "0 0 1 0 0 \n", + "1 0 0 0 0 \n", + "2 0 1 0 0 \n", + "3 0 0 0 0 \n", + "4 0 1 0 0 \n", + "5 0 0 0 0 \n", + "6 0 0 0 0 \n", + "7 1 0 0 0 \n", + "8 0 0 0 0 \n", + "9 0 0 0 0 \n", + "\n", + " FINANZTYP_1 FINANZTYP_2 ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 1 0 ... 1.057812 -0.231061 \n", + "1 1 0 ... 0.302898 0.791700 \n", + "2 0 0 ... -0.530214 -0.231061 \n", + "3 0 1 ... 2.071381 -0.231061 \n", + "4 0 0 ... 0.769080 0.791700 \n", + "5 0 0 ... 0.441249 0.791700 \n", + "6 0 0 ... -0.301635 -0.231061 \n", + "7 1 0 ... -0.244490 -0.231061 \n", + "8 0 0 ... -0.563298 -0.231061 \n", + "9 0 0 ... 0.029204 -0.231061 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 0.181378 0.37203 0.381459 1.440275 0.586011 -0.203820 \n", + "1 0.181378 -0.64373 -0.984345 0.400863 0.586011 -0.203820 \n", + "2 1.270764 0.37203 0.381459 -0.638548 -0.311834 0.807528 \n", + "3 0.181378 -0.64373 0.381459 1.440275 1.483855 -1.215167 \n", + "4 0.181378 -0.64373 -0.984345 1.440275 1.483855 0.807528 \n", + "5 0.181378 -0.64373 -0.984345 0.400863 0.586011 -1.215167 \n", + "6 0.181378 0.37203 0.381459 -0.638548 -0.311834 -1.215167 \n", + "7 0.181378 0.37203 0.381459 -0.638548 -0.311834 -1.215167 \n", + "8 1.270764 0.37203 -0.984345 -0.638548 -0.311834 0.807528 \n", + "9 1.270764 0.37203 0.381459 1.440275 0.586011 0.807528 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 -0.171975 0.655880 \n", + "1 -0.171975 -0.824992 \n", + "2 0.263572 1.396317 \n", + "3 -1.043069 -0.084556 \n", + "4 0.263572 -0.084556 \n", + "5 -0.171975 -0.824992 \n", + "6 -0.607522 -0.084556 \n", + "7 -1.043069 -1.565428 \n", + "8 0.263572 1.396317 \n", + "9 0.263572 -0.084556 \n", + "\n", + "[10 rows x 227 columns]" + ] + }, + "execution_count": 100, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(azdiastemp_noNa_final.shape)\n", + "azdiastemp_noNa_final.head(10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 2.1: Apply Feature Scaling\n", + "\n", + "My process has been explained above but we can recap here\n", + "\n", + "The idea was:\n", + "\n", + "* Filter out columns that had been transformed into dummy variables\n", + "* Apply scaling to the remaining columns\n", + "* Join everything together under azdiastemp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 2.2: Perform Dimensionality Reduction\n", + "\n", + "On your scaled data, you are now ready to apply dimensionality reduction techniques.\n", + "\n", + "- Use sklearn's [PCA](http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html) class to apply principal component analysis on the data, thus finding the vectors of maximal variance in the data. To start, you should not set any parameters (so all components are computed) or set a number of components that is at least half the number of features (so there's enough features to see the general trend in variability).\n", + "- Check out the ratio of variance explained by each principal component as well as the cumulative variance explained. Try plotting the cumulative or sequential values using matplotlib's [`plot()`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.plot.html) function. Based on what you find, select a value for the number of transformed features you'll retain for the clustering part of the project.\n", + "- Once you've made a choice for the number of components to keep, make sure you re-fit a PCA instance to perform the decided-on transformation." + ] + }, + { + "cell_type": "code", + "execution_count": 101, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 101, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_final.isnull().values.any()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Reusing some of the code from the videos here, really good way to plot the pca variance!" + ] + }, + { + "cell_type": "code", + "execution_count": 102, + "metadata": {}, + "outputs": [], + "source": [ + "# Apply PCA to the data.\n", + "from sklearn.decomposition import PCA\n", + "\n", + "def do_pca(n_components, data):\n", + " '''\n", + " Transforms data using PCA to create n_components, and provides back the results of the\n", + " transformation.\n", + "\n", + " INPUT: n_components - int - the number of principal components to create\n", + " data - the data you would like to transform\n", + "\n", + " OUTPUT: pca - the pca object created after fitting the data\n", + " X_pca - the transformed X matrix with new number of components\n", + " '''\n", + "# X = StandardScaler().fit_transform(data)\n", + " pca = PCA(n_components)\n", + "# X_pca = pca.fit_transform(X)\n", + " X_pca = pca.fit_transform(data)\n", + " return pca, X_pca\n" + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "metadata": {}, + "outputs": [], + "source": [ + "pca, df_pca = do_pca(50, azdiastemp_noNa_final)" + ] + }, + { + "cell_type": "code", + "execution_count": 104, + "metadata": {}, + "outputs": [], + "source": [ + "def scree_plot(pca):\n", + " '''\n", + " Creates a scree plot associated with the principal components\n", + "\n", + " INPUT: pca - the result of instantian of PCA in scikit learn\n", + "\n", + " OUTPUT:\n", + " None\n", + " '''\n", + " num_components=len(pca.explained_variance_ratio_)\n", + " ind = np.arange(num_components)\n", + " vals = pca.explained_variance_ratio_\n", + "\n", + " plt.figure(figsize=(10, 6))\n", + " ax = plt.subplot(111)\n", + " cumvals = np.cumsum(vals)\n", + " ax.bar(ind, vals)\n", + " ax.plot(ind, cumvals)\n", + " for i in range(num_components):\n", + " ax.annotate(r\"%s%%\" % ((str(vals[i]*100)[:4])), (ind[i]+0.2, vals[i]), va=\"bottom\", ha=\"center\", fontsize=12)\n", + "\n", + " ax.xaxis.set_tick_params(width=0)\n", + " ax.yaxis.set_tick_params(width=2, length=12)\n", + "\n", + " ax.set_xlabel(\"Principal Component\")\n", + " ax.set_ylabel(\"Variance Explained (%)\")\n", + " plt.title('Explained Variance Per Principal Component')\n" + ] + }, + { + "cell_type": "code", + "execution_count": 105, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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ISGh9bXNLY4F+aWcPNVb7/7FF18kMTGRQw89dIfvtXz5cj744IPWiw+ys7N57733SEhIYOXKlQwdOjT4JywiIiLdilrafG655RaioqK47bbbePzxx4mKiuKWW25hzZo1zJw5k7i4OMaPH09kZCT/+c9/Wl934YUXcsY551Pd0Nw6nu2RRx7h7LPPbm2V295FF13E3XffTXh4OAB/+MMfuOeeexg3bhy/+c1vGDx4cPBPWERERLoV276bryeYNm2ay8nJ6bT3e+yzXK57eRlzfn0oGcnRnfa+IiIi0v2Z2Tzn3LSd7aeWtg4wL6+UgXGRpCdFhboUERER6aEU2nbDvffeS2TqSCyiD7ETjuClhesprqxnyNl3EpU1mfCoOAYMGMCpp55KUVFRu8d66qmnGDNmDDExMQwfPpw5c+YAUFBQwIwZM0hOTuaKK67Y5jUzZ86kM1sSRUREJPQU2nbDkCFDSNjvNGInHLnN8y11VcTuPZO0C/9NXl4ecXFxnHfeeW0e5+233+aqq67ioYceorKyko8++ohhw4YB3ji3c845h7Vr1/LSSy+1hrSnn36aYcOGtU5DIiIiIr2Drh7dDSeddBK//DKS+g2raK78dnWEqOHfBqno6GguvvhiDj744DaPc8MNN3D99dczY8YMANLS0lq3rV27lssuu4yEhAT22Wcf1qxZw6hRo7jtttt4//33g3BWIiIi0pWppS2IPvroI8aNG7fDbc3NzeTk5LBp0yZGjBhBeno6F198ceti9ePHj+ftt9+mrKyMnJwcxo4dy3XXXcfll19OYmJiZ56GiIiIdAEKbUGyePFibrrpJv70pz/tcPvGjRtpbGzkueeeY86cOSxcuJAFCxZwyy23AHDNNdcwZ84cDj74YC666CIaGxtZvHgxs2fP5owzzuCggw7i3nvv7cxTEhERkRBS92gQNJauZ9asn3L33Xdz4IEH7nCfqCjvStNLLrmE1NRUAH75y19yyy23cOutt5KcnMzTTz8NQEtLCwcddBB///vfue222xg/fjwPP/wwU6ZM4bDDDmPs2LGdc2IiIiISMmpp62BN5cVsfOparrvuOs4666w290tKSiI9Pb3NCXj9/eMf/2DGjBmMHz++dcmrvn37MmHCBJYuXdqR5YuIiEgXpdC2G5qamnBNDeCawbXgmhpwLc00VZaw8anfEDflWC68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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "scree_plot(pca)" + ] + }, + { + "cell_type": "code", + "execution_count": 106, + "metadata": {}, + "outputs": [], + "source": [ + "# Re-apply PCA to the data while selecting for number of components to retain.\n", + "import copy\n", + "\n", + "pca, df_pca = do_pca(30, azdiastemp_noNa_final)\n", + "\n", + "df_pca_orig = copy.deepcopy(df_pca)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 2.2: Perform Dimensionality Reduction\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting your findings and decisions regarding dimensionality reduction. How many principal components / transformed features are you retaining for the next step of the analysis?)\n", + "\n", + "Reusing the code from the videos, we can see that the first 3 features account for around 35% of the variance of the data. We see that this variance quickly falls off as we have more and more features. From the above graph I think 30 features seems a fair number of features to retain, as this should account for around 80% of the variance in the data." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 2.3: Interpret Principal Components\n", + "\n", + "Now that we have our transformed principal components, it's a nice idea to check out the weight of each variable on the first few components to see if they can be interpreted in some fashion.\n", + "\n", + "As a reminder, each principal component is a unit vector that points in the direction of highest variance (after accounting for the variance captured by earlier principal components). The further a weight is from zero, the more the principal component is in the direction of the corresponding feature. If two features have large weights of the same sign (both positive or both negative), then increases in one tend expect to be associated with increases in the other. To contrast, features with different signs can be expected to show a negative correlation: increases in one variable should result in a decrease in the other.\n", + "\n", + "- To investigate the features, you should map each weight to their corresponding feature name, then sort the features according to weight. The most interesting features for each principal component, then, will be those at the beginning and end of the sorted list. Use the data dictionary document to help you understand these most prominent features, their relationships, and what a positive or negative value on the principal component might indicate.\n", + "- You should investigate and interpret feature associations from the first three principal components in this substep. To help facilitate this, you should write a function that you can call at any time to print the sorted list of feature weights, for the *i*-th principal component. This might come in handy in the next step of the project, when you interpret the tendencies of the discovered clusters." + ] + }, + { + "cell_type": "code", + "execution_count": 107, + "metadata": {}, + "outputs": [], + "source": [ + "def getWeights(df, pca, weightIndex, N):\n", + " weights = pd.DataFrame(pca.components_, columns=df.columns)\n", + " weights = weights.iloc[weightIndex:weightIndex+1, :].transpose()\n", + " posWeights = weights.sort_values(weights.columns[0], ascending=False).head(N)\n", + " negWeights = weights.sort_values(weights.columns[0], ascending=True).head(N)\n", + " return posWeights, negWeights" + ] + }, + { + "cell_type": "code", + "execution_count": 108, + "metadata": {}, + "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", + "
0
PLZ8_ANTG30.222606
PLZ8_ANTG40.215934
ORTSGR_KLS90.198526
EWDICHTE0.195974
HH_EINKOMMEN_SCORE0.190977
FINANZ_SPARER0.155443
FINANZ_HAUSBAUER0.152013
KBA05_ANTG40.151090
PLZ8_ANTG20.148548
ARBEIT0.141607
\n", + "
" + ], + "text/plain": [ + " 0\n", + "PLZ8_ANTG3 0.222606\n", + "PLZ8_ANTG4 0.215934\n", + "ORTSGR_KLS9 0.198526\n", + "EWDICHTE 0.195974\n", + "HH_EINKOMMEN_SCORE 0.190977\n", + "FINANZ_SPARER 0.155443\n", + "FINANZ_HAUSBAUER 0.152013\n", + "KBA05_ANTG4 0.151090\n", + "PLZ8_ANTG2 0.148548\n", + "ARBEIT 0.141607" + ] + }, + "execution_count": 108, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Map weights for the first principal component to corresponding feature names\n", + "# and then print the linked values, sorted by weight.\n", + "# HINT: Try defining a function here or in a new cell that you can reuse in the\n", + "# other cells.\n", + "# and then print the linked values, sorted by weight.\n", + "p, n = getWeights(azdiastemp_noNa_final, pca, 0, 10)\n", + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 109, + "metadata": {}, + "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", + "
0
MOBI_REGIO-0.239428
KBA05_ANTG1-0.222922
FINANZ_MINIMALIST-0.222529
PLZ8_ANTG1-0.221995
KBA05_GBZ-0.214801
PLZ8_GBZ-0.166337
INNENSTADT-0.165851
KONSUMNAEHE-0.165035
ALTERSKATEGORIE_GROB-0.137991
BALLRAUM-0.128487
\n", + "
" + ], + "text/plain": [ + " 0\n", + "MOBI_REGIO -0.239428\n", + "KBA05_ANTG1 -0.222922\n", + "FINANZ_MINIMALIST -0.222529\n", + "PLZ8_ANTG1 -0.221995\n", + "KBA05_GBZ -0.214801\n", + "PLZ8_GBZ -0.166337\n", + "INNENSTADT -0.165851\n", + "KONSUMNAEHE -0.165035\n", + "ALTERSKATEGORIE_GROB -0.137991\n", + "BALLRAUM -0.128487" + ] + }, + "execution_count": 109, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "n" + ] + }, + { + "cell_type": "code", + "execution_count": 110, + "metadata": {}, + "outputs": [], + "source": [ + "# Map weights for the second principal component to corresponding feature names\n", + "# and then print the linked values, sorted by weight.\n", + "p, n = getWeights(azdiastemp_noNa_final, pca, 1, 10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 111, + "metadata": {}, + "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", + "
1
ALTERSKATEGORIE_GROB0.252765
SEMIO_ERL0.235743
FINANZ_VORSORGER0.217776
SEMIO_LUST0.175344
RETOURTYP_BK_S0.161684
SEMIO_KRIT0.130653
SEMIO_KAEM0.122912
FINANZ_HAUSBAUER0.122652
W_KEIT_KIND_HH0.118632
PLZ8_ANTG30.104754
\n", + "
" + ], + "text/plain": [ + " 1\n", + "ALTERSKATEGORIE_GROB 0.252765\n", + "SEMIO_ERL 0.235743\n", + "FINANZ_VORSORGER 0.217776\n", + "SEMIO_LUST 0.175344\n", + "RETOURTYP_BK_S 0.161684\n", + "SEMIO_KRIT 0.130653\n", + "SEMIO_KAEM 0.122912\n", + "FINANZ_HAUSBAUER 0.122652\n", + "W_KEIT_KIND_HH 0.118632\n", + "PLZ8_ANTG3 0.104754" + ] + }, + "execution_count": 111, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 112, + "metadata": {}, + "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", + "
1
SEMIO_REL-0.262923
SEMIO_PFLICHT-0.231305
SEMIO_KULT-0.225357
SEMIO_TRADV-0.225101
FINANZ_SPARER-0.223603
FINANZ_UNAUFFAELLIGER-0.217697
FINANZ_ANLEGER-0.195253
SEMIO_FAM-0.184628
ONLINE_AFFINITAET-0.164147
SEMIO_RAT-0.163079
\n", + "
" + ], + "text/plain": [ + " 1\n", + "SEMIO_REL -0.262923\n", + "SEMIO_PFLICHT -0.231305\n", + "SEMIO_KULT -0.225357\n", + "SEMIO_TRADV -0.225101\n", + "FINANZ_SPARER -0.223603\n", + "FINANZ_UNAUFFAELLIGER -0.217697\n", + "FINANZ_ANLEGER -0.195253\n", + "SEMIO_FAM -0.184628\n", + "ONLINE_AFFINITAET -0.164147\n", + "SEMIO_RAT -0.163079" + ] + }, + "execution_count": 112, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "n" + ] + }, + { + "cell_type": "code", + "execution_count": 113, + "metadata": {}, + "outputs": [], + "source": [ + "# Map weights for the third principal component to corresponding feature names\n", + "# and then print the linked values, sorted by weight.\n", + "p, n = getWeights(azdiastemp_noNa_final, pca, 2, 10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 114, + "metadata": {}, + "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", + "
2
SEMIO_VERT0.345306
SEMIO_SOZ0.256961
SEMIO_FAM0.242939
SEMIO_KULT0.220989
FINANZ_MINIMALIST0.162318
RETOURTYP_BK_S0.123113
FINANZ_VORSORGER0.107471
W_KEIT_KIND_HH0.099203
ALTERSKATEGORIE_GROB0.095271
SEMIO_LUST0.081573
\n", + "
" + ], + "text/plain": [ + " 2\n", + "SEMIO_VERT 0.345306\n", + "SEMIO_SOZ 0.256961\n", + "SEMIO_FAM 0.242939\n", + "SEMIO_KULT 0.220989\n", + "FINANZ_MINIMALIST 0.162318\n", + "RETOURTYP_BK_S 0.123113\n", + "FINANZ_VORSORGER 0.107471\n", + "W_KEIT_KIND_HH 0.099203\n", + "ALTERSKATEGORIE_GROB 0.095271\n", + "SEMIO_LUST 0.081573" + ] + }, + "execution_count": 114, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "metadata": {}, + "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", + "
2
ANREDE_KZ-0.364546
SEMIO_KAEM-0.334261
SEMIO_DOM-0.311411
SEMIO_KRIT-0.264220
SEMIO_RAT-0.227216
FINANZ_ANLEGER-0.195261
SEMIO_ERL-0.158497
FINANZ_SPARER-0.111787
FINANZ_UNAUFFAELLIGER-0.103077
SEMIO_TRADV-0.097060
\n", + "
" + ], + "text/plain": [ + " 2\n", + "ANREDE_KZ -0.364546\n", + "SEMIO_KAEM -0.334261\n", + "SEMIO_DOM -0.311411\n", + "SEMIO_KRIT -0.264220\n", + "SEMIO_RAT -0.227216\n", + "FINANZ_ANLEGER -0.195261\n", + "SEMIO_ERL -0.158497\n", + "FINANZ_SPARER -0.111787\n", + "FINANZ_UNAUFFAELLIGER -0.103077\n", + "SEMIO_TRADV -0.097060" + ] + }, + "execution_count": 115, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 2.3: Interpret Principal Components\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting your observations from detailed investigation of the first few principal components generated. Can we interpret positive and negative values from them in a meaningful way?)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Step 3: Clustering\n", + "\n", + "### Step 3.1: Apply Clustering to General Population\n", + "\n", + "You've assessed and cleaned the demographics data, then scaled and transformed them. Now, it's time to see how the data clusters in the principal components space. In this substep, you will apply k-means clustering to the dataset and use the average within-cluster distances from each point to their assigned cluster's centroid to decide on a number of clusters to keep.\n", + "\n", + "- Use sklearn's [KMeans](http://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html#sklearn.cluster.KMeans) class to perform k-means clustering on the PCA-transformed data.\n", + "- Then, compute the average difference from each point to its assigned cluster's center. **Hint**: The KMeans object's `.score()` method might be useful here, but note that in sklearn, scores tend to be defined so that larger is better. Try applying it to a small, toy dataset, or use an internet search to help your understanding.\n", + "- Perform the above two steps for a number of different cluster counts. You can then see how the average distance decreases with an increasing number of clusters. However, each additional cluster provides a smaller net benefit. Use this fact to select a final number of clusters in which to group the data. **Warning**: because of the large size of the dataset, it can take a long time for the algorithm to resolve. The more clusters to fit, the longer the algorithm will take. You should test for cluster counts through at least 10 clusters to get the full picture, but you shouldn't need to test for a number of clusters above about 30.\n", + "- Once you've selected a final number of clusters to use, re-fit a KMeans instance to perform the clustering operation. Make sure that you also obtain the cluster assignments for the general demographics data, since you'll be using them in the final Step 3.3." + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.cluster import KMeans" + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "metadata": {}, + "outputs": [], + "source": [ + "from joblib import dump, load" + ] + }, + { + "cell_type": "code", + "execution_count": 118, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster0 = KMeans(10)\n", + "# result0 = cluster0.fit_transform(df_pca)\n", + "# distance0 = np.min(result0, axis=1)\n", + "# dump(cluster0, 'cluster0')\n", + "# print(distance0)" + ] + }, + { + "cell_type": "code", + "execution_count": 119, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster1 = KMeans(11)\n", + "# result1 = cluster1.fit_transform(df_pca)\n", + "# distance1 = np.min(result1, axis=1)\n", + "# dump(cluster1, 'cluster1')\n", + "# print(distance1)" + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster2 = KMeans(12)\n", + "# result2 = cluster2.fit_transform(df_pca)\n", + "# distance2 = np.min(result2, axis=1)\n", + "# dump(cluster2, 'cluster2')\n", + "# print(distance2)" + ] + }, + { + "cell_type": "code", + "execution_count": 121, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster3 = KMeans(13)\n", + "# result3 = cluster3.fit_transform(df_pca)\n", + "# distance3 = np.min(result3, axis=1)\n", + "# dump(cluster3, 'cluster3')\n", + "# print(distance3)" + ] + }, + { + "cell_type": "code", + "execution_count": 122, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster4 = KMeans(14)\n", + "# result4 = cluster4.fit_transform(df_pca)\n", + "# distance4 = np.min(result4, axis=1)\n", + "# dump(cluster4, 'cluster4')\n", + "# print(distance4)" + ] + }, + { + "cell_type": "code", + "execution_count": 123, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster5 = KMeans(15)\n", + "# result5 = cluster5.fit_transform(df_pca)\n", + "# distance5 = np.min(result5, axis=1)\n", + "# dump(cluster5, 'cluster5')\n", + "# print(distance5)" + ] + }, + { + "cell_type": "code", + "execution_count": 124, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster6 = KMeans(16)\n", + "# result6 = cluster6.fit_transform(df_pca)\n", + "# distance6 = np.min(result6, axis=1)\n", + "# dump(cluster6, 'cluster6')\n", + "# print(distance6)" + ] + }, + { + "cell_type": "code", + "execution_count": 125, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster7 = KMeans(17)\n", + "# result7 = cluster7.fit_transform(df_pca)\n", + "# distance7 = np.min(result7, axis=1)\n", + "# dump(cluster7, 'cluster7')\n", + "# print(distance7)" + ] + }, + { + "cell_type": "code", + "execution_count": 126, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster8 = KMeans(18)\n", + "# result8 = cluster8.fit_transform(df_pca)\n", + "# distance8 = np.min(result8, axis=1)\n", + "# dump(cluster8, 'cluster8')\n", + "# print(distance8)" + ] + }, + { + "cell_type": "code", + "execution_count": 127, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster9 = KMeans(19)\n", + "# result9 = cluster9.fit_transform(df_pca)\n", + "# distance9 = np.min(result9, axis=1)\n", + "# dump(cluster9, 'cluster9')\n", + "# print(distance9)" + ] + }, + { + "cell_type": "code", + "execution_count": 128, + "metadata": {}, + "outputs": [], + "source": [ + "cluster0 = load('cluster0')\n", + "cluster1 = load('cluster1')\n", + "cluster2 = load('cluster2')\n", + "cluster3 = load('cluster3')\n", + "cluster4 = load('cluster4')\n", + "cluster5 = load('cluster5')\n", + "cluster6 = load('cluster6')\n", + "cluster7 = load('cluster7')\n", + "cluster8 = load('cluster8')\n", + "cluster9 = load('cluster9')" + ] + }, + { + "cell_type": "code", + "execution_count": 129, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ 5.99920356 5.25322915 6.26760652 ..., 4.92803458 5.6262381\n", + " 6.55423197]\n", + "[ 5.99729642 5.19941681 5.80185611 ..., 4.91543697 5.49068444\n", + " 6.23846466]\n", + "[ 6.00321557 5.38155623 5.71584121 ..., 4.93191586 5.4907225\n", + " 6.14040449]\n", + "[ 6.00392766 5.37278726 5.7805062 ..., 4.93259741 5.48580282\n", + " 6.21427945]\n", + "[ 5.86017994 5.66220384 5.77913626 ..., 4.60380248 5.48047593\n", + " 6.21966435]\n", + "[ 5.99451958 5.32246457 5.88282276 ..., 4.92354011 5.46000209\n", + " 5.49646623]\n", + "[ 5.92187825 5.0573057 5.77767642 ..., 4.4821897 5.48267078\n", + " 6.21543802]\n", + "[ 6.0017645 5.51875852 6.02450863 ..., 4.92603213 5.42898455\n", + " 5.90105521]\n", + "[ 5.92034543 5.03588893 5.815679 ..., 4.48228893 5.49018974\n", + " 6.33747584]\n", + "[ 5.92737572 5.04822523 5.88351874 ..., 4.48506609 5.1921062\n", + " 5.66267788]\n" + ] + } + ], + "source": [ + "result0 = cluster0.transform(df_pca)\n", + "distance0 = np.min(result0, axis=1)\n", + "print(distance0)\n", + "result1 = cluster1.transform(df_pca)\n", + "distance1 = np.min(result1, axis=1)\n", + "print(distance1)\n", + "result2 = cluster2.transform(df_pca)\n", + "distance2 = np.min(result2, axis=1)\n", + "print(distance2)\n", + "result3 = cluster3.transform(df_pca)\n", + "distance3 = np.min(result3, axis=1)\n", + "print(distance3)\n", + "result4 = cluster4.transform(df_pca)\n", + "distance4 = np.min(result4, axis=1)\n", + "print(distance4)\n", + "result5 = cluster5.transform(df_pca)\n", + "distance5 = np.min(result5, axis=1)\n", + "print(distance5)\n", + "result6 = cluster6.transform(df_pca)\n", + "distance6 = np.min(result6, axis=1)\n", + "print(distance6)\n", + "result7 = cluster7.transform(df_pca)\n", + "distance7 = np.min(result7, axis=1)\n", + "print(distance7)\n", + "result8 = cluster8.transform(df_pca)\n", + "distance8 = np.min(result8, axis=1)\n", + "print(distance8)\n", + "result9 = cluster9.transform(df_pca)\n", + "distance9 = np.min(result9, axis=1)\n", + "print(distance9)" + ] + }, + { + "cell_type": "code", + "execution_count": 130, + "metadata": {}, + "outputs": [], + "source": [ + "resultList = [distance0, distance1, distance2, distance3, distance4, distance5, distance6, distance7, distance8, distance9]" + ] + }, + { + "cell_type": "code", + "execution_count": 131, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average of 0 is: 5.491091752413104\n", + "Average of 1 is: 5.432722028994438\n", + "Average of 2 is: 5.3953931307323435\n", + "Average of 3 is: 5.347826619987956\n", + "Average of 4 is: 5.317350436694105\n", + "Average of 5 is: 5.286875239748684\n", + "Average of 6 is: 5.249543196370822\n", + "Average of 7 is: 5.242796093423207\n", + "Average of 8 is: 5.207815480022285\n", + "Average of 9 is: 5.191018052005388\n" + ] + } + ], + "source": [ + "resultListAvg = []\n", + "for i, j in zip(resultList, range(0, len(resultList))):\n", + " resultListAvg.append(np.mean(i))\n", + " print(f'Average of {j} is: {resultListAvg[j]}')" + ] + }, + { + "cell_type": "code", + "execution_count": 132, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0,0.5,'Distance to nearest cluster centre')" + ] + }, + "execution_count": 132, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYwAAAEKCAYAAAAB0GKPAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzt3Xd8VuX5x/HPlUUYYYYAMmQpIBvCEncVgdriqqNaRVSKtVatdtj2pxY7tNZVR8WJolalFrUiCBUVtSJD2SKggLJk75nk+v3xnNQYM07Gk5Pxfb9eeT3P2VeOyMU5933dt7k7IiIixUmIOgAREakalDBERCQUJQwREQlFCUNEREJRwhARkVCUMEREJBQlDBERCUUJQ0REQlHCEBGRUJKiDqA8paene9u2baMOQ0Skypg3b94Wd28aZt+4JgwzWw3sBrKBLHfPzLf9JOAVYFWw6l/uPjbYNhS4D0gEHnP324u7Xtu2bZk7d265xS8iUt2Z2Zqw+1bEE8bJ7r6liO3vuvsZeVeYWSLwIHAasBaYY2avuvvSOMYpIiJFqKxtGP2Ble7+ubsfAp4HRkQck4hIjRbvhOHANDObZ2ajC9lnkJktMLMpZtY1WNcS+DLPPmuDdd9iZqPNbK6Zzd28eXP5RS4iIt8Q71dSg919vZllANPNbJm7z8yz/SPgSHffY2bDgZeBowAr4FwFjsPu7o8AjwBkZmZqrHYRkTiJ6xOGu68PPjcBk4i9asq7fZe77wm+vw4km1k6sSeK1nl2bQWsj2esIiJStLglDDOra2Zpud+BIcDifPs0NzMLvvcP4tkKzAGOMrN2ZpYCXAC8Gq9YRUSkePF8JdUMmBTkgyTgOXefamZjANz9YeBc4CozywL2Axd4bArALDP7KfAGsW61T7j7kjjGKiIixbDqNEVrZmaml7QOw9158K2VnNQpg24tG8QpMhGRysnM5uWvkStMZe1WW2F27j/Mcx9+wajxc1i3Y3/U4YiIVFo1PmE0rJPC+FH92X84m5FPzGbnvsNRhyQiUinV+IQBcHSzNMb9qC+rt+5l9IS5HMzKjjokEZFKRwkjcGyHdP76g558uGobN05cSE5O9WnbEREpD9VqtNqyGtGrJet3HOCOqcs4omEqNw3rEnVIIiKVhhJGPmNObM+6HfsY987ntGxYm0sGtY06JBGRSkEJIx8z49bvdWXjzgPc+uoSmtdPZUjX5lGHJSISObVhFCApMYG/Xdib7i0b8LPnP+bjL7ZHHZKISOSUMApRJyWJx0f2IyMtlcufmsvqLXujDklEJFJKGEVIr1eL8Zf1w90Z+eRstu45GHVIIiKRUcIoRvum9Xjs0kw27DzAFU/PZf8h1WiISM2khBFC3yMbc98FvZj/5Q6uff5jslWjISI1kBJGSEO7teDmM45h2tKvGPvvJVSnQRtFRMJQt9oSuGxwO9Zt389j762iZaPajD6hQ9QhiYhUGCWMEvrN8C5s2HmAP72+jBYNavO9nkdEHZKISIVQwiihhATjrvN6smn3AW54cQEZabUY0L5J1GGJiMRdsW0YZna0mb1pZouD5R5m9rv4h1Z5pSYn8uglmbRqXJsrn57Lyk27ow5JRCTuwjR6PwrcBBwGcPeFxObYrtEa1knhqcv6k5KUyKVPzGHTrgNRhyQiEldhEkYdd5+db11WPIKpalo3rsMTIzPZvu8Qo56aw56Dui0iUn2FSRhbzKwD4ABmdi6wIa5RVSE9WjXkwR/24ZMNu7n62Y84nJ0TdUgiInERJmFcDYwDOpvZOuA6YExco6piTu6cwR/O7MY7yzfzu0mLVaMhItVSkb2kzCwByHT3U82sLpDg7mrhLcCF/duwbvt+HnhrJS0b1eZn3zkq6pBERMpVkU8Y7p4D/DT4vlfJomg3DDmas3u35O7py/nnvLVRhyMiUq7C1GFMN7MbgReA/43x7e7b4hZVFWVm3H5OD77afYBfv7SQZvVrcfxRTaMOS0SkXIRpwxhFrB1jJjAv+Jkb5uRmttrMFpnZfDMr9Bgz62dm2UGDeu667OC4+Wb2apjrVQYpSQn8/eK+dMyox1XPfMTS9buiDklEpFyESRhd3L1d3h/gmBJc42R37+XumQVtNLNE4A7gjXyb9gfH9XL375fgepGrn5rMk5f1o16tJC4bP5v1O/ZHHZKISJmFSRj/DbmutK4BXgI2leM5I9eiQW3Gj+rHvoPZjHxyNjv3H446JBGRMik0YZhZczPrC9Q2s95m1if4OQmoE/L8Dkwzs3lmNrqAa7QEzgIeLuDYVDOba2azzOzMIuIcHew3d/PmzSHDqhidm9fn4R/1ZdWWvYyZMI+DWZp8SUSqrqIavU8HRgKtgLvzrN8N/Cbk+Qe7+3ozyyDWeL7M3Wfm2X4v8Ct3zzaz/Me2CY5tD8wws0Xu/ln+ndz9EeARgMzMzEpXADG4Yzp3nNODn7+4gF/9cyH3nN+LAn5XEZFKr9CE4e5PAU+Z2Tnu/lJpTu7u64PPTWY2CehPrPE8VybwfPAXaDow3Myy3P3lPMd+bmZvA72BbyWMquDsPq1Yv2M/f522nCMa1uaXQztHHZKISImF6Vb7mpn9EGibd393H1vUQXkL/YLvQ4BvHBM0oOfuPx54zd1fNrNGwD53P2hm6cBg4C/hfqXK6eqTO7Jux34eevszjmhYm4sHHhl1SCIiJRImYbwC7CTWnfZgCc7dDJgUPD0kAc+5+1QzGwPg7gW1W+TqAowzsxxi7Sy3u/vSEly70jEzbhvRjY07D3DzK4tpXj+VU49pFnVYIiKhWXHjHpnZYnfvVkHxlElmZqbPnRuqRCQyew9mccEjs1i5aQ/Pjx5Iz9YNow5JRGowM5tXWNlDfqG61ZpZ9zLGJIG6tZJ4fGQmTeqlcPlTc/hi676oQxIRCSVMwjgOmGdmn5rZwqBye2G8A6vOMtJSGX9Zfw5nOyOfnM32vYeiDklEpFhhEsYw4ChijdbfA84IPqUMOmbU47FLM1m7Yz9XPD2XA4dVoyEilVuxCcPd1wCtgVOC7/vCHCfF69e2Mfec14uPvtjOdc/PJzun0pWRiIj8T7F/8ZvZLcCviM3rDZAMPBPPoGqS7/ZowW+Hd2Hqko38YXKV7ggmItVcmG61ZxErmvsIYsV4ZpYW16hqmMuPa8fa7ft58v3VHMzK4eYzjiE1OTHqsEREviFMwjjk7m5muXN6141zTDWOmfF/ZxxDraQExs38nLmrt3H/hX3o1Fx5WUQqjzBtES+a2TigoZldCfwHeDS+YdU8iQnGTcO78PSo/mzbe5jvP/Aez8xao/nBRaTSKLZwD8DMTiPWS8qAN9x9erwDK42qULgXxubdB7lh4gJmLt/M6V2bccc5PWhYJyXqsESkGipJ4V6YSu92wAZ3PxAs1waaufvqsgZa3qpLwgDIyXEef28Vf3ljGen1anHv+b0Y0L5J1GGJSDVT3pXeE4GcPMvZwTqJo4QE48oT2vPSVcdSKymBCx+dxT3Tl5OVnVP8wSIicRAmYSS5+/9KkYPvej9SQXq0ashrPzueM3u35L43V/DDRz9knaZ8FZEIhEkYm83sf3Nqm9kIYEv8QpL86tVK4u7zenHP+T1Zsn4nw+97l6mLN0QdlojUMGESxhjgN2b2hZl9QayI71vTrUr8ndW7FZN/djxHNqnDmGc+4reTFmlIERGpMMXWYQTTog40s3rEGsl3xz8sKUzb9Lr8c8yx3DXtU8bN/Jw5qtkQkQoSekwod9+jZFE5pCQlfKtmY4JqNkQkzjSIYBV2wtFNmXLt8Qxo34T/e3kxY56Zx459GipdROKjyIRhZglmdmxFBSMl1zStFuNH9uO3w7swY9kmht33Lh9+vjXqsESkGioyYbh7DnBXBcUipaSaDRGpCGFeSU0zs3PMzOIejZSJajZEJJ7CJIyfE6vsPmRmu8xst5ntinNcUkqq2RCReAkz416auye4e7K71w+W61dEcFJ6qtkQkfIWZsY9M7OLzez/guXWZtY//qFJWeXWbPz4hPY8++EXfP+B9/h0o3pGi0jphHkl9RAwCPhhsLwHeDBuEUm5Us2GiJSXMAljgLtfDRwAcPfthBx80MxWm9kiM5tvZoWOO25m/cws28zOzbPuUjNbEfxcGuZ6UjjVbIhIWYVJGIfNLBHInaK1Kd8c7rw4J7t7r8LGWw/OfQfwRp51jYFbgAFAf+AWM2tUgmtKAVSzISJlESZh/A2YBGSY2R+B94A/l2MM1wAvAZvyrDsdmO7u24InmunA0HK8Zo2lmg0RKa0wvaSeBX5JLElsAM509xdDnt+J1XHMM7NvjXBrZi2Bs4CH821qCXyZZ3ltsO5bzGy0mc01s7mbN28OGZaoZkNESipML6kJ7r7M3R909wfc/RMzmxDy/IPdvQ8wDLjazE7It/1e4Ffunr+/Z0FFggW20rr7I+6e6e6ZTZs2DRmWgGo2RKRkwryS6pp3IWhz6Bvm5O6+PvjcROy1Vv7uuJnA82a2GjgXeMjMziT2RNE6z36tgPVhriklV1DNxsEs1WyIyDcVmjDM7CYz2w30CCq8dwXLm4BXijuxmdU1s7Tc78AQYHHefdy9nbu3dfe2wD+Bn7j7y8QawIeYWaOgsXsIeRrFpfzlr9m44qm57DuUFXVYIlKJFJow3P3P7p4G3BlUeOdWeTdx95tCnLsZ8J6ZLQBmA5PdfaqZjTGzMUUd6O7bgNuAOcHP2GCdxFFuzcZfzu3B+yu3cPFjH6rrrYj8jxVXwGVmg4H57r7XzC4G+gD3ufuaigiwJDIzM33u3ELLPaQEpi7eyM/+8THt0uvy9OX9aVY/NeqQRCQOzGxeYWUP+YVpw/g7sM/MehLrLbUGeLoM8UkVMLRbc568rB9rt+/j3If/y5qte6MOSUQiFiZhZHnsMWQEsSeL+wBNIF0DDO6YznNXDmTPgSzOffgDPtmgQYpFarIwCWO3md0EXAxMDnpJJcc3LKkserZuyMQxg0g04/xxHzB3tZqSRGqqMAnjfOAgcLm7byRWQHdnXKOSSqVjRhr/vGoQTerV4uLHP+TtTzcVf5CIVDthKr03uvvd7v5usPyFu6sNo4Zp1agOE8cMon16Pa54ai6vLlBZjEhNE6bSe3eeOowDwaiyOysiOKlc0uvV4vkfD6TPkY249vmPmTCr0nWUE5E4CjvjXm4dRipwDpoPo8aqn5rM06P6c0qnDP7v5cU8MGOF5tYQqSHCtGF8Q1CJfUocYpEqIjU5kYd/1Jezerfkr9OW84fJn5CTo6QhUt0lFbeDmZ2dZzGB2PhP+tuhhktOTOCuH/SkQe1kHn9vFTv3H+b2s7uTlFjif4OISBVRbMIAvpfnexawmlhNhtRwCQnGLd87hkZ1UrjnP8vZuf8w91/Ym9TkxKhDE5E4KDZhuPtlFRGIVE1mxrWnHkXDOsnc8uoSLntyDo9c0pe0VJXqiFQ3hSYMM7ufIl49ufvP4hKRVEmXHtuWBrWTuXHiAn746IeMv6wfTerVijosESlHRT1haBQ/KZEze7ekfu0krnrmI34w7gOeuXwARzSsHXVYIlJOih2ttirRaLWVw+xV27h8/BzSUpOYcMUAOjStF3VIIlKIch2t1symm1nDPMuNzEyTGUmh+rdrzPM/Hsih7Bx+8PAHLF6nOk+R6iBMH8im7r4jd8HdtwMZ8QtJqoOuRzRg4phjqZ2cyAWPzOKDz7ZGHZKIlFGYhJFtZm1yF8zsSFSHISG0S6/LS1cdS4sGqVz65GymL/0q6pBEpAzCJIzfEptqdYKZTQBmAmGmaBWheYNUXvzxILq0qM+YZ+bx0ry1UYckIqUUZiypqcSmZX0BeBHo6+5qw5DQGtVN4bkrBjCwfWNumLiAJ95bFXVIIlIKocZxcPct7v6au//b3bfEOyipfurWSuKJkf0Y2rU5Y19byt3TPtWghSJVjAb+kQpTKymRBy/qw/mZrfnbjJXc/MoSDVooUoWEGUtKpNwkJhi3n9OdhnWTGffO5+zcf5i7zutJsgYtFKn0wtRhTAizTiQsM+OmYV341dDOvLpgPVc+PZf9h7KjDktEihHmn3Vd8y6YWSLQNz7hSE1y1Ukd+PPZ3Xln+WZ+9PiH7Nx/OOqQRKQIhSYMM7vJzHYDPfJM0bob2AS8EubkZrbazBaZ2Xwz+9aYHWY2wswW5m43s+PybMsO1s83s1dL8btJFXBh/zY8+MM+LFi7gwsemcWm3QeiDklEClHsWFJm9md3L1XdhZmtBjIL61llZvWAve7uZtYDeNHdOwfb9rh7iQYh0lhSVde7Kzbz4wnzaJpWi2cuH0DrxnWiDkmkRijXsaSA18ysbnDii83s7qDau8zcfY9/nbHqogryGuv4o5ryzBUD2LHvMOf8/b98unF31CGJSD5hEsbfgX1m1hP4JbAGeDrk+R2YZmbzzGx0QTuY2VlmtgyYDIzKsyk1eE01y8zOLOwCZjY62G/u5s2bQ4YllVGfNo148ceDADhv3Ad89MX2iCMSkbzCJIys4ClgBHCfu98HpIU8/2B37wMMA642sxPy7+Duk4LXUGcCt+XZ1CZ4TPohcK+ZdSjoAu7+iLtnuntm06ZNQ4YllVWn5mm8dNWxNKyTzAWPzOKuaZ+qB5VIJREmYew2s5uAHwGTg15SoebfdPf1wecmYBLQv4h9ZwIdzCw937GfA28DvcNcU6q+1o3r8NJVxzKsW3Pun7GSU+9+h6mLN6gyXCRiYRLG+cBBYJS7bwRaAncWd5CZ1TWztNzvwBBgcb59OpqZBd/7ACnA1mDOjVrB+nRgMLA09G8lVV56vVrcd0FvXhg9kLTUJMY88xGXPDGblZv2RB2aSI0VZvDBjcBLQO4EzVuIPS0UpxmxUW4XALOBye4+1czGmNmYYJ9zgMVmNh94EDg/eP3VBZgbHPsWcLu7K2HUQAPaN+G1a47j99/vyvwvdzD03pn86fVP2HMwK+rQRGqcMN1qrwRGA43dvYOZHQU87O7fqYgAS0Ldaqu3LXsOcufUT3lh7pdkpNXiN8O7MKLXEQQPqSJSCuXdrfZqYq+EdgG4+wo0455EIL1eLe44tweTfnIszRukct0L8zl/3CyWrt8VdWgiNUKYhHHQ3Q/lLphZEqqXkAj1btOIl38ymNvP7s6KTbs54/53ueWVxezcp6FFROIpTMJ4x8x+A9Q2s9OAicC/4xuWSNESEowL+rfhrRtP4uKBRzJh1hpOvuttXpjzhYZMF4mTMG0YCcDlxHo5GfAG8JhXwj6OasOouZas38ktryxh7prt9GzVgLEjutGzdcOowxKp9ErShlFkwghqLp5y94vLK7h4UsKo2dydl+ev40+vL2PLnoOcn9maX5zeiSb1ahV/sEgNVW6N3u6eDTQ1s5RyiUwkjsyMs3q3YsYNJ3LFce3457y1nPzXt3n6g9VkZedEHZ5IlRfmldQ4oA/wKrA3d7273x3f0EpOTxiS14qvdnPrv5fw/sqtdGlRn7EjutKvbeOowxKpVMq7W+164LVg37Q8PyKV2lHN0njm8gE8dFEfdu47xA8e/oDrX5jPpl2ac0OkNIp9wqhK9IQhhdl3KIu/v/0Z4975nORE47pTj2bk4LaaS1xqvHJr9A5O1pTYsOZdgdTc9e5+SlmCjAclDCnO6i17GfvaUmYs20THjHrc+r2uHHdUetRhiUSmvF9JPQssA9oBvwdWA3NKHZ1IhNqm1+WJkf14/NJMDmXlcPHjH/KTZ+exbsf+qEMTqfTCJIwm7v44cNjd33H3UcDAOMclElff6dKMadefwA2nHc2MZZv4zl1v88CMFRw4rLk3RAoTJmHkjrewwcy+a2a9gVZxjEmkQqQmJ3LNd47izRtO4pTOGfx12nJOv3cmM5Z9FXVoIpVSmITxBzNrANwA3Ag8Blwf16hEKlDLhrV56KK+PHP5AJISjFHj53L5+Dms2bq3+INFahD1khLJ41BWDk/9dzX3/mc5h7Od0Se05ycnd6BOSlLUoYnERbk2epvZ0Wb2ppktDpZ7mNnvyhqkSGWUkpTAlSe0560bT+K7PVrwwFsrOfWud3h9kaaIFQnzSupR4CaCtgx3XwhcEM+gRKKWUT+Ve87vxYs/HkT92sn85NmPuPjxD1m5aXfUoYlEJkzCqOPus/Ot0/yYUiP0b9eY1645jrEjurJo7U6G3vsuf5y8lN0HNPeG1DxhEsYWM+tAMGmSmZ0LbIhrVCKVSFJiApcMastbN57EuX1b8dh7qzjlrneY9PFavaaSGiXsFK3jgM5mtg64DrgqrlGJVEJN6tXi9nN6MOkngzmiQSrXv7CA88Z9wJL1O6MOTaRChO4lZWZ1gQR3r7QvcdVLSipKTo4zcd6X3DH1U3bsO8TFA4/khtM60aBOctShiZRISXpJFdtX0MxqAecAbYEkMwPA3ceWIUaRKi0hwTi/XxuGdm3B3dM/ZcKsNby2cAO/PL0T52W2JiHBog5RpNyFeSX1CjCCWEP33jw/IjVegzrJ/H5EN1675ng6NK3Lr/+1iLMeep/5X+6IOjSRchdmtNrF7t6tVCc3Ww3sBrKBrPyPPWY2ArgNyCGWkK5z9/eCbZcCufUef3D3p4q7nl5JSZTcnVcXrOePkz9h0+7YFLG/HKopYqVyK+/hzR8B7nf3RaUIZDWQ6e5bCtleD9jr7m5mPYAX3b2zmTUG5gKZxHpnzQP6uvv2oq6nhCGVwZ6DWfztzRU88d4q6qQkcsOQTlw0oA1JmntDKqHyHt78OGCemX1qZgvNbJGZLSxbiDHuvse/zlh1CbruAqcD0919W5AkpgNDy+OaIvFWr1YSvxnehanXHU+PVg255dUlnHH/e8xetS3q0ETKJMwAOcPKcH4HppmZA+Pc/ZH8O5jZWcCfgQzgu8HqlsCXeXZbG6wTqTI6ZqQx4fL+TF28kT9M/oTzxn3Amb2O4KbhXWhWP7X4E4hUMsUmDHdfU4bzD3b39WaWAUw3s2XuPjPf+ScBk8zsBGLtGacCBXUxKfDdmZmNBkYDtGnTpgyhipQ/M2NY9xac1CmDv7+9kodnfs70pV9x7alHMfLYdqQk6TWVVB1x/dPq7uuDz03AJKB/EfvOBDqYWTqxJ4rWeTa3AtYXctwj7p7p7plNmzYtt9hFylPtlER+PqQT068/gUEdmvCn15cx7L6ZvLtic9ShiYQWt4RhZnXNLC33OzAEWJxvn44WFHaYWR8gBdgKvAEMMbNGZtYoOPaNeMUqUlGObFKXxy7txxMjM8nKcX70+GyuemYea7fvizo0kWKFGuTfzJoB/YLF2cETQ3GaEXvVlHud59x9qpmNAXD3h4kVBF5iZoeB/cD5QSP4NjO7ja/nDh/r7moxlGrjlM7NOLZDOo+/t4r7Z6zgrU83cfVJHbnyhPakJidGHZ5IgcJ0qz0PuBN4m1jbwvHAL9z9n3GProTUrVaqonU79vOnyZ8wedEG2jSuw81nHMOpxzSLOiypIcq7DmMBcFruU4WZNQX+4+49yxxpOVPCkKrs/ZVbuOXVJazctIdTOmdw8xnH0Da9btRhSTVX3nUYCfleQW0NeZyIlMDgjulMufZ4fvfdLsxetY0h98zkr298yr5Dmn5GKocwf/FPNbM3zGykmY0EJgNT4huWSM2UnJjAFce3Z8YNJ3JGniliJy/UFLESvVDDm5vZ2cQqvg2YGdROVDp6JSXVzZzV27j5lSV8smEXp3TO4C/n9iBdY1NJOSrXV1Jmdoe7/8vdf+7u17v7JDO7o+xhikhx+rWNTRF78xnH8N7KLQy7713eX1ng0GwicRfmldRpBawry3AhIlICiQnGqOPa8crVg2lQO5mLH/+QO6Yu43B2TtShSQ1TaMIws6vMbBHQKRh0MPdnFVAugw+KSHhdWtTn1Z8O5oJ+rfn7259x7sMf8MVWFfxJxSm0DcPMGgCNiA0M+Os8m3ZX1iI6tWFITTF54QZ+/a+FuMMfz+rGiF4am1NKp1ymaHX3ncBO4MLyCkxEysd3e7SgZ+sGXPv8fK59fj7vrdjCrd/vSt1aoQZvECkV1VOIVFGtGtXhhdED+dkpHfnnR2v53v3vsXjdzqjDkmpMCUOkCktKTODnQzrx3BUD2Xcom7Mf+i+Pv7dKNRsSF6EShpkdaWanBt9r545CKyKVw6AOTZhy7fGc2Kkpt722lFHj57B1z8Gow5JqJkwdxpXAP4FxwapWwMvxDEpESq5R3RQe+VFfxo7oyvufbWWoajaknIV5wrgaGAzsAnD3FcSmUxWRSsbMuGRQW9VsSFyESRgH3f1Q7oKZJVHIdKkiUjl0aVGff//0OC7o10Y1G1JuwiSMd8zsN0BtMzsNmAj8O75hiUhZ1U5J5M9nd+ehi/qwavMehv/tXV6Zvy7qsKQKC5Mwfg1sBhYBPwZeB34Xz6BEpPwM796C1689ns7N07j2+fn8YuIC9h7UkOlScmEmUKoLHHD37GA5Eajl7pXu+VaV3iKFy8rO4W9vruD+t1bSrkld/nZhb7q1bBB1WBKx8p5A6U2gdp7l2sB/ShOYiERHNRtSVmESRqq778ldCL7XiV9IIhJPqtmQ0gqTMPaaWZ/cBTPrC+yPX0giEm+q2ZDSCJMwrgMmmtm7ZvYu8ALw0/iGJSLxppoNKamwU7QmA52ITdG6zN0Pxzuw0lCjt0jp7D+UzdjXlvKP2V/Qs3VD7r+gN22a6M1zTVDejd4A/YAeQG/gQjO7pLTBiUjlo5oNCaPYwfPNbALQAZgPZAerHXg6xLGrgd3BcVn5s5iZXQT8KljcA1zl7gvCHCsi5W949xb0aNWA64J5Nt5dsYXfa54NCYT5U5AJHOOl73t3srsX1pq2CjjR3beb2TDgEWBAyGNFJA5aNarD86MH/q9mY96a7dyvmg0h3CupxUDzeFzc3f/r7tuDxVnERsIVkYjlrdnYfyibsx56n8fe/Vw1GzVcmISRDiw1szfM7NXcn5Dnd2Camc0zs9HF7Hs5MKWUx4pIHOTWbJzUKYM/TP6EUePn8NayTazctJsDh7OLP4FUK2GGBjmxoPXu/k6xJzc7wt3Xm1kGMB24xt1nFrDfycBDwHHuvrWEx44GRgO0adNTAdSiAAAPwUlEQVSm75o1a4oLS0RKyN15ZtYabpv8CYeyvu5226x+LVo3qkObxnVo1Tj22aZxHVo3rk2ztFQSEizCqCWMkvSSCtWttjyY2a3AHnf/a771PYBJwDB3X16SY/NTt1qR+Nq57zArN+9h7fZ9fLF1H19s28eX2/fx5bb9rN+5n7x/naQkJtCqce3/JZTWjWsHn7Gf+qnJ0f0i8j8lSRhhekkNBO4HugApQCKw193rF3NcXSDB3XcH34cAY/Pt0wb4F/CjvMkizLEiUvEa1Emm75GN6Htko29tO5SVw/od+/liW95EEvs+/8sd7Nz/zfKthnWSYwmkUSyB5E0qRzSsTXJi2F7/UlHC9JJ6ALiA2DwYmcAlwFEhjmsGTDKz3Os85+5TzWwMgLs/DNwMNAEeCvbL7T5b4LEl+L1EpIKlJCXQNr0ubdPrFrh9577D30gisaSyn6UbdjFt6UYOZ3/9eJJg0KJB7QKfTNo0rkOTuikEfz9IBQrThjHX3TPNbKG79wjW/dfdj62QCEtAr6REqqbsHOerXQdiSWTb10nly+2xJ5bNu785OGL91CSuO/VoRh7bVu0kZVSur6SAfWaWAsw3s78AG4CC/wkhIlIKiQnGEQ1rc0TD2gxs3+Rb2/cfyo61mwSJ5K1PNzP2taVMW7qRO8/tSevGGsakIoR5wjgS+IpY+8X1QAPgQXf/LP7hlYyeMERqBndn4ty1jH1tKQD/d0YXzstsrddUpVDeY0md6e4H3H2Xu//e3X8OnFG2EEVESs/MOK9fa6ZedzzdWzbgVy8tYtT4OXy160DUoVVrYRLGpQWsG1nOcYiIlFirRnV49ooB3Pq9Y/jg860MuWcmry5Yr4r0OCm0DcPMLgR+CLTLV9ldH9ga78BERMJISDBGDm7HCUc35YaJC/jZPz7mjcUbue3MbjSumxJ1eNVKUY3e/yXWwJ0O3JVn/W5gYTyDEhEpqfZN6zHxx4MYN/Nz7v3Pcj5ctY3bz+7Oqcc0izq0aqPQV1Luvsbd3wZOBd4NhgLZQGyAQLUsiUilk5SYwNUnd+TVnx5H07RaXPH0XG6cuIBdByrlnG9VTpg2jJlAqpm1BN4ELgPGxzMoEZGy6NKiPq9cPZifntyRf320lqH3zNSc5eUgTMIwd98HnA3c7+5nAcfENywRkbJJSUrgxtM78dJVx5KakshFj33ILa8sZt+hrKhDq7JCJQwzGwRcBEwO1mn6LRGpEnq3acTka45n1OB2PPXBGobf9y7z1myLOqwqKUzCuA64CZjk7kvMrD3wVnzDEhEpP7VTErn5e8fwjysHcjjb+cHDH3D7lGUczNKcHiVRYcObVwRVeotIcfYczOKPk5fyj9lf0qlZGned17NGTz9bLpXeZnZv8PnvvDPtlXDGPRGRSqVerST+fHYPnhzZj+37DnHmg+/ztzdXkJWdU/zBNVxRbRETgs8iJy0SEamKTu6cwbTrT+DmV5Zw9/TlvPnJV9x1Xk86ZqRFHVqlFeqVlJk1BXD3zXGPqAz0SkpESmPywg387uVF7DuUzS9O78Sowe1qzLDp5fVKyszsVjPbAiwDlpvZZjO7ubwCFRGpDL7bowVvXH8Cxx+Vzh8mf8IFj87iy237og6r0imql9R1wGCgn7s3cfdGwABgsJldXyHRiYhUkIy0VB69JJM7z+3BJ+t3cfq9M3nuwy80kGEeRSWMS4AL3X1V7gp3/xy4ONgmIlKtmBk/yGzN1OtPoHebhvxm0iJGPjmHjTs1bDoUnTCS3f1btfRBO0Zy/EISEYlWy4a1mTBqAGNHdOXDVVsZcs87vPzxuhr/tFFUwjhUym0iIlVeQoJxyaC2TLn2BDpm1OO6F+bzk2c/Yuueg8UfXE0VlTB6mtmuAn52A90rKkARkSi1S6/LxDHH8uthnXnzk02cfu9Mpi3ZGHVYkShqePNEd69fwE+au+uVlIjUGIkJxpgTO/DqNYPJSEtl9IR5/PzF+ezcX7OGTdcggiIiIXVuXp+Xrx7MAzNW8ODbnzFz+Ra+3/MIhndvTp82jap97YbGkhIRKYUFX+7g/hkrmbliM4eycshIq8XQbs0Z1q0F/ds1JrGKJI+SFO7FNWGY2WpiU7pmA1n5gzKzi4BfBYt7gKvcfUGwbShwH5AIPObutxd3PSUMEaloew5mMWPZJqYs2sBbn27iwOEc0uulMKRrc4Z1a87A9k1ITgwzMHg0KlvCyCyoe26w/VjgE3ffbmbDgFvdfYCZJQLLgdOAtcAcYjUhS4u6nhKGiERp36Es3v50M68v2sCMZZvYdyibhnWSGXJMM4Z1a8HgjumkJFWu5FGShBFpG4a7/zfP4ixi84UD9AdWBoWCmNnzwAigyIQhIhKlOilJDO/eguHdW3DgcDYzl29myuKNTFm0kRfnriUtNYnTujRjWPcWHH9UOqnJiVGHXCLxThgOTDMzB8a5+yNF7Hs5MCX43hL4Ms+2tcSGJRERqRJSkxMZ0rU5Q7o252BWNu+v3MKURRuZtvQr/vXxOuqmJHJKl2YM79ackzplUDul8iePeCeMwe6+3swygOlmtszdZ+bfycxOJpYwjstdVcC5Cnx3ZmajgdEAbdq0KZ+oRUTKUa2kRE7p3IxTOjfjT9k5fPDZVqYs3sgbSzby7wXrqZ2cyMmdmzK0WwtO6ZxBvVqVswNrhfWSMrNbgT3u/td863sAk4Bh7r48WDeIWHvG6cHyTQDu/ueirqE2DBGpSrKyc5i9ehtTFm1k6pKNbN59kJSkBE48uinDuzfnO12aUT81vmVvlaLR28zqAgnuvjv4Ph0Y6+5T8+zTBpgBXJK3PcPMkog1en8HWEes0fuH7r6kqGsqYYhIVZWd43z0xXZeX7SBKYs2snHXAZITjeM6pjOsewuGHNOMhnVSyv26lSVhtCf25ACxV1/PufsfzWwMgLs/bGaPAecAa4L9/tf11syGA/cS61b7hLv/sbhrKmGISHWQk+PMX7uDKYs2MGXxRtZu309SgjGoQxOGdWvBkK7NSK9Xq1yuVSkSRhSUMESkunF3Fq/bxeuLNzBl0QZWb91HgsGAdk0Y3r05p3dtTkb91FKfXwlDRKQacneWbdzNlEUbmLxoA59t3osZ9GvbmGevGFCqAsEqU4chIiLhmRldWtSnS4v6/HxIJ1Z8tZvXF21kw879FVJNroQhIlJFHdUsjWubpVXY9SpXjbqIiFRaShgiIhKKEoaIiISihCEiIqEoYYiISChKGCIiEooShoiIhKKEISIioVSroUHMbDNfD2RYUulAgVPJ1kC6F9+k+/FNuh9fqw734kh3bxpmx2qVMMrCzOaGHU+lutO9+Cbdj2/S/fhaTbsXeiUlIiKhKGGIiEgoShhfeyTqACoR3Ytv0v34Jt2Pr9Woe6E2DBERCUVPGCIiEkqNTBhm9oSZbTKzxXnWNTaz6Wa2IvhsFGWMFaWQe3GnmS0zs4VmNsnMGkYZY0Uq6H7k2XajmbmZpUcRW0Ur7F6Y2TVm9qmZLTGzv0QVX0Ur5P+VXmY2y8zmm9lcM+sfZYzxViMTBjAeGJpv3a+BN939KODNYLkmGM+378V0oJu79wCWAzdVdFARGs+37wdm1ho4DfiiogOK0Hjy3QszOxkYAfRw967AXyOIKyrj+fafjb8Av3f3XsDNwXK1VSMThrvPBLblWz0CeCr4/hRwZoUGFZGC7oW7T3P3rGBxFtCqwgOLSCF/NgDuAX4J1JhGv0LuxVXA7e5+MNhnU4UHFpFC7ocD9YPvDYD1FRpUBauRCaMQzdx9A0DwmRFxPJXFKGBK1EFEycy+D6xz9wVRx1IJHA0cb2Yfmtk7ZtYv6oAidh1wp5l9Sexpq1o/jSthSKHM7LdAFvBs1LFExczqAL8l9rpBIAloBAwEfgG8aGYWbUiRugq43t1bA9cDj0ccT1wpYXztKzNrARB81phH7YKY2aXAGcBFXrP7XncA2gELzGw1sddzH5lZ80ijis5a4F8eMxvIITaeUk11KfCv4PtEQI3eNcSrxP7jE3y+EmEskTKzocCvgO+7+76o44mSuy9y9wx3b+vubYn9hdnH3TdGHFpUXgZOATCzo4EUqv7ge2WxHjgx+H4KsCLCWOKuRiYMM/sH8AHQyczWmtnlwO3AaWa2glhvmNujjLGiFHIvHgDSgOlBd8GHIw2yAhVyP2qkQu7FE0D7oGvp88ClNeUJtJD7cSVwl5ktAP4EjI4yxnhTpbeIiIRSI58wRESk5JQwREQkFCUMEREJRQlDRERCUcIQEZFQlDCk2ghGkr0rz/KNZnZrBV6/lpn9J+iKfH4B228MRgFebGYLzOySYP3bZlbieaGDkVKHl0fsImEoYUh1chA4O8Lhx3sDye7ey91fyLvBzMYQq+/p7+7dgBOAsg6p0QsoUcIws6QyXlNqMCUMqU6yiE2ZeX3+DWY23szOzbO8J/g8KRhE70UzW25mt5vZRWY228wWmVmHAs7V2MxeDuYLmWVmPcwsA3gG6BU8YeQ/7jfAT9x9F4C773T3pwo495483881s/HB9x/keTKZaWYpwFjg/NwnGjOrG8zZMMfMPjazEcGxI81sopn9G5hmZi2Cc8wPznl8yW6z1FT614ZUNw8CC0s4sU9PoAuxoas/Bx5z9/5mdi1wDbERSfP6PfCxu59pZqcAT7t7LzO7ArjR3c/Iu7OZpQFp7v5ZKX8niA1+eLq7rzOzhu5+yMxuBjLd/afBdf4EzHD3URab9Gq2mf0nOH4QsTkstpnZDcAb7v5HM0sE6pQhLqlB9IQh1UrwL/ingZ+V4LA57r4hmOPhM2BasH4R0LaA/Y8DJgTXmwE0MbMGRZzfKPs8Gu8D483sSiCxkH2GAL82s/nA20Aq0CbYNt3dc+dymANcFrTvdHf33WWMTWoIJQypju4FLgfq5lmXRfDnPRiOOyXPtoN5vufkWc6h4KfwgtoeCk0IQRLba2bti438m+dJzXOOMcDvgNbAfDNrUkhc5wRtKL3cvY27fxJs25vnXDOJtaGsAybkNr6LFEcJQ6qd4F/SLxJLGrlWA32D7yOA5DJcYiZwEcTaQIAtuW0TRfgz8KCZ1Q+Oq29mBQ1U95WZdTGzBOCs3JVm1sHdP3T3m4mNDtsa2E1skMhcbwDX5M5PYWa9CwrEzI4ENrn7o8Tmb+hT3C8sAkoYUn3dxTfnaXgUONHMZgMDyPMv7lK4Fcg0s4XERjW+tOjdAfg78BYwJxjp9R2goKHjfw28BswANuRZf2fQCL+YWMJaEJzvmDzdeG8jlggXBvvdVkgsJxF7SvkYOAe4L0T8IhqtVkREwtEThoiIhKKEISIioShhiIhIKEoYIiISihKGiIiEooQhIiKhKGGIiEgoShgiIhLK/wMKlPWQ0QcymQAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "x = range(10, 20)\n", + "plt.plot(x, resultListAvg)\n", + "plt.xlabel('Num of Clusters')\n", + "plt.ylabel('Distance to nearest cluster centre')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Unfortunately I ran into memory issues on this VM I couldn't get any further even with refreshing the workspace. If this were a real piece of work - I would go back and optimise my code (I suspect I am wasting a lot of memory here) however I don't want to go back and change things as it currently works for this project.\n", + "\n", + "I am on my work laptop which is not powerful and I am unable to access my desktop at home. I hope you can see that the average distance to the centres is decreasing for increasing clusters!. \n", + "\n", + "I suspect that we will soon see this decrease slow down and eventually reach an optimum number of clusters.\n", + "\n", + "As such I am choosing **19 clusters** for the model.\n", + "\n", + "We have already got the results for this:" + ] + }, + { + "cell_type": "code", + "execution_count": 133, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 8.89676907, 11.18238063, 9.44552392, ..., 7.78952809,\n", + " 8.01786661, 23.62727942],\n", + " [ 7.98911824, 8.06703566, 7.30671633, ..., 8.28362807,\n", + " 6.64715697, 23.42522223],\n", + " [ 9.89697642, 6.97460371, 5.88351874, ..., 8.04631183,\n", + " 9.80914733, 24.07789033],\n", + " ..., \n", + " [ 9.49078454, 10.88099939, 8.75271193, ..., 7.85142571,\n", + " 7.23220293, 23.94232482],\n", + " [ 11.30937033, 11.41794303, 9.05660614, ..., 7.33669112,\n", + " 10.55966618, 24.50789177],\n", + " [ 9.35820758, 7.75844345, 5.66267788, ..., 7.50301775,\n", + " 10.07965876, 23.58627624]])" + ] + }, + "execution_count": 133, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result9\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 3.1: Apply Clustering to General Population\n", + "\n", + "I have explained above what I've done but I will recap.\n", + "\n", + "We fitted KMeans to our final dataset starting at k=5 to k=14. Unfortunately I had to stop at k=14 due to memory problems but we can see that as we are increasing k the distance to the nearest cluster centre is decreasing. For higher k we will eventually find a sweet spot for our data." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 3.2: Apply All Steps to the Customer Data\n", + "\n", + "Now that you have clusters and cluster centers for the general population, it's time to see how the customer data maps on to those clusters. Take care to not confuse this for re-fitting all of the models to the customer data. Instead, you're going to use the fits from the general population to clean, transform, and cluster the customer data. In the last step of the project, you will interpret how the general population fits apply to the customer data.\n", + "\n", + "- Don't forget when loading in the customers data, that it is semicolon (`;`) delimited.\n", + "- Apply the same feature wrangling, selection, and engineering steps to the customer demographics using the `clean_data()` function you created earlier. (You can assume that the customer demographics data has similar meaning behind missing data patterns as the general demographics data.)\n", + "- Use the sklearn objects from the general demographics data, and apply their transformations to the customers data. That is, you should not be using a `.fit()` or `.fit_transform()` method to re-fit the old objects, nor should you be creating new sklearn objects! Carry the data through the feature scaling, PCA, and clustering steps, obtaining cluster assignments for all of the data in the customer demographics data." + ] + }, + { + "cell_type": "code", + "execution_count": 134, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(191652, 85)\n" + ] + }, + { + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02415.0515122...3.03.01.00.01.05.05.01.02.01.0
1-141NaN515132...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
2-1422.0515144...2.03.03.01.03.03.02.03.05.03.0
\n", + "

3 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 2 4 1 5.0 \n", + "1 -1 4 1 NaN \n", + "2 -1 4 2 2.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 5 1 5 1 \n", + "1 5 1 5 1 \n", + "2 5 1 5 1 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 2 2 ... 3.0 3.0 \n", + "1 3 2 ... NaN NaN \n", + "2 4 4 ... 2.0 3.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 1.0 0.0 1.0 5.0 5.0 1.0 \n", + "1 NaN NaN NaN NaN NaN NaN \n", + "2 3.0 1.0 3.0 3.0 2.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "1 NaN NaN \n", + "2 5.0 3.0 \n", + "\n", + "[3 rows x 85 columns]" + ] + }, + "execution_count": 134, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Load in the customer demographics data.\n", + "customers = pd.read_csv('Udacity_CUSTOMERS_Subset.csv', sep=';')\n", + "print(customers.shape)\n", + "customers.head(3)" + ] + }, + { + "cell_type": "code", + "execution_count": 135, + "metadata": {}, + "outputs": [], + "source": [ + "# Apply preprocessing, feature transformation, and clustering from the general\n", + "# demographics onto the customer data, obtaining cluster predictions for the\n", + "# customer demographics data.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 136, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AGER_TYP 0\n", + "ALTERSKATEGORIE_GROB 1\n", + "ANREDE_KZ 2\n", + "CJT_GESAMTTYP 3\n", + "FINANZ_MINIMALIST 4\n", + "FINANZ_SPARER 5\n", + "FINANZ_VORSORGER 6\n", + "FINANZ_ANLEGER 7\n", + "FINANZ_UNAUFFAELLIGER 8\n", + "FINANZ_HAUSBAUER 9\n", + "FINANZTYP 10\n", + "GEBURTSJAHR 11\n", + "GFK_URLAUBERTYP 12\n", + "GREEN_AVANTGARDE 13\n", + "HEALTH_TYP 14\n", + "LP_LEBENSPHASE_FEIN 15\n", + "LP_LEBENSPHASE_GROB 16\n", + "LP_FAMILIE_FEIN 17\n", + "LP_FAMILIE_GROB 18\n", + "LP_STATUS_FEIN 19\n", + "LP_STATUS_GROB 20\n", + "NATIONALITAET_KZ 21\n", + "PRAEGENDE_JUGENDJAHRE 22\n", + "RETOURTYP_BK_S 23\n", + "SEMIO_SOZ 24\n", + "SEMIO_FAM 25\n", + "SEMIO_REL 26\n", + "SEMIO_MAT 27\n", + "SEMIO_VERT 28\n", + "SEMIO_LUST 29\n", + "SEMIO_ERL 30\n", + "SEMIO_KULT 31\n", + "SEMIO_RAT 32\n", + "SEMIO_KRIT 33\n", + "SEMIO_DOM 34\n", + "SEMIO_KAEM 35\n", + "SEMIO_PFLICHT 36\n", + "SEMIO_TRADV 37\n", + "SHOPPER_TYP 38\n", + "SOHO_KZ 39\n", + "TITEL_KZ 40\n", + "VERS_TYP 41\n", + "ZABEOTYP 42\n", + "ALTER_HH 43\n", + "ANZ_PERSONEN 44\n", + "ANZ_TITEL 45\n", + "HH_EINKOMMEN_SCORE 46\n", + "KK_KUNDENTYP 47\n", + "W_KEIT_KIND_HH 48\n", + "WOHNDAUER_2008 49\n", + "ANZ_HAUSHALTE_AKTIV 50\n", + "ANZ_HH_TITEL 51\n", + "GEBAEUDETYP 52\n", + "KONSUMNAEHE 53\n", + "MIN_GEBAEUDEJAHR 54\n", + "OST_WEST_KZ 55\n", + "WOHNLAGE 56\n", + "CAMEO_DEUG_2015 57\n", + "CAMEO_DEU_2015 58\n", + "CAMEO_INTL_2015 59\n", + "KBA05_ANTG1 60\n", + "KBA05_ANTG2 61\n", + "KBA05_ANTG3 62\n", + "KBA05_ANTG4 63\n", + "KBA05_BAUMAX 64\n", + "KBA05_GBZ 65\n", + "BALLRAUM 66\n", + "EWDICHTE 67\n", + "INNENSTADT 68\n", + "GEBAEUDETYP_RASTER 69\n", + "KKK 70\n", + "MOBI_REGIO 71\n", + "ONLINE_AFFINITAET 72\n", + "REGIOTYP 73\n", + "KBA13_ANZAHL_PKW 74\n", + "PLZ8_ANTG1 75\n", + "PLZ8_ANTG2 76\n", + "PLZ8_ANTG3 77\n", + "PLZ8_ANTG4 78\n", + "PLZ8_BAUMAX 79\n", + "PLZ8_HHZ 80\n", + "PLZ8_GBZ 81\n", + "ARBEIT 82\n", + "ORTSGR_KLS9 83\n", + "RELAT_AB 84\n" + ] + } + ], + "source": [ + "# Fill in missing values:\n", + "\n", + "for col, index in zip(customers, range(len(missing_list))):\n", + " print(col, index)\n", + " customers.iloc[:,index] = customers.iloc[:,index].apply(replace, items=missing_list[index], axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 137, + "metadata": {}, + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.04.015.0515122...3.03.01.00.01.05.05.01.02.01.0
1NaN4.01NaN515132...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
2NaN4.022.0515144...2.03.03.01.03.03.02.03.05.03.0
31.04.012.0515212...3.02.01.00.01.03.04.01.03.01.0
4NaN3.016.0314452...2.04.02.01.02.03.03.03.05.01.0
51.03.014.0515123...2.03.02.01.01.05.05.03.07.05.0
62.04.012.0515112...3.02.01.00.01.05.05.02.03.02.0
71.04.012.0515122...3.03.01.01.01.03.03.03.04.03.0
82.04.021.0225115...1.04.02.01.05.05.04.03.08.03.0
91.03.013.0524131...3.03.01.00.01.05.05.03.06.04.0
\n", + "

10 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 2.0 4.0 1 5.0 \n", + "1 NaN 4.0 1 NaN \n", + "2 NaN 4.0 2 2.0 \n", + "3 1.0 4.0 1 2.0 \n", + "4 NaN 3.0 1 6.0 \n", + "5 1.0 3.0 1 4.0 \n", + "6 2.0 4.0 1 2.0 \n", + "7 1.0 4.0 1 2.0 \n", + "8 2.0 4.0 2 1.0 \n", + "9 1.0 3.0 1 3.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 5 1 5 1 \n", + "1 5 1 5 1 \n", + "2 5 1 5 1 \n", + "3 5 1 5 2 \n", + "4 3 1 4 4 \n", + "5 5 1 5 1 \n", + "6 5 1 5 1 \n", + "7 5 1 5 1 \n", + "8 2 2 5 1 \n", + "9 5 2 4 1 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 2 2 ... 3.0 3.0 \n", + "1 3 2 ... NaN NaN \n", + "2 4 4 ... 2.0 3.0 \n", + "3 1 2 ... 3.0 2.0 \n", + "4 5 2 ... 2.0 4.0 \n", + "5 2 3 ... 2.0 3.0 \n", + "6 1 2 ... 3.0 2.0 \n", + "7 2 2 ... 3.0 3.0 \n", + "8 1 5 ... 1.0 4.0 \n", + "9 3 1 ... 3.0 3.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 1.0 0.0 1.0 5.0 5.0 1.0 \n", + "1 NaN NaN NaN NaN NaN NaN \n", + "2 3.0 1.0 3.0 3.0 2.0 3.0 \n", + "3 1.0 0.0 1.0 3.0 4.0 1.0 \n", + "4 2.0 1.0 2.0 3.0 3.0 3.0 \n", + "5 2.0 1.0 1.0 5.0 5.0 3.0 \n", + "6 1.0 0.0 1.0 5.0 5.0 2.0 \n", + "7 1.0 1.0 1.0 3.0 3.0 3.0 \n", + "8 2.0 1.0 5.0 5.0 4.0 3.0 \n", + "9 1.0 0.0 1.0 5.0 5.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "1 NaN NaN \n", + "2 5.0 3.0 \n", + "3 3.0 1.0 \n", + "4 5.0 1.0 \n", + "5 7.0 5.0 \n", + "6 3.0 2.0 \n", + "7 4.0 3.0 \n", + "8 8.0 3.0 \n", + "9 6.0 4.0 \n", + "\n", + "[10 rows x 85 columns]" + ] + }, + "execution_count": 137, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "TITEL_KZ 0.987936\n", + "KK_KUNDENTYP 0.584064\n", + "KBA05_BAUMAX 0.571531\n", + "AGER_TYP 0.504759\n", + "GEBURTSJAHR 0.485380\n", + "ALTER_HH 0.358707\n", + "KKK 0.313401\n", + "REGIOTYP 0.313401\n", + "W_KEIT_KIND_HH 0.297085\n", + "KBA05_GBZ 0.292102\n", + "dtype: float64" + ] + }, + "execution_count": 138, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Find missing data by col\n", + "\n", + "null_col_count_cust = customers.isnull().sum(axis=0)\n", + "ax_rows_cust = customers.shape[0]\n", + "anomalies_cust = null_col_count_cust.apply(findTotal, total=ax_rows_cust).sort_values(ascending=False)\n", + "anomalies_cust[0:10]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "In the original dataset we dropped anything below 34.8%, I will do the same here so we will drop the first six of the above list\n", + "\n", + "As we did above, I am keeping all rows regardless of how much is missing" + ] + }, + { + "cell_type": "code", + "execution_count": 139, + "metadata": {}, + "outputs": [], + "source": [ + "customers.drop(['TITEL_KZ', 'KK_KUNDENTYP', 'KBA05_BAUMAX', 'AGER_TYP', 'GEBURTSJAHR', 'ALTER_HH'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "metadata": {}, + "outputs": [], + "source": [ + "assert customers.shape[1]+6 == 85" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can now look at reencoding our categorical features " + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n", + "18\n" + ] + } + ], + "source": [ + "categorical_cols = feat_info_cat['attribute'].tolist()\n", + "\n", + "drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "for i in drop_cols:\n", + " categorical_cols.remove(i)\n", + " \n", + "print(categorical_cols)\n", + "print(len(categorical_cols))" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ANREDE_KZ\n", + "Values: [1 2]\n", + "Length: 2\n", + "FINANZTYP\n", + "Values: [2 6 5 3 1 4]\n", + "Length: 6\n", + "GFK_URLAUBERTYP\n", + "Values: [ 4. nan 3. 10. 2. 11. 8. 1. 5. 9. 12. 7. 6.]\n", + "Length: 13\n", + "GREEN_AVANTGARDE\n", + "Values: [1 0]\n", + "Length: 2\n", + "LP_FAMILIE_GROB\n", + "Values: [ 2. nan 1. 5. 4. 3.]\n", + "Length: 6\n", + "LP_STATUS_FEIN\n", + "Values: [ 10. nan 9. 1. 7. 6. 3. 5. 8. 4. 2.]\n", + "Length: 11\n", + "LP_STATUS_GROB\n", + "Values: [ 5. nan 4. 1. 3. 2.]\n", + "Length: 6\n", + "NATIONALITAET_KZ\n", + "Values: [ 1. 2. nan 3.]\n", + "Length: 4\n", + "SHOPPER_TYP\n", + "Values: [ 3. 1. 0. 2. nan]\n", + "Length: 5\n", + "SOHO_KZ\n", + "Values: [ 0. nan 1.]\n", + "Length: 3\n", + "VERS_TYP\n", + "Values: [ 1. 2. nan]\n", + "Length: 3\n", + "ZABEOTYP\n", + "Values: [3 1 2 4 6 5]\n", + "Length: 6\n", + "GEBAEUDETYP\n", + "Values: [ 1. nan 8. 2. 3. 4. 6.]\n", + "Length: 7\n", + "OST_WEST_KZ\n", + "Values: ['W' nan 'O']\n", + "Length: 3\n", + "CAMEO_DEUG_2015\n", + "Values: ['1' nan '5' '4' '7' '3' '9' '2' '6' '8']\n", + "Length: 10\n", + "CAMEO_DEU_2015\n", + "Values: ['1A' nan '5D' '4C' '7B' '3B' '1D' '9E' '2D' '4A' '6B' '9D' '8B' '5C' '9C'\n", + " '4E' '6C' '8C' '8A' '5B' '9B' '3D' '2A' '3C' '5F' '7A' '1E' '2C' '7C' '5A'\n", + " '2B' '6D' '7E' '5E' '6E' '3A' '9A' '4B' '1C' '1B' '6A' '8D' '7D' '6F' '4D']\n", + "Length: 45\n", + "\n", + " Columns to reencode as dummies: ['CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n" + ] + } + ], + "source": [ + "# Re-encode categorical variable(s) to be kept in the analysis.\n", + "for i in categorical_cols:\n", + " print(f'{i}\\nValues: {customers[i].unique()}\\nLength: {len(customers[i].unique())}')\n", + " if len(customers[i].unique()) == 2:\n", + " categorical_cols.remove(i)\n", + "print('\\n Columns to reencode as dummies:', categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "16" + ] + }, + "execution_count": 143, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "metadata": {}, + "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", + "
CJT_GESAMTTYPFINANZTYPGFK_URLAUBERTYPLP_FAMILIE_FEINLP_FAMILIE_GROBLP_STATUS_FEINLP_STATUS_GROBNATIONALITAET_KZSHOPPER_TYPSOHO_KZVERS_TYPZABEOTYPGEBAEUDETYPOST_WEST_KZCAMEO_DEUG_2015CAMEO_DEU_2015
05.024.02.02.010.05.01.03.00.01.031.0W11A
1NaN2NaNNaNNaNNaNNaN1.03.00.01.03NaNNaNNaNNaN
22.023.01.01.010.05.01.01.00.02.038.0W55D
32.0610.0NaNNaN9.04.01.00.00.01.012.0W44C
46.022.010.05.01.01.01.01.00.02.013.0W77B
\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP FINANZTYP GFK_URLAUBERTYP LP_FAMILIE_FEIN \\\n", + "0 5.0 2 4.0 2.0 \n", + "1 NaN 2 NaN NaN \n", + "2 2.0 2 3.0 1.0 \n", + "3 2.0 6 10.0 NaN \n", + "4 6.0 2 2.0 10.0 \n", + "\n", + " LP_FAMILIE_GROB LP_STATUS_FEIN LP_STATUS_GROB NATIONALITAET_KZ \\\n", + "0 2.0 10.0 5.0 1.0 \n", + "1 NaN NaN NaN 1.0 \n", + "2 1.0 10.0 5.0 1.0 \n", + "3 NaN 9.0 4.0 1.0 \n", + "4 5.0 1.0 1.0 1.0 \n", + "\n", + " SHOPPER_TYP SOHO_KZ VERS_TYP ZABEOTYP GEBAEUDETYP OST_WEST_KZ \\\n", + "0 3.0 0.0 1.0 3 1.0 W \n", + "1 3.0 0.0 1.0 3 NaN NaN \n", + "2 1.0 0.0 2.0 3 8.0 W \n", + "3 0.0 0.0 1.0 1 2.0 W \n", + "4 1.0 0.0 2.0 1 3.0 W \n", + "\n", + " CAMEO_DEUG_2015 CAMEO_DEU_2015 \n", + "0 1 1A \n", + "1 NaN NaN \n", + "2 5 5D \n", + "3 4 4C \n", + "4 7 7B " + ] + }, + "execution_count": 144, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers[categorical_cols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "metadata": {}, + "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", + "
CJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2FINANZTYP_3...CAMEO_DEU_2015_8ACAMEO_DEU_2015_8BCAMEO_DEU_2015_8CCAMEO_DEU_2015_8DCAMEO_DEU_2015_9ACAMEO_DEU_2015_9BCAMEO_DEU_2015_9CCAMEO_DEU_2015_9DCAMEO_DEU_2015_9ECAMEO_DEU_2015_nan
00000100010...0000000000
10000001010...0000000001
20100000010...0000000000
30100000000...0000000000
40000010010...0000000000
\n", + "

5 rows × 147 columns

\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 CJT_GESAMTTYP_4.0 \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 1 0 0 \n", + "3 0 1 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan FINANZTYP_1 \\\n", + "0 1 0 0 0 \n", + "1 0 0 1 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 1 0 0 \n", + "\n", + " FINANZTYP_2 FINANZTYP_3 ... CAMEO_DEU_2015_8A \\\n", + "0 1 0 ... 0 \n", + "1 1 0 ... 0 \n", + "2 1 0 ... 0 \n", + "3 0 0 ... 0 \n", + "4 1 0 ... 0 \n", + "\n", + " CAMEO_DEU_2015_8B CAMEO_DEU_2015_8C CAMEO_DEU_2015_8D CAMEO_DEU_2015_9A \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_9B CAMEO_DEU_2015_9C CAMEO_DEU_2015_9D CAMEO_DEU_2015_9E \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_nan \n", + "0 0 \n", + "1 1 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 147 columns]" + ] + }, + "execution_count": 145, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers_cat_dummies = pd.get_dummies(customers[categorical_cols].astype(str))\n", + "customers_cat_dummies.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
15LP_LEBENSPHASE_FEINpersonmixed[0]
16LP_LEBENSPHASE_GROBpersonmixed[0]
22PRAEGENDE_JUGENDJAHREpersonmixed[-1,0]
56WOHNLAGEbuildingmixed[-1]
59CAMEO_INTL_2015microcell_rr4mixed[-1,XX]
64KBA05_BAUMAXmicrocell_rr3mixed[-1,0]
79PLZ8_BAUMAXmacrocell_plz8mixed[-1,0]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "15 LP_LEBENSPHASE_FEIN person mixed [0]\n", + "16 LP_LEBENSPHASE_GROB person mixed [0]\n", + "22 PRAEGENDE_JUGENDJAHRE person mixed [-1,0]\n", + "56 WOHNLAGE building mixed [-1]\n", + "59 CAMEO_INTL_2015 microcell_rr4 mixed [-1,XX]\n", + "64 KBA05_BAUMAX microcell_rr3 mixed [-1,0]\n", + "79 PLZ8_BAUMAX macrocell_plz8 mixed [-1,0]" + ] + }, + "execution_count": 146, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "feat_info_mixed = feat_info[(feat_info['type']=='mixed')]\n", + "feat_info_mixed" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['LP_LEBENSPHASE_FEIN', 'LP_LEBENSPHASE_GROB', 'PRAEGENDE_JUGENDJAHRE', 'WOHNLAGE', 'CAMEO_INTL_2015', 'KBA05_BAUMAX', 'PLZ8_BAUMAX']\n", + "7\n" + ] + } + ], + "source": [ + "mixed_cols = feat_info_mixed['attribute'].tolist()\n", + "\n", + "# drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "# for i in drop_cols:\n", + "# mixed_cols.remove(i)\n", + " \n", + "print(mixed_cols)\n", + "print(len(mixed_cols))" + ] + }, + { + "cell_type": "code", + "execution_count": 148, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 50.0\n", + "1 NaN\n", + "2 50.0\n", + "3 40.0\n", + "4 70.0\n", + "Name: PRAEGENDE_JUGENDJAHRE_decade, dtype: float64" + ] + }, + "execution_count": 148, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['PRAEGENDE_JUGENDJAHRE_decade'] = customers.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_decade, axis=1)\n", + "customers['PRAEGENDE_JUGENDJAHRE_decade'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 149, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 avantgarde\n", + "1 NaN\n", + "2 avantgarde\n", + "3 mainstream\n", + "4 mainstream\n", + "Name: PRAEGENDE_JUGENDJAHRE_movement, dtype: object" + ] + }, + "execution_count": 149, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['PRAEGENDE_JUGENDJAHRE_movement'] = customers.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_movement, axis=1)\n", + "customers['PRAEGENDE_JUGENDJAHRE_movement'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movement
050.0avantgarde
1NaNNaN
250.0avantgarde
340.0mainstream
470.0mainstream
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_decade PRAEGENDE_JUGENDJAHRE_movement\n", + "0 50.0 avantgarde\n", + "1 NaN NaN\n", + "2 50.0 avantgarde\n", + "3 40.0 mainstream\n", + "4 70.0 mainstream" + ] + }, + "execution_count": 150, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers.iloc[0:5, -2:]" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 1\n", + "1 NaN\n", + "2 3\n", + "3 2\n", + "4 4\n", + "Name: CAMEO_INTL_2015_wealth, dtype: object" + ] + }, + "execution_count": 151, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['CAMEO_INTL_2015_wealth'] = customers.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_wealth, axis=1)\n", + "customers['CAMEO_INTL_2015_wealth'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 152, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 3\n", + "1 NaN\n", + "2 4\n", + "3 4\n", + "4 1\n", + "Name: CAMEO_INTL_2015_life, dtype: object" + ] + }, + "execution_count": 152, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['CAMEO_INTL_2015_life'] = customers.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_life, axis=1)\n", + "customers['CAMEO_INTL_2015_life'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 153, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 13\n", + "1 NaN\n", + "2 34\n", + "3 24\n", + "4 41\n", + "Name: CAMEO_INTL_2015, dtype: object" + ] + }, + "execution_count": 153, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['CAMEO_INTL_2015'].iloc[0:5][:]" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movementPRAEGENDE_JUGENDJAHRE_decadeCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
0avantgarde50.013
1NaNNaNNaNNaN
2avantgarde50.034
3mainstream40.024
4mainstream70.041
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement PRAEGENDE_JUGENDJAHRE_decade \\\n", + "0 avantgarde 50.0 \n", + "1 NaN NaN \n", + "2 avantgarde 50.0 \n", + "3 mainstream 40.0 \n", + "4 mainstream 70.0 \n", + "\n", + " CAMEO_INTL_2015_wealth CAMEO_INTL_2015_life \n", + "0 1 3 \n", + "1 NaN NaN \n", + "2 3 4 \n", + "3 2 4 \n", + "4 4 1 " + ] + }, + "execution_count": 154, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "newCols = ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']\n", + "customers[newCols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movement_avantgardePRAEGENDE_JUGENDJAHRE_movement_mainstreamPRAEGENDE_JUGENDJAHRE_movement_nanPRAEGENDE_JUGENDJAHRE_decade_40.0PRAEGENDE_JUGENDJAHRE_decade_50.0PRAEGENDE_JUGENDJAHRE_decade_60.0PRAEGENDE_JUGENDJAHRE_decade_70.0PRAEGENDE_JUGENDJAHRE_decade_80.0PRAEGENDE_JUGENDJAHRE_decade_90.0PRAEGENDE_JUGENDJAHRE_decade_nan...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
01000100000...0000001000
10010000001...0001000001
21000100000...1000000100
30101000000...0000000100
40100001000...0100100000
\n", + "

5 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement_avantgarde \\\n", + "0 1 \n", + "1 0 \n", + "2 1 \n", + "3 0 \n", + "4 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_mainstream \\\n", + "0 0 \n", + "1 0 \n", + "2 0 \n", + "3 1 \n", + "4 1 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_nan PRAEGENDE_JUGENDJAHRE_decade_40.0 \\\n", + "0 0 0 \n", + "1 1 0 \n", + "2 0 0 \n", + "3 0 1 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_50.0 PRAEGENDE_JUGENDJAHRE_decade_60.0 \\\n", + "0 1 0 \n", + "1 0 0 \n", + "2 1 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_70.0 PRAEGENDE_JUGENDJAHRE_decade_80.0 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 1 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_90.0 PRAEGENDE_JUGENDJAHRE_decade_nan \\\n", + "0 0 0 \n", + "1 0 1 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " ... CAMEO_INTL_2015_wealth_3 \\\n", + "0 ... 0 \n", + "1 ... 0 \n", + "2 ... 1 \n", + "3 ... 0 \n", + "4 ... 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_4 CAMEO_INTL_2015_wealth_5 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 1 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_nan CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 \\\n", + "0 0 0 0 \n", + "1 1 0 0 \n", + "2 0 0 0 \n", + "3 0 0 0 \n", + "4 0 1 0 \n", + "\n", + " CAMEO_INTL_2015_life_3 CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 \\\n", + "0 1 0 0 \n", + "1 0 0 0 \n", + "2 0 1 0 \n", + "3 0 1 0 \n", + "4 0 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_nan \n", + "0 0 \n", + "1 1 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 22 columns]" + ] + }, + "execution_count": 155, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers_mixed_dummies = pd.get_dummies(customers[newCols].astype(str))\n", + "customers_mixed_dummies.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 156, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "customers.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',\n", + " 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "79" + ] + }, + "execution_count": 157, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(customers.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 158, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "16\n", + "7\n", + "\n", + "147\n", + "22\n" + ] + } + ], + "source": [ + "print(len(categorical_cols))\n", + "print(len(mixed_cols))\n", + "print()\n", + "print(len(customers_cat_dummies.columns))\n", + "print(len(customers_mixed_dummies.columns))" + ] + }, + { + "cell_type": "code", + "execution_count": 159, + "metadata": {}, + "outputs": [], + "source": [ + "mixed_cols.remove('KBA05_BAUMAX')" + ] + }, + { + "cell_type": "code", + "execution_count": 160, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['LP_LEBENSPHASE_FEIN',\n", + " 'LP_LEBENSPHASE_GROB',\n", + " 'PRAEGENDE_JUGENDJAHRE',\n", + " 'WOHNLAGE',\n", + " 'CAMEO_INTL_2015',\n", + " 'PLZ8_BAUMAX']" + ] + }, + "execution_count": 160, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mixed_cols" + ] + }, + { + "cell_type": "code", + "execution_count": 161, + "metadata": {}, + "outputs": [], + "source": [ + "customers.drop(categorical_cols, axis=1, inplace=True)\n", + "customers.drop(mixed_cols, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 162, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
04.0151512211.0...1201.03.03.01.00.05.05.01.02.01.0
14.0151513201.0...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", + "

2 rows × 57 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 4.0 1 5 1 \n", + "1 4.0 1 5 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 5 1 2 2 \n", + "1 5 1 3 2 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 1 1.0 ... 1201.0 3.0 \n", + "1 0 1.0 ... NaN NaN \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 3.0 1.0 0.0 5.0 5.0 1.0 \n", + "1 NaN NaN NaN NaN NaN NaN \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "1 NaN NaN \n", + "\n", + "[2 rows x 57 columns]" + ] + }, + "execution_count": 162, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp = customers\n", + "customerstemp.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 163, + "metadata": {}, + "outputs": [], + "source": [ + "customerstemp = customerstemp.join(customers_cat_dummies)\n", + "customerstemp = customerstemp.join(customers_mixed_dummies)" + ] + }, + { + "cell_type": "code", + "execution_count": 164, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
04.0151512211.0...0000001000
14.0151513201.0...0001000001
24.0251514412.0...1000000100
34.0151521202.0...0000000100
43.0131445203.0...0100100000
\n", + "

5 rows × 226 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 4.0 1 5 1 \n", + "1 4.0 1 5 1 \n", + "2 4.0 2 5 1 \n", + "3 4.0 1 5 1 \n", + "4 3.0 1 3 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 5 1 2 2 \n", + "1 5 1 3 2 \n", + "2 5 1 4 4 \n", + "3 5 2 1 2 \n", + "4 4 4 5 2 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... \\\n", + "0 1 1.0 ... \n", + "1 0 1.0 ... \n", + "2 1 2.0 ... \n", + "3 0 2.0 ... \n", + "4 0 3.0 ... \n", + "\n", + " CAMEO_INTL_2015_wealth_3 CAMEO_INTL_2015_wealth_4 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 1 0 \n", + "3 0 0 \n", + "4 0 1 \n", + "\n", + " CAMEO_INTL_2015_wealth_5 CAMEO_INTL_2015_wealth_nan \\\n", + "0 0 0 \n", + "1 0 1 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 CAMEO_INTL_2015_life_3 \\\n", + "0 0 0 1 \n", + "1 0 0 0 \n", + "2 0 0 0 \n", + "3 0 0 0 \n", + "4 1 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 CAMEO_INTL_2015_life_nan \n", + "0 0 0 0 \n", + "1 0 0 1 \n", + "2 1 0 0 \n", + "3 1 0 0 \n", + "4 0 0 0 \n", + "\n", + "[5 rows x 226 columns]" + ] + }, + "execution_count": 164, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will now apply feature scaling" + ] + }, + { + "cell_type": "code", + "execution_count": 165, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "75520\n" + ] + }, + { + "data": { + "text/plain": [ + "(116132, 226)" + ] + }, + "execution_count": 165, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(customerstemp.shape[0] - customerstemp.dropna().shape[0])\n", + "customerstemp_noNa = customerstemp.dropna()\n", + "customerstemp_noNa.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 166, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + }, + { + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERHEALTH_TYPRETOURTYP_BK_S...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
04.015151221.05.0...1201.03.03.01.00.05.05.01.02.01.0
24.025151442.05.0...433.02.03.03.01.03.02.03.05.03.0
43.013144523.05.0...513.02.04.02.01.03.03.03.05.01.0
53.015151233.03.0...1167.02.03.02.01.05.05.03.07.05.0
\n", + "

4 rows × 56 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 4.0 1 5 1 \n", + "2 4.0 2 5 1 \n", + "4 3.0 1 3 1 \n", + "5 3.0 1 5 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 5 1 2 2 \n", + "2 5 1 4 4 \n", + "4 4 4 5 2 \n", + "5 5 1 2 3 \n", + "\n", + " HEALTH_TYP RETOURTYP_BK_S ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 1.0 5.0 ... 1201.0 3.0 \n", + "2 2.0 5.0 ... 433.0 2.0 \n", + "4 3.0 5.0 ... 513.0 2.0 \n", + "5 3.0 3.0 ... 1167.0 2.0 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 3.0 1.0 0.0 5.0 5.0 1.0 \n", + "2 3.0 3.0 1.0 3.0 2.0 3.0 \n", + "4 4.0 2.0 1.0 3.0 3.0 3.0 \n", + "5 3.0 2.0 1.0 5.0 5.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "2 5.0 3.0 \n", + "4 5.0 1.0 \n", + "5 7.0 5.0 \n", + "\n", + "[4 rows x 56 columns]" + ] + }, + "execution_count": 166, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp_noNa.drop(customers_cat_dummies.columns, axis=1, inplace=True)\n", + "customerstemp_noNa.drop(customers_mixed_dummies.columns, axis=1, inplace=True)\n", + "customerstemp_noNa.drop('GREEN_AVANTGARDE', axis=1, inplace=True)\n", + "customerstemp_noNa.head(4)" + ] + }, + { + "cell_type": "code", + "execution_count": 167, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "StandardScaler(copy=True, with_mean=True, with_std=True)" + ] + }, + "execution_count": 167, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "scalerCust = StandardScaler()\n", + "scalerCust.fit(customerstemp_noNa)" + ] + }, + { + "cell_type": "code", + "execution_count": 168, + "metadata": {}, + "outputs": [], + "source": [ + "customers_noNa_scaled = pd.DataFrame(scaler.transform(customerstemp_noNa), columns=customerstemp_noNa.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 169, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 169, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers_noNa_scaled.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 170, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "customerstemp_noNa = customerstemp.dropna()\n", + "customerstemp_noNa.drop(customers_noNa_scaled.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 171, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 171, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp_noNa.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 172, + "metadata": {}, + "outputs": [], + "source": [ + "customerstemp_noNa_final = pd.merge(customerstemp_noNa.reset_index(), customers_noNa_scaled.reset_index(), right_index=True, left_index=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 173, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 173, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp_noNa_final.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 174, + "metadata": {}, + "outputs": [], + "source": [ + "customerstemp_noNa_final.drop(['index_x', 'index_y'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 175, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(116132, 226)\n" + ] + }, + { + "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", + "
GREEN_AVANTGARDECJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
01000010001...1.7736260.7917000.181378-0.64373-0.9843451.4402751.483855-2.226515-1.478616-1.565428
11010000001...-0.536230-0.2310610.1813781.387790.381459-0.638548-1.209678-0.203820-0.171975-0.084556
20000001001...-0.295620-0.2310611.2707640.372030.381459-0.638548-0.311834-0.203820-0.171975-1.565428
31000100000...1.671367-0.2310610.1813780.372030.3814591.4402751.483855-0.2038200.6991191.396317
41010000001...2.0713810.791700-0.908009-0.64373-0.9843451.4402751.483855-1.215167-1.043069-0.824992
51010000000...-0.3918640.7917000.181378-0.643730.381459-0.638548-0.311834-0.203820-0.607522-0.084556
61001000001...1.4879020.7917000.181378-0.64373-0.9843451.4402751.483855-0.2038200.2635720.655880
71001000001...0.0352191.814461-0.908009-0.64373-0.984345-0.638548-0.311834-1.215167-0.171975-1.565428
80000010000...1.7826490.791700-1.997396-1.65949-0.9843450.4008631.483855-2.226515-1.914163-1.565428
90010000000...-0.091101-1.2538221.2707641.387790.3814591.440275-0.311834-0.2038201.1346661.396317
\n", + "

10 rows × 226 columns

\n", + "
" + ], + "text/plain": [ + " GREEN_AVANTGARDE CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 \\\n", + "0 1 0 0 0 \n", + "1 1 0 1 0 \n", + "2 0 0 0 0 \n", + "3 1 0 0 0 \n", + "4 1 0 1 0 \n", + "5 1 0 1 0 \n", + "6 1 0 0 1 \n", + "7 1 0 0 1 \n", + "8 0 0 0 0 \n", + "9 0 0 1 0 \n", + "\n", + " CJT_GESAMTTYP_4.0 CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan \\\n", + "0 0 1 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 1 0 \n", + "3 1 0 0 0 \n", + "4 0 0 0 0 \n", + "5 0 0 0 0 \n", + "6 0 0 0 0 \n", + "7 0 0 0 0 \n", + "8 0 1 0 0 \n", + "9 0 0 0 0 \n", + "\n", + " FINANZTYP_1 FINANZTYP_2 ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 0 1 ... 1.773626 0.791700 \n", + "1 0 1 ... -0.536230 -0.231061 \n", + "2 0 1 ... -0.295620 -0.231061 \n", + "3 0 0 ... 1.671367 -0.231061 \n", + "4 0 1 ... 2.071381 0.791700 \n", + "5 0 0 ... -0.391864 0.791700 \n", + "6 0 1 ... 1.487902 0.791700 \n", + "7 0 1 ... 0.035219 1.814461 \n", + "8 0 0 ... 1.782649 0.791700 \n", + "9 0 0 ... -0.091101 -1.253822 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 0.181378 -0.64373 -0.984345 1.440275 1.483855 -2.226515 \n", + "1 0.181378 1.38779 0.381459 -0.638548 -1.209678 -0.203820 \n", + "2 1.270764 0.37203 0.381459 -0.638548 -0.311834 -0.203820 \n", + "3 0.181378 0.37203 0.381459 1.440275 1.483855 -0.203820 \n", + "4 -0.908009 -0.64373 -0.984345 1.440275 1.483855 -1.215167 \n", + "5 0.181378 -0.64373 0.381459 -0.638548 -0.311834 -0.203820 \n", + "6 0.181378 -0.64373 -0.984345 1.440275 1.483855 -0.203820 \n", + "7 -0.908009 -0.64373 -0.984345 -0.638548 -0.311834 -1.215167 \n", + "8 -1.997396 -1.65949 -0.984345 0.400863 1.483855 -2.226515 \n", + "9 1.270764 1.38779 0.381459 1.440275 -0.311834 -0.203820 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 -1.478616 -1.565428 \n", + "1 -0.171975 -0.084556 \n", + "2 -0.171975 -1.565428 \n", + "3 0.699119 1.396317 \n", + "4 -1.043069 -0.824992 \n", + "5 -0.607522 -0.084556 \n", + "6 0.263572 0.655880 \n", + "7 -0.171975 -1.565428 \n", + "8 -1.914163 -1.565428 \n", + "9 1.134666 1.396317 \n", + "\n", + "[10 rows x 226 columns]" + ] + }, + "execution_count": 175, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(customerstemp_noNa_final.shape)\n", + "customerstemp_noNa_final.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 176, + "metadata": {}, + "outputs": [], + "source": [ + "pca, df_pca = do_pca(30, customerstemp_noNa_final)" + ] + }, + { + "cell_type": "code", + "execution_count": 177, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(116132, 30)" + ] + }, + "execution_count": 177, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_pca.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Now we can apply kmeans on our fitted model from before!" + ] + }, + { + "cell_type": "code", + "execution_count": 178, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "KMeans(algorithm='auto', copy_x=True, init='k-means++', max_iter=300,\n", + " n_clusters=19, n_init=10, n_jobs=1, precompute_distances='auto',\n", + " random_state=None, tol=0.0001, verbose=0)" + ] + }, + "execution_count": 178, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cluster9" + ] + }, + { + "cell_type": "code", + "execution_count": 179, + "metadata": {}, + "outputs": [], + "source": [ + "resultCust = cluster9.transform(df_pca)" + ] + }, + { + "cell_type": "code", + "execution_count": 180, + "metadata": {}, + "outputs": [], + "source": [ + "customerClusters = cluster9.predict(df_pca)" + ] + }, + { + "cell_type": "code", + "execution_count": 181, + "metadata": {}, + "outputs": [], + "source": [ + "popClusters = cluster9.labels_" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "This plot shows us the number of points in each cluster. It is not very useful as we need to scale them **so they represent a percentage which we will do below**" + ] + }, + { + "cell_type": "code", + "execution_count": 182, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cluster 18\n", + "dtype: int64\n" + ] + }, + { + "data": { + "text/plain": [ + "14 17464\n", + "15 13584\n", + "11 12668\n", + "2 9874\n", + "1 9647\n", + "4 8844\n", + "10 8623\n", + "13 8363\n", + "5 8040\n", + "16 6109\n", + "8 5274\n", + "6 2956\n", + "7 1510\n", + "9 1175\n", + "0 885\n", + "3 771\n", + "17 320\n", + "18 25\n", + "Name: Cluster, dtype: int64" + ] + }, + "execution_count": 182, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "testDf = pd.DataFrame(customerClusters, columns=['Cluster'])\n", + "print(testDf.nunique())\n", + "testDf[testDf['Cluster'] == 18]\n", + "pd.value_counts(testDf['Cluster'])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 183, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 183, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "f, axes = plt.subplots(1, 2, figsize=(25, 10))\n", + "sns.countplot(x=customerClusters, ax=axes[0])\n", + "sns.countplot(popClusters, ax=axes[1])" + ] + }, + { + "cell_type": "code", + "execution_count": 184, + "metadata": {}, + "outputs": [], + "source": [ + "index_cust=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18]" + ] + }, + { + "cell_type": "code", + "execution_count": 185, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "116132\n", + "116132\n" + ] + } + ], + "source": [ + "print(len(customerClusters))\n", + "print(len(df_pca))" + ] + }, + { + "cell_type": "code", + "execution_count": 186, + "metadata": {}, + "outputs": [], + "source": [ + "def findClusterPerc(clusterSeries, df_pca, index=False):\n", + " testDf = pd.DataFrame(clusterSeries, columns=['Cluster'])\n", + " if index is False:\n", + " return pd.DataFrame((pd.DataFrame(pd.value_counts((testDf['Cluster'].values))).values/len(df_pca)), columns=['Cluster'])\n", + " else:\n", + " return pd.DataFrame((pd.DataFrame(pd.value_counts((testDf['Cluster'].values))).values/len(df_pca)), columns=['Cluster'], index=index)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 187, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "customerClustersPerc = findClusterPerc(customerClusters, df_pca, index=index_cust)" + ] + }, + { + "cell_type": "code", + "execution_count": 188, + "metadata": {}, + "outputs": [], + "source": [ + "popClustersPerc = findClusterPerc(popClusters, df_pca_orig)" + ] + }, + { + "cell_type": "code", + "execution_count": 189, + "metadata": {}, + "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", + "
Cluster
00.150381
10.116970
20.109083
30.085024
40.083069
50.076155
60.074252
70.072013
80.069232
90.052604
100.045414
110.025454
130.013002
140.010118
150.007621
160.006639
170.002755
180.000215
\n", + "
" + ], + "text/plain": [ + " Cluster\n", + "0 0.150381\n", + "1 0.116970\n", + "2 0.109083\n", + "3 0.085024\n", + "4 0.083069\n", + "5 0.076155\n", + "6 0.074252\n", + "7 0.072013\n", + "8 0.069232\n", + "9 0.052604\n", + "10 0.045414\n", + "11 0.025454\n", + "13 0.013002\n", + "14 0.010118\n", + "15 0.007621\n", + "16 0.006639\n", + "17 0.002755\n", + "18 0.000215" + ] + }, + "execution_count": 189, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerClustersPerc\n", + "# popClustersPerc" + ] + }, + { + "cell_type": "code", + "execution_count": 190, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 190, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "f, axes = plt.subplots(1, 2, figsize=(25, 10))\n", + "sns.barplot(y=customerClustersPerc['Cluster'], x=customerClustersPerc.index, ax=axes[0])\n", + "sns.barplot(y=popClustersPerc['Cluster'], x=popClustersPerc.index, ax=axes[1])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We can see that in the left graph which represents the customer data, there are relatively more people towards the first clusters. On the right which represents our population data, it is more evenly spread out between the clusters." + ] + }, + { + "cell_type": "code", + "execution_count": 191, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "632125\n", + "891187\n" + ] + } + ], + "source": [ + "print(pd.DataFrame(df_pca_orig).index.max())\n", + "print(anomaliesU_compare.index.max())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 3.3: Compare Customer Data to Demographics Data\n", + "\n", + "At this point, you have clustered data based on demographics of the general population of Germany, and seen how the customer data for a mail-order sales company maps onto those demographic clusters. In this final substep, you will compare the two cluster distributions to see where the strongest customer base for the company is.\n", + "\n", + "Consider the proportion of persons in each cluster for the general population, and the proportions for the customers. If we think the company's customer base to be universal, then the cluster assignment proportions should be fairly similar between the two. If there are only particular segments of the population that are interested in the company's products, then we should see a mismatch from one to the other. If there is a higher proportion of persons in a cluster for the customer data compared to the general population (e.g. 5% of persons are assigned to a cluster for the general population, but 15% of the customer data is closest to that cluster's centroid) then that suggests the people in that cluster to be a target audience for the company. On the other hand, the proportion of the data in a cluster being larger in the general population than the customer data (e.g. only 2% of customers closest to a population centroid that captures 6% of the data) suggests that group of persons to be outside of the target demographics.\n", + "\n", + "Take a look at the following points in this step:\n", + "\n", + "- Compute the proportion of data points in each cluster for the general population and the customer data. Visualizations will be useful here: both for the individual dataset proportions, but also to visualize the ratios in cluster representation between groups. Seaborn's [`countplot()`](https://seaborn.pydata.org/generated/seaborn.countplot.html) or [`barplot()`](https://seaborn.pydata.org/generated/seaborn.barplot.html) function could be handy.\n", + " - Recall the analysis you performed in step 1.1.3 of the project, where you separated out certain data points from the dataset if they had more than a specified threshold of missing values. If you found that this group was qualitatively different from the main bulk of the data, you should treat this as an additional data cluster in this analysis. Make sure that you account for the number of data points in this subset, for both the general population and customer datasets, when making your computations!\n", + "- Which cluster or clusters are overrepresented in the customer dataset compared to the general population? Select at least one such cluster and infer what kind of people might be represented by that cluster. Use the principal component interpretations from step 2.3 or look at additional components to help you make this inference. Alternatively, you can use the `.inverse_transform()` method of the PCA and StandardScaler objects to transform centroids back to the original data space and interpret the retrieved values directly.\n", + "- Perform a similar investigation for the underrepresented clusters. Which cluster or clusters are underrepresented in the customer dataset compared to the general population, and what kinds of people are typified by these clusters?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Compare the proportion of data in each cluster for the customer data to the\n", + "# proportion of data in each cluster for the general population.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# What kinds of people are part of a cluster that is overrepresented in the\n", + "# customer data compared to the general population?\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# What kinds of people are part of a cluster that is underrepresented in the\n", + "# customer data compared to the general population?\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 3.3: Compare Customer Data to Demographics Data\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting findings and conclusions from the clustering analysis. Can we describe segments of the population that are relatively popular with the mail-order company, or relatively unpopular with the company?)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "> Congratulations on making it this far in the project! Before you finish, make sure to check through the entire notebook from top to bottom to make sure that your analysis follows a logical flow and all of your findings are documented in **Discussion** cells. Once you've checked over all of your work, you should export the notebook as an HTML document to submit for evaluation. You can do this from the menu, navigating to **File -> Download as -> HTML (.html)**. You will submit both that document and this notebook for your project submission." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/python/Unsupervised Learning/Project/AZDIAS_Feature_Summary.csv b/python/Unsupervised Learning/Project/AZDIAS_Feature_Summary.csv new file mode 100644 index 0000000..eaedb58 --- /dev/null +++ b/python/Unsupervised Learning/Project/AZDIAS_Feature_Summary.csv @@ -0,0 +1,86 @@ +attribute;information_level;type;missing_or_unknown +AGER_TYP;person;categorical;[-1,0] +ALTERSKATEGORIE_GROB;person;ordinal;[-1,0,9] +ANREDE_KZ;person;categorical;[-1,0] +CJT_GESAMTTYP;person;categorical;[0] +FINANZ_MINIMALIST;person;ordinal;[-1] +FINANZ_SPARER;person;ordinal;[-1] +FINANZ_VORSORGER;person;ordinal;[-1] +FINANZ_ANLEGER;person;ordinal;[-1] +FINANZ_UNAUFFAELLIGER;person;ordinal;[-1] +FINANZ_HAUSBAUER;person;ordinal;[-1] +FINANZTYP;person;categorical;[-1] +GEBURTSJAHR;person;numeric;[0] +GFK_URLAUBERTYP;person;categorical;[] +GREEN_AVANTGARDE;person;categorical;[] +HEALTH_TYP;person;ordinal;[-1,0] +LP_LEBENSPHASE_FEIN;person;mixed;[0] +LP_LEBENSPHASE_GROB;person;mixed;[0] +LP_FAMILIE_FEIN;person;categorical;[0] +LP_FAMILIE_GROB;person;categorical;[0] +LP_STATUS_FEIN;person;categorical;[0] +LP_STATUS_GROB;person;categorical;[0] +NATIONALITAET_KZ;person;categorical;[-1,0] +PRAEGENDE_JUGENDJAHRE;person;mixed;[-1,0] +RETOURTYP_BK_S;person;ordinal;[0] +SEMIO_SOZ;person;ordinal;[-1,9] +SEMIO_FAM;person;ordinal;[-1,9] +SEMIO_REL;person;ordinal;[-1,9] +SEMIO_MAT;person;ordinal;[-1,9] +SEMIO_VERT;person;ordinal;[-1,9] +SEMIO_LUST;person;ordinal;[-1,9] +SEMIO_ERL;person;ordinal;[-1,9] +SEMIO_KULT;person;ordinal;[-1,9] +SEMIO_RAT;person;ordinal;[-1,9] +SEMIO_KRIT;person;ordinal;[-1,9] +SEMIO_DOM;person;ordinal;[-1,9] +SEMIO_KAEM;person;ordinal;[-1,9] +SEMIO_PFLICHT;person;ordinal;[-1,9] +SEMIO_TRADV;person;ordinal;[-1,9] +SHOPPER_TYP;person;categorical;[-1] +SOHO_KZ;person;categorical;[-1] +TITEL_KZ;person;categorical;[-1,0] +VERS_TYP;person;categorical;[-1] +ZABEOTYP;person;categorical;[-1,9] +ALTER_HH;household;interval;[0] +ANZ_PERSONEN;household;numeric;[] +ANZ_TITEL;household;numeric;[] +HH_EINKOMMEN_SCORE;household;ordinal;[-1,0] +KK_KUNDENTYP;household;categorical;[-1] +W_KEIT_KIND_HH;household;ordinal;[-1,0] +WOHNDAUER_2008;household;ordinal;[-1,0] +ANZ_HAUSHALTE_AKTIV;building;numeric;[0] +ANZ_HH_TITEL;building;numeric;[] +GEBAEUDETYP;building;categorical;[-1,0] +KONSUMNAEHE;building;ordinal;[] +MIN_GEBAEUDEJAHR;building;numeric;[0] +OST_WEST_KZ;building;categorical;[-1] +WOHNLAGE;building;mixed;[-1] +CAMEO_DEUG_2015;microcell_rr4;categorical;[-1,X] +CAMEO_DEU_2015;microcell_rr4;categorical;[XX] +CAMEO_INTL_2015;microcell_rr4;mixed;[-1,XX] +KBA05_ANTG1;microcell_rr3;ordinal;[-1] +KBA05_ANTG2;microcell_rr3;ordinal;[-1] +KBA05_ANTG3;microcell_rr3;ordinal;[-1] +KBA05_ANTG4;microcell_rr3;ordinal;[-1] +KBA05_BAUMAX;microcell_rr3;mixed;[-1,0] +KBA05_GBZ;microcell_rr3;ordinal;[-1,0] +BALLRAUM;postcode;ordinal;[-1] +EWDICHTE;postcode;ordinal;[-1] +INNENSTADT;postcode;ordinal;[-1] +GEBAEUDETYP_RASTER;region_rr1;ordinal;[] +KKK;region_rr1;ordinal;[-1,0] +MOBI_REGIO;region_rr1;ordinal;[] +ONLINE_AFFINITAET;region_rr1;ordinal;[] +REGIOTYP;region_rr1;ordinal;[-1,0] +KBA13_ANZAHL_PKW;macrocell_plz8;numeric;[] +PLZ8_ANTG1;macrocell_plz8;ordinal;[-1] +PLZ8_ANTG2;macrocell_plz8;ordinal;[-1] +PLZ8_ANTG3;macrocell_plz8;ordinal;[-1] +PLZ8_ANTG4;macrocell_plz8;ordinal;[-1] +PLZ8_BAUMAX;macrocell_plz8;mixed;[-1,0] +PLZ8_HHZ;macrocell_plz8;ordinal;[-1] +PLZ8_GBZ;macrocell_plz8;ordinal;[-1] +ARBEIT;community;ordinal;[-1,9] +ORTSGR_KLS9;community;ordinal;[-1,0] +RELAT_AB;community;ordinal;[-1,9] diff --git a/python/Unsupervised Learning/Project/Data_Dictionary.md b/python/Unsupervised Learning/Project/Data_Dictionary.md new file mode 100644 index 0000000..250dfa4 --- /dev/null +++ b/python/Unsupervised Learning/Project/Data_Dictionary.md @@ -0,0 +1,270 @@ + + + + + + + Data_Dictionary.md (editing) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+
+ + +
+ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/python/Unsupervised Learning/Project/Identify_Customer_Segments.html b/python/Unsupervised Learning/Project/Identify_Customer_Segments.html new file mode 100644 index 0000000..f5c960c --- /dev/null +++ b/python/Unsupervised Learning/Project/Identify_Customer_Segments.html @@ -0,0 +1,26907 @@ + + + + +Identify_Customer_Segments + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+
+

Project: Identify Customer Segments

In this project, you will apply unsupervised learning techniques to identify segments of the population that form the core customer base for a mail-order sales company in Germany. These segments can then be used to direct marketing campaigns towards audiences that will have the highest expected rate of returns. The data that you will use has been provided by our partners at Bertelsmann Arvato Analytics, and represents a real-life data science task.

+

This notebook will help you complete this task by providing a framework within which you will perform your analysis steps. In each step of the project, you will see some text describing the subtask that you will perform, followed by one or more code cells for you to complete your work. Feel free to add additional code and markdown cells as you go along so that you can explore everything in precise chunks. The code cells provided in the base template will outline only the major tasks, and will usually not be enough to cover all of the minor tasks that comprise it.

+

It should be noted that while there will be precise guidelines on how you should handle certain tasks in the project, there will also be places where an exact specification is not provided. There will be times in the project where you will need to make and justify your own decisions on how to treat the data. These are places where there may not be only one way to handle the data. In real-life tasks, there may be many valid ways to approach an analysis task. One of the most important things you can do is clearly document your approach so that other scientists can understand the decisions you've made.

+

At the end of most sections, there will be a Markdown cell labeled Discussion. In these cells, you will report your findings for the completed section, as well as document the decisions that you made in your approach to each subtask. Your project will be evaluated not just on the code used to complete the tasks outlined, but also your communication about your observations and conclusions at each stage.

+ +
+
+
+
+
+
In [1]:
+
+
+
# import libraries here; add more as necessary
+import numpy as np
+import pandas as pd
+import matplotlib.pyplot as plt
+import seaborn as sns
+
+# magic word for producing visualizations in notebook
+%matplotlib inline
+
+ +
+
+
+ +
+
+
+
+

Step 0: Load the Data

There are four files associated with this project (not including this one):

+
    +
  • Udacity_AZDIAS_Subset.csv: Demographics data for the general population of Germany; 891211 persons (rows) x 85 features (columns).
  • +
  • Udacity_CUSTOMERS_Subset.csv: Demographics data for customers of a mail-order company; 191652 persons (rows) x 85 features (columns).
  • +
  • Data_Dictionary.md: Detailed information file about the features in the provided datasets.
  • +
  • AZDIAS_Feature_Summary.csv: Summary of feature attributes for demographics data; 85 features (rows) x 4 columns
  • +
+

Each row of the demographics files represents a single person, but also includes information outside of individuals, including information about their household, building, and neighborhood. You will use this information to cluster the general population into groups with similar demographic properties. Then, you will see how the people in the customers dataset fit into those created clusters. The hope here is that certain clusters are over-represented in the customers data, as compared to the general population; those over-represented clusters will be assumed to be part of the core userbase. This information can then be used for further applications, such as targeting for a marketing campaign.

+

To start off with, load in the demographics data for the general population into a pandas DataFrame, and do the same for the feature attributes summary. Note for all of the .csv data files in this project: they're semicolon (;) delimited, so you'll need an additional argument in your read_csv() call to read in the data properly. Also, considering the size of the main dataset, it may take some time for it to load completely.

+

Once the dataset is loaded, it's recommended that you take a little bit of time just browsing the general structure of the dataset and feature summary file. You'll be getting deep into the innards of the cleaning in the first major step of the project, so gaining some general familiarity can help you get your bearings.

+ +
+
+
+
+
+
In [2]:
+
+
+
# Load in the general demographics data.
+azdias = pd.read_csv('Udacity_AZDIAS_Subset.csv', sep=';')
+
+# Load in the feature summary file.
+feat_info = pd.read_csv('AZDIAS_Feature_Summary.csv', sep=';')
+
+ +
+
+
+ +
+
+
+
In [3]:
+
+
+
# Check the structure of the data after it's loaded (e.g. print the number of
+# rows and columns, print the first few rows).
+
+azdias_shape=azdias.shape
+feat_shape=feat_info.shape
+
+print(f'azdias shape is {azdias_shape}. feat shape is {feat_shape}')
+
+azdias.head(10)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
azdias shape is (891221, 85). feat shape is (85, 4)
+
+
+
+ +
+ +
Out[3]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
0-1212.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
1-1125.0152545...2.03.02.01.01.05.04.03.05.04.0
2-1323.0141235...3.03.01.00.01.04.04.03.05.02.0
32422.0425212...2.02.02.00.01.03.04.02.03.03.0
4-1315.0434132...2.04.02.01.02.03.03.04.06.05.0
53122.0315225...2.03.01.01.01.05.05.02.03.03.0
6-1225.0151543...3.03.01.00.01.05.05.04.06.03.0
7-1113.0334132...3.03.01.00.01.04.04.02.05.02.0
8-1313.0442422...2.03.02.01.01.03.03.02.04.03.0
9-1324.0242354...2.03.02.01.01.03.03.02.03.01.0
+

10 rows × 85 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
In [4]:
+
+
+
feat_info.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[4]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attributeinformation_leveltypemissing_or_unknown
0AGER_TYPpersoncategorical[-1,0]
1ALTERSKATEGORIE_GROBpersonordinal[-1,0,9]
2ANREDE_KZpersoncategorical[-1,0]
3CJT_GESAMTTYPpersoncategorical[0]
4FINANZ_MINIMALISTpersonordinal[-1]
+
+
+ +
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
+

Tip: Add additional cells to keep everything in reasonably-sized chunks! Keyboard shortcut esc --> a (press escape to enter command mode, then press the 'A' key) adds a new cell before the active cell, and esc --> b adds a new cell after the active cell. If you need to convert an active cell to a markdown cell, use esc --> m and to convert to a code cell, use esc --> y.

+
+

Step 1: Preprocessing

Step 1.1: Assess Missing Data

The feature summary file contains a summary of properties for each demographics data column. You will use this file to help you make cleaning decisions during this stage of the project. First of all, you should assess the demographics data in terms of missing data. Pay attention to the following points as you perform your analysis, and take notes on what you observe. Make sure that you fill in the Discussion cell with your findings and decisions at the end of each step that has one!

+

Step 1.1.1: Convert Missing Value Codes to NaNs

The fourth column of the feature attributes summary (loaded in above as feat_info) documents the codes from the data dictionary that indicate missing or unknown data. While the file encodes this as a list (e.g. [-1,0]), this will get read in as a string object. You'll need to do a little bit of parsing to make use of it to identify and clean the data. Convert data that matches a 'missing' or 'unknown' value code into a numpy NaN value. You might want to see how much data takes on a 'missing' or 'unknown' code, and how much data is naturally missing, as a point of interest.

+

As one more reminder, you are encouraged to add additional cells to break up your analysis into manageable chunks.

+ +
+
+
+
+
+
+

The following will replace the indexes with np.na in the dataframe:

+ +
+
+
+
+
+
In [5]:
+
+
+
feat_list = feat_info['missing_or_unknown'].tolist()
+missing_list = []
+
+for i in feat_list:
+    subcount = 0
+    i = i.replace('[', '')
+    i = i.replace(']', '')
+    i = i.split(',')
+    missing_list.append(i)
+
+ +
+
+
+ +
+
+
+
In [6]:
+
+
+
def replace(value, items, **kwargs):
+    for i in items:
+        try:
+            if value == np.int(i):
+                return np.nan
+            else:
+                pass
+        except ValueError:
+            if value == str(i):
+                return np.nan
+            else:
+                pass
+    return value
+
+ +
+
+
+ +
+
+
+
In [7]:
+
+
+
for col, index in zip(azdias, range(len(missing_list))):
+    print(col, index)
+    azdias.iloc[:,index] = azdias.iloc[:,index].apply(replace, items=missing_list[index], axis=1)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
AGER_TYP 0
+ALTERSKATEGORIE_GROB 1
+ANREDE_KZ 2
+CJT_GESAMTTYP 3
+FINANZ_MINIMALIST 4
+FINANZ_SPARER 5
+FINANZ_VORSORGER 6
+FINANZ_ANLEGER 7
+FINANZ_UNAUFFAELLIGER 8
+FINANZ_HAUSBAUER 9
+FINANZTYP 10
+GEBURTSJAHR 11
+GFK_URLAUBERTYP 12
+GREEN_AVANTGARDE 13
+HEALTH_TYP 14
+LP_LEBENSPHASE_FEIN 15
+LP_LEBENSPHASE_GROB 16
+LP_FAMILIE_FEIN 17
+LP_FAMILIE_GROB 18
+LP_STATUS_FEIN 19
+LP_STATUS_GROB 20
+NATIONALITAET_KZ 21
+PRAEGENDE_JUGENDJAHRE 22
+RETOURTYP_BK_S 23
+SEMIO_SOZ 24
+SEMIO_FAM 25
+SEMIO_REL 26
+SEMIO_MAT 27
+SEMIO_VERT 28
+SEMIO_LUST 29
+SEMIO_ERL 30
+SEMIO_KULT 31
+SEMIO_RAT 32
+SEMIO_KRIT 33
+SEMIO_DOM 34
+SEMIO_KAEM 35
+SEMIO_PFLICHT 36
+SEMIO_TRADV 37
+SHOPPER_TYP 38
+SOHO_KZ 39
+TITEL_KZ 40
+VERS_TYP 41
+ZABEOTYP 42
+ALTER_HH 43
+ANZ_PERSONEN 44
+ANZ_TITEL 45
+HH_EINKOMMEN_SCORE 46
+KK_KUNDENTYP 47
+W_KEIT_KIND_HH 48
+WOHNDAUER_2008 49
+ANZ_HAUSHALTE_AKTIV 50
+ANZ_HH_TITEL 51
+GEBAEUDETYP 52
+KONSUMNAEHE 53
+MIN_GEBAEUDEJAHR 54
+OST_WEST_KZ 55
+WOHNLAGE 56
+CAMEO_DEUG_2015 57
+CAMEO_DEU_2015 58
+CAMEO_INTL_2015 59
+KBA05_ANTG1 60
+KBA05_ANTG2 61
+KBA05_ANTG3 62
+KBA05_ANTG4 63
+KBA05_BAUMAX 64
+KBA05_GBZ 65
+BALLRAUM 66
+EWDICHTE 67
+INNENSTADT 68
+GEBAEUDETYP_RASTER 69
+KKK 70
+MOBI_REGIO 71
+ONLINE_AFFINITAET 72
+REGIOTYP 73
+KBA13_ANZAHL_PKW 74
+PLZ8_ANTG1 75
+PLZ8_ANTG2 76
+PLZ8_ANTG3 77
+PLZ8_ANTG4 78
+PLZ8_BAUMAX 79
+PLZ8_HHZ 80
+PLZ8_GBZ 81
+ARBEIT 82
+ORTSGR_KLS9 83
+RELAT_AB 84
+
+
+
+ +
+
+ +
+
+
+
In [8]:
+
+
+
azdias.head(20)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[8]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
0NaN2.012.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
1NaN1.025.0152545...2.03.02.01.01.05.04.03.05.04.0
2NaN3.023.0141235...3.03.01.00.01.04.04.03.05.02.0
32.04.022.0425212...2.02.02.00.01.03.04.02.03.03.0
4NaN3.015.0434132...2.04.02.01.02.03.03.04.06.05.0
53.01.022.0315225...2.03.01.01.01.05.05.02.03.03.0
6NaN2.025.0151543...3.03.01.00.01.05.05.04.06.03.0
7NaN1.013.0334132...3.03.01.00.01.04.04.02.05.02.0
8NaN3.013.0442422...2.03.02.01.01.03.03.02.04.03.0
9NaN3.024.0242354...2.03.02.01.01.03.03.02.03.01.0
10NaN3.021.0225315...2.04.02.00.02.03.03.04.06.05.0
11NaN2.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
12NaN3.016.0534241...3.03.01.00.01.05.05.03.06.04.0
13NaN1.025.0143552...2.01.01.01.01.03.03.03.06.04.0
14NaN3.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
151.04.024.0415114...NaNNaNNaNNaNNaNNaNNaN4.08.05.0
16NaN1.021.0431451...3.03.01.00.01.03.04.01.02.01.0
17NaN2.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
18NaN2.026.0241541...2.03.02.01.01.03.03.03.04.03.0
19NaN3.013.0523131...2.04.02.01.02.05.04.04.06.03.0
+

20 rows × 85 columns

+
+
+ +
+ +
+
+ +
+
+
+
+

Step 1.1.2: Assess Missing Data in Each Column

How much missing data is present in each column? There are a few columns that are outliers in terms of the proportion of values that are missing. You will want to use matplotlib's hist() function to visualize the distribution of missing value counts to find these columns. Identify and document these columns. While some of these columns might have justifications for keeping or re-encoding the data, for this project you should just remove them from the dataframe. (Feel free to make remarks about these outlier columns in the discussion, however!)

+

For the remaining features, are there any patterns in which columns have, or share, missing data?

+ +
+
+
+
+
+
+

Answer

Rather than using a histogram which is cumbersome to plot, we can achieve the same result by finding how many missing values make up the entire column. We can sort this in descending order and we can see which columns have the most missing values.

+ +
+
+
+
+
+
In [9]:
+
+
+
# Perform an assessment of how much missing data there is in each column of the
+# dataset.
+import seaborn as sns
+import matplotlib.pyplot as plt
+
+null_col_count = azdias.isnull().sum(axis=0)
+# print(null_col_count)
+
+ +
+
+
+ +
+
+
+
In [10]:
+
+
+
ax_rows = azdias.shape[0]
+
+ +
+
+
+ +
+
+
+
In [11]:
+
+
+
def findTotal(value, total):
+    return value/total
+
+ +
+
+
+ +
+
+
+
In [12]:
+
+
+
anomalies = null_col_count.apply(findTotal, total=ax_rows).sort_values(ascending=False)
+
+ +
+
+
+ +
+
+
+
+

Answer

There are six columns that I would consdier to be anomalies in terms of missing values, they are:

+ +
+
+
+
+
+
In [13]:
+
+
+
anomalies[0:6]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[13]:
+ + + + +
+
TITEL_KZ        0.997576
+AGER_TYP        0.769554
+KK_KUNDENTYP    0.655967
+KBA05_BAUMAX    0.534687
+GEBURTSJAHR     0.440203
+ALTER_HH        0.348137
+dtype: float64
+
+ +
+ +
+
+ +
+
+
+
+

We can drop these columns:

+ +
+
+
+
+
+
In [14]:
+
+
+
azdias.drop(['TITEL_KZ', 'AGER_TYP', 'KK_KUNDENTYP', 'KBA05_BAUMAX', 'GEBURTSJAHR', 'ALTER_HH'], axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [15]:
+
+
+
assert azdias_shape[1]-6 == azdias.shape[1]
+
+ +
+
+
+ +
+
+
+
+

Answer

To find patterns we can use seaborn heatmap with pd.isnull()

+ +
+
+
+
+
+
In [16]:
+
+
+
azdias.shape[1]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[16]:
+ + + + +
+
79
+
+ +
+ +
+
+ +
+
+
+
In [17]:
+
+
+
plt.subplots(figsize=(20,15))
+sns.heatmap(azdias.iloc[:,0:30].isnull(), cbar=False)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[17]:
+ + + + +
+
<matplotlib.axes._subplots.AxesSubplot at 0x7fb35ec8e780>
+
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
In [18]:
+
+
+
plt.subplots(figsize=(20,15))
+sns.heatmap(azdias.iloc[:,30:60].isnull(), cbar=False)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[18]:
+ + + + +
+
<matplotlib.axes._subplots.AxesSubplot at 0x7fb35e63fe80>
+
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
In [19]:
+
+
+
plt.subplots(figsize=(20,15))
+sns.heatmap(azdias.iloc[:,60:80].isnull(), cbar=False)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[19]:
+ + + + +
+
<matplotlib.axes._subplots.AxesSubplot at 0x7fb35dcf23c8>
+
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
In [20]:
+
+
+
# Remove the outlier columns from the dataset. (You'll perform other data
+# engineering tasks such as re-encoding and imputation later.)
+
+columnList = azdias.columns.values
+columnPatternIndexes = [12, 13, 14, 15 ,16 , 19, 20, 36, 37, 38, 40, 41, 43, 44, 46,
+                        46, 47, 48, 49, 50 ,51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
+                        61, 62, 63, 64, 65, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
+                        77, 78]
+print(f'Total no. of columns with pattern in nan values: {len(columnPatternIndexes)}')
+print(f'Total no. of columns without pattern in nan values: {len(columnList)-len(columnPatternIndexes)}')
+# print(f'{anomalies[6:]}')
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
Total no. of columns with pattern in nan values: 47
+Total no. of columns without pattern in nan values: 32
+
+
+
+ +
+
+ +
+
+
+
+

Answer

Discussion 1.1.2: Assess Missing Data in Each Column

In total I found 6 columns that I determined to have unusually high levels of nan values for the data and as such I dropped them from the dataframe.

+

I found 47 columns that appear to have a pattern in missing data. We can see that this pattern is fairly consistent throughout the dataset.

+

There are a lot of columns in this data set, however looking through the data dictionary I can see that many of the categories are of the form:

+

N (detailed scale) or (rough scale)

+

where N could be anything from Wealth status to family. As the data is looking at regional areas, it makes sense that if data is missing for one area, it would be missing for all the other categories as well.

+

For example, PLZ8_ANTG1, PLZ8_ANTG2 and PLZ8_ANTG3 all describe the number of family houses in the PLZ8 region by size of family (1-2 people, 3-5 people etc). If this information is missing in PLZ8_ANTG1, then it makes sense that is also missing in the same region for the other categories. This could explain why we see patterns throughout the entire dataset

+ +
+
+
+
+
+
+

Step 1.1.3: Assess Missing Data in Each Row

Now, you'll perform a similar assessment for the rows of the dataset. How much data is missing in each row? As with the columns, you should see some groups of points that have a very different numbers of missing values. Divide the data into two subsets: one for data points that are above some threshold for missing values, and a second subset for points below that threshold.

+

In order to know what to do with the outlier rows, we should see if the distribution of data values on columns that are not missing data (or are missing very little data) are similar or different between the two groups. Select at least five of these columns and compare the distribution of values.

+
    +
  • You can use seaborn's countplot() function to create a bar chart of code frequencies and matplotlib's subplot() function to put bar charts for the two subplots side by side.
  • +
  • To reduce repeated code, you might want to write a function that can perform this comparison, taking as one of its arguments a column to be compared.
  • +
+

Depending on what you observe in your comparison, this will have implications on how you approach your conclusions later in the analysis. If the distributions of non-missing features look similar between the data with many missing values and the data with few or no missing values, then we could argue that simply dropping those points from the analysis won't present a major issue. On the other hand, if the data with many missing values looks very different from the data with few or no missing values, then we should make a note on those data as special. We'll revisit these data later on. Either way, you should continue your analysis for now using just the subset of the data with few or no missing values.

+ +
+
+
+
+
+
+

Answer

We can repeat what we did above but for the rows. I will transpose the dataframe and repeat the same steps as before.

+ +
+
+
+
+
+
In [21]:
+
+
+
## Testing ignore this cell
+
+# How much data is missing in each row of the dataset?
+null_row_count = azdias.isnull().sum(axis=1)
+null_row_count = pd.DataFrame(null_row_count)
+null_row_count.columns = ['null_count']
+# null_row_count.sample(frac=1).head(30)
+# null_row_count.groupby('null_count').agg({'null_count': 'count'})
+
+ +
+
+
+ +
+
+
+
In [22]:
+
+
+
azdiasT = azdias.transpose()
+azdiasT.head(2)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[22]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
0123456789...891211891212891213891214891215891216891217891218891219891220
ALTERSKATEGORIE_GROB2134312133...3441232214
ANREDE_KZ1222122112...1122221211
+

2 rows × 891221 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [23]:
+
+
+
null_row_count = azdiasT.isnull().sum(axis=0)
+
+axT_rows = azdiasT.shape[0]
+print(axT_rows)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
79
+
+
+
+ +
+
+ +
+
+
+
In [24]:
+
+
+
print(null_row_count.head(5))
+print()
+print(null_row_count.shape)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
0    43
+1     0
+2     0
+3     7
+4     0
+dtype: int64
+
+(891221,)
+
+
+
+ +
+
+ +
+
+
+
In [25]:
+
+
+
anomaliesT_f = null_row_count.apply(findTotal, total=axT_rows).sort_values(ascending=False)
+anomaliesT_f.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[25]:
+ + + + +
+
643174    0.620253
+732775    0.620253
+472919    0.607595
+183108    0.594937
+139316    0.594937
+dtype: float64
+
+ +
+ +
+
+ +
+
+
+
In [26]:
+
+
+
anomaliesT_f = pd.DataFrame(anomaliesT_f)
+# anomaliesT.iloc[0:5,0]
+print(anomaliesT_f.describe())
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
                   0
+count  891221.000000
+mean        0.071518
+std         0.167528
+min         0.000000
+25%         0.000000
+50%         0.000000
+75%         0.037975
+max         0.620253
+
+
+
+ +
+
+ +
+
+
+
In [27]:
+
+
+
for i in range(85, 92):
+    print(f'{i}% percentile: {anomaliesT_f.quantile(q=i*0.01)[0]:.4f}')
+limit = anomaliesT_f.quantile(q=0.9)[0]
+print(f'\nLimit is {limit}')
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
85% percentile: 0.1013
+86% percentile: 0.1013
+87% percentile: 0.1266
+88% percentile: 0.1646
+89% percentile: 0.2025
+90% percentile: 0.4304
+91% percentile: 0.4304
+
+Limit is 0.43037974683544306
+
+
+
+ +
+
+ +
+
+
+
+

Answer

As there is a much larger jump from the 89th to 90th percentile (a factor of around 113%) I would say our threshold for the split for the rows should be those which have 43% or higher missing values of the total data in the top category (denoted as anomaliesU), and those that are less than 43% in the bottom category (denoted as anomaliesL).

+ +
+
+
+
+
+
In [28]:
+
+
+
import collections
+print(collections.Counter(null_row_count))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
Counter({0: 623209, 47: 45578, 2: 27926, 43: 27369, 8: 24592, 5: 22515, 3: 17629, 1: 15738, 6: 13771, 7: 13714, 4: 12607, 34: 10816, 10: 5410, 15: 4743, 35: 3911, 13: 3255, 9: 3042, 33: 2985, 16: 2505, 14: 2243, 19: 1180, 11: 1127, 12: 766, 17: 677, 37: 538, 45: 494, 18: 428, 38: 421, 41: 356, 20: 349, 32: 206, 44: 155, 21: 150, 40: 137, 23: 132, 22: 129, 36: 84, 39: 77, 24: 69, 26: 59, 25: 55, 27: 24, 42: 21, 29: 12, 30: 6, 28: 5, 31: 3, 49: 2, 48: 1})
+
+
+
+ +
+
+ +
+
+
+
+

Answer

We will now split the dataframe into 2 categories, and then compare the columns of the original matrix like before

+ +
+
+
+
+
+
In [29]:
+
+
+
# Write code to divide the data into two subsets based on the number of missing
+# values in each row.a
+anomaliesU = anomaliesT_f[(anomaliesT_f>=limit)]
+anomaliesU.dropna(inplace=True)
+print(anomaliesU.describe())
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
                  0
+count  89960.000000
+mean       0.550983
+std        0.057724
+min        0.430380
+25%        0.544304
+50%        0.594937
+75%        0.594937
+max        0.620253
+
+
+
+ +
+
+ +
+
+
+
In [30]:
+
+
+
anomaliesL = anomaliesT_f[(anomaliesT_f<limit)]
+anomaliesL.dropna(inplace=True)
+print(anomaliesL.describe())
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
                   0
+count  801261.000000
+mean        0.017687
+std         0.046201
+min         0.000000
+25%         0.000000
+50%         0.000000
+75%         0.000000
+max         0.417722
+
+
+
+ +
+
+ +
+
+
+
+

Answer

We check that our dataframes match the original row totals:

+ +
+
+
+
+
+
In [31]:
+
+
+
assert ((anomaliesL.shape[0] + anomaliesU.shape[0]) == azdias.shape[0])
+
+ +
+
+
+ +
+
+
+
In [32]:
+
+
+
print(f'We have droped {100*anomaliesU.shape[0]/azdias.shape[0]:.0f}% of rows')
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
We have droped 10% of rows
+
+
+
+ +
+
+ +
+
+
+
+

Answer

As we took the 90th percentile, this confirms we have dropped the right amount. I am unsure at this stage if we have dropped too much. For the sake of the project I will commit to the values I initially chose, and only revise this later if we see a huge detriment to the model.

+ +
+
+
+
+
+
In [33]:
+
+
+
# anomaliesT.iloc[anomaliesU.index]
+anomaliesU = azdias.iloc[anomaliesU.index]
+
+ +
+
+
+ +
+
+
+
In [34]:
+
+
+
print(anomaliesU.shape)
+print(anomaliesU.sample(frac=True).head(10))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
(89960, 79)
+        ALTERSKATEGORIE_GROB  ANREDE_KZ  CJT_GESAMTTYP  FINANZ_MINIMALIST  \
+455227                   2.0          2            1.0                  3   
+7661                     1.0          2            4.0                  1   
+581535                   4.0          2            5.0                  4   
+523278                   2.0          1            4.0                  5   
+109567                   2.0          2            6.0                  3   
+545797                   3.0          1            5.0                  5   
+473310                   3.0          2            6.0                  3   
+246673                   1.0          2            6.0                  3   
+747422                   3.0          1            4.0                  3   
+765381                   2.0          2            6.0                  3   
+
+        FINANZ_SPARER  FINANZ_VORSORGER  FINANZ_ANLEGER  \
+455227              4                 3               5   
+7661                5                 3               5   
+581535              1                 5               2   
+523278              3                 4               3   
+109567              4                 3               5   
+545797              2                 4               3   
+473310              4                 3               5   
+246673              4                 3               5   
+747422              4                 3               5   
+765381              4                 3               5   
+
+        FINANZ_UNAUFFAELLIGER  FINANZ_HAUSBAUER  FINANZTYP    ...     \
+455227                      5                 3          4    ...      
+7661                        5                 3          1    ...      
+581535                      2                 4          2    ...      
+523278                      3                 1          3    ...      
+109567                      5                 3          4    ...      
+545797                      3                 1          3    ...      
+473310                      5                 3          4    ...      
+246673                      5                 3          4    ...      
+747422                      5                 3          4    ...      
+765381                      5                 3          4    ...      
+
+        PLZ8_ANTG1  PLZ8_ANTG2  PLZ8_ANTG3  PLZ8_ANTG4  PLZ8_BAUMAX  PLZ8_HHZ  \
+455227         NaN         NaN         NaN         NaN          NaN       NaN   
+7661           NaN         NaN         NaN         NaN          NaN       NaN   
+581535         NaN         NaN         NaN         NaN          NaN       NaN   
+523278         NaN         NaN         NaN         NaN          NaN       NaN   
+109567         NaN         NaN         NaN         NaN          NaN       NaN   
+545797         NaN         NaN         NaN         NaN          NaN       NaN   
+473310         NaN         NaN         NaN         NaN          NaN       NaN   
+246673         NaN         NaN         NaN         NaN          NaN       NaN   
+747422         NaN         NaN         NaN         NaN          NaN       NaN   
+765381         NaN         NaN         NaN         NaN          NaN       NaN   
+
+        PLZ8_GBZ  ARBEIT  ORTSGR_KLS9  RELAT_AB  
+455227       NaN     NaN          NaN       NaN  
+7661         NaN     NaN          NaN       NaN  
+581535       NaN     NaN          NaN       NaN  
+523278       NaN     NaN          NaN       NaN  
+109567       NaN     NaN          NaN       NaN  
+545797       NaN     NaN          NaN       NaN  
+473310       NaN     NaN          NaN       NaN  
+246673       NaN     NaN          NaN       NaN  
+747422       NaN     NaN          NaN       NaN  
+765381       NaN     NaN          NaN       NaN  
+
+[10 rows x 79 columns]
+
+
+
+ +
+
+ +
+
+
+
In [35]:
+
+
+
anomaliesL = azdias.iloc[anomaliesL.index]
+
+ +
+
+
+ +
+
+
+
In [36]:
+
+
+
print(anomaliesL.shape)
+print(anomaliesL.sample(frac=True).head(10))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
(801261, 79)
+        ALTERSKATEGORIE_GROB  ANREDE_KZ  CJT_GESAMTTYP  FINANZ_MINIMALIST  \
+553242                   4.0          1            1.0                  3   
+169994                   2.0          1            3.0                  4   
+14476                    4.0          1            5.0                  5   
+686628                   3.0          1            4.0                  4   
+477351                   3.0          2            4.0                  4   
+749545                   1.0          2            3.0                  1   
+559934                   4.0          1            2.0                  4   
+760686                   3.0          1            4.0                  2   
+395366                   3.0          2            3.0                  1   
+568884                   3.0          2            6.0                  5   
+
+        FINANZ_SPARER  FINANZ_VORSORGER  FINANZ_ANLEGER  \
+553242              1                 5               1   
+169994              2                 3               3   
+14476               1                 5               1   
+686628              3                 4               2   
+477351              2                 3               3   
+749545              5                 3               5   
+559934              2                 3               4   
+760686              4                 1               3   
+395366              5                 2               5   
+568884              2                 3               4   
+
+        FINANZ_UNAUFFAELLIGER  FINANZ_HAUSBAUER  FINANZTYP    ...     \
+553242                      1                 5          6    ...      
+169994                      2                 2          6    ...      
+14476                       1                 2          6    ...      
+686628                      4                 3          5    ...      
+477351                      2                 2          6    ...      
+749545                      5                 5          1    ...      
+559934                      1                 3          6    ...      
+760686                      4                 3          4    ...      
+395366                      2                 5          1    ...      
+568884                      2                 1          6    ...      
+
+        PLZ8_ANTG1  PLZ8_ANTG2  PLZ8_ANTG3  PLZ8_ANTG4  PLZ8_BAUMAX  PLZ8_HHZ  \
+553242         1.0         3.0         3.0         2.0          4.0       4.0   
+169994         1.0         4.0         3.0         1.0          3.0       4.0   
+14476          3.0         2.0         1.0         0.0          1.0       4.0   
+686628         3.0         3.0         1.0         1.0          1.0       4.0   
+477351         2.0         3.0         1.0         1.0          1.0       4.0   
+749545         2.0         3.0         1.0         0.0          1.0       5.0   
+559934         1.0         4.0         3.0         2.0          4.0       4.0   
+760686         1.0         4.0         2.0         1.0          2.0       5.0   
+395366         1.0         3.0         3.0         2.0          5.0       5.0   
+568884         2.0         3.0         1.0         0.0          1.0       3.0   
+
+        PLZ8_GBZ  ARBEIT  ORTSGR_KLS9  RELAT_AB  
+553242       2.0     4.0          9.0       3.0  
+169994       3.0     4.0          4.0       5.0  
+14476        5.0     2.0          2.0       1.0  
+686628       4.0     2.0          5.0       1.0  
+477351       4.0     1.0          3.0       1.0  
+749545       5.0     1.0          3.0       1.0  
+559934       2.0     4.0          7.0       3.0  
+760686       4.0     4.0          9.0       3.0  
+395366       3.0     4.0          9.0       3.0  
+568884       3.0     3.0          5.0       2.0  
+
+[10 rows x 79 columns]
+
+
+
+ +
+
+ +
+
+
+
+

Answer

As directed, we will now look at collumns against these two groups. Recall that we have columnPatternIndexes as a list of columns that have a lot of missing values from before, we can drop these columns and sample at random against the remaining columns to see if we can see anything interesting.

+ +
+
+
+
+
+
In [37]:
+
+
+
# Compare the distribution of values for at least five columns where there are
+# no or few missing values, between the two subsets.
+print(f'Number of cols to drop: {len(columnPatternIndexes)}')
+anomaliesL_compare = anomaliesL.drop(anomaliesL.iloc[:,columnPatternIndexes], axis=1)
+print(f'Number of cols kept: {anomaliesL_compare.shape[1]}')
+anomaliesL_compare.head(10)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
Number of cols to drop: 47
+Number of cols kept: 33
+
+
+
+ +
+ +
Out[37]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...SEMIO_RATSEMIO_KRITSEMIO_DOMSEMIO_KAEMSEMIO_PFLICHTSEMIO_TRADVZABEOTYPHH_EINKOMMEN_SCOREANZ_HAUSHALTE_AKTIVONLINE_AFFINITAET
8309541.023.01535531...6766565NaNNaN3.0
8293813.021.04244313...4767433NaNNaN4.0
8418751.014.02535521...41245512.0NaN3.0
8481752.013.04424513...51225552.0NaN2.0
8184891.024.03425524...6766565NaNNaN5.0
2155721.014.02535521...5124555NaNNaN4.0
839513.015.05343313...5323446NaNNaN5.0
2847352.014.04424513...4122555NaNNaN4.0
2582001.026.02535541...6766564NaNNaN3.0
3887353.016.05252322...5323443NaNNaN4.0
+

10 rows × 33 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [38]:
+
+
+
import random
+
+def dataComparison(df):
+    cols = random.sample(list(df.columns.values), 5)
+    f, axes = plt.subplots(1, 5, figsize=(25,4))
+    for i in range(0, 5):
+        sns.countplot(x=cols[i], data=df.fillna('Missing'), ax=axes[i])  
+
+ +
+
+
+ +
+
+
+
+

Answer

Let's look at the data distribution for the Lower group (those that don't have many zero values across the rows)

+ +
+
+
+
+
+
In [39]:
+
+
+
import itertools
+
+for _ in itertools.repeat(None, 5):
+    dataComparison(anomaliesL_compare)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
+

Answer

Now the same for the upper group

+ +
+
+
+
+
+
In [40]:
+
+
+
print(f'Number of cols to drop: {len(columnPatternIndexes)}')
+anomaliesU_compare = anomaliesU.drop(anomaliesU.iloc[:,columnPatternIndexes], axis=1)
+print(f'Number of cols kept: {anomaliesU_compare.shape[1]}')
+anomaliesU_compare.head(10)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
Number of cols to drop: 47
+Number of cols kept: 33
+
+
+
+ +
+ +
Out[40]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...SEMIO_RATSEMIO_KRITSEMIO_DOMSEMIO_KAEMSEMIO_PFLICHTSEMIO_TRADVZABEOTYPHH_EINKOMMEN_SCOREANZ_HAUSHALTE_AKTIVONLINE_AFFINITAET
6431743.01NaN2535524...5444544NaNNaNNaN
7327753.02NaN3535524...4766533NaNNaNNaN
4729191.01NaN5152322...4444546NaNNaNNaN
1831081.026.03435534...47665332.0NaN2.0
1393163.026.03435534...47665332.0NaN2.0
6911411.016.03435534...47665332.0NaN2.0
6911423.026.03435534...47665332.0NaN2.0
6911713.016.03435534...47665332.0NaN2.0
6911833.016.03435534...47665332.0NaN2.0
1393323.016.03435534...47665332.0NaN2.0
+

10 rows × 33 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [41]:
+
+
+
for _ in itertools.repeat(None, 5):
+    dataComparison(anomaliesU_compare)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
+

Discussion 1.1.3: Assess Missing Data in Each Row

There is a huge distance that is faily easy to visualise from the above graphs. We can see that the group that is below the threshold looks very reasonable. Without doing any specific statistical analysis we can see that across most columns, the data is fairly evenly spread. With a good mix between the columns - the point to take away is across the columns, the data doesn't look to follow a pattern.

+

Looking at the group which contains the rows above the threshold we can see immediately the data is largely dominated by a single value in each column. Looking at the column ANZ_HAUSHALTE_AKTIV we can see that this column is dominated with missing values exlusively from this rows. This means that all the information we have for this column will come from the other set of rows.

+

This is a very interesting factor in our data. If we think about it, if a row has a large number of missing values, then there must be only a few cells in that row that contain the information. If we take the columns that we know contain mostly data and not many nan values (as we have exlucded both of these earlier on), then we can see that these rows account for the dominating value.

+

We can see this from the above graph where SEMIO_Lust is dominated with the value 5 in these upper rows, whereas in the lower group SEMIO_Lust is fairly evenly spread out, with 6, 7 being the two highest values and 5 actually being second from the bottom.

+ +
+
+
+
+
+
+

Step 1.2: Select and Re-Encode Features

Checking for missing data isn't the only way in which you can prepare a dataset for analysis. Since the unsupervised learning techniques to be used will only work on data that is encoded numerically, you need to make a few encoding changes or additional assumptions to be able to make progress. In addition, while almost all of the values in the dataset are encoded using numbers, not all of them represent numeric values. Check the third column of the feature summary (feat_info) for a summary of types of measurement.

+
    +
  • For numeric and interval data, these features can be kept without changes.
  • +
  • Most of the variables in the dataset are ordinal in nature. While ordinal values may technically be non-linear in spacing, make the simplifying assumption that the ordinal variables can be treated as being interval in nature (that is, kept without any changes).
  • +
  • Special handling may be necessary for the remaining two variable types: categorical, and 'mixed'.
  • +
+

In the first two parts of this sub-step, you will perform an investigation of the categorical and mixed-type features and make a decision on each of them, whether you will keep, drop, or re-encode each. Then, in the last part, you will create a new data frame with only the selected and engineered columns.

+

Data wrangling is often the trickiest part of the data analysis process, and there's a lot of it to be done here. But stick with it: once you're done with this step, you'll be ready to get to the machine learning parts of the project!

+ +
+
+
+
+
+
In [42]:
+
+
+
# How many features are there of each data type?
+collections.Counter(feat_info['type'].values)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[42]:
+ + + + +
+
Counter({'categorical': 21,
+         'ordinal': 49,
+         'numeric': 7,
+         'mixed': 7,
+         'interval': 1})
+
+ +
+ +
+
+ +
+
+
+
+

Step 1.2.1: Re-Encode Categorical Features

For categorical data, you would ordinarily need to encode the levels as dummy variables. Depending on the number of categories, perform one of the following:

+
    +
  • For binary (two-level) categoricals that take numeric values, you can keep them without needing to do anything.
  • +
  • There is one binary variable that takes on non-numeric values. For this one, you need to re-encode the values as numbers or create a dummy variable.
  • +
  • For multi-level categoricals (three or more values), you can choose to encode the values using multiple dummy variables (e.g. via OneHotEncoder), or (to keep things straightforward) just drop them from the analysis. As always, document your choices in the Discussion section.
  • +
+ +
+
+
+
+
+
In [43]:
+
+
+
# Assess categorical variables: which are binary, which are multi-level, and
+# which one needs to be re-encoded?
+feat_info_cat = feat_info[(feat_info['type']=='categorical')]
+feat_info_cat
+
+ +
+
+
+ +
+
+ + +
+ +
Out[43]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attributeinformation_leveltypemissing_or_unknown
0AGER_TYPpersoncategorical[-1,0]
2ANREDE_KZpersoncategorical[-1,0]
3CJT_GESAMTTYPpersoncategorical[0]
10FINANZTYPpersoncategorical[-1]
12GFK_URLAUBERTYPpersoncategorical[]
13GREEN_AVANTGARDEpersoncategorical[]
17LP_FAMILIE_FEINpersoncategorical[0]
18LP_FAMILIE_GROBpersoncategorical[0]
19LP_STATUS_FEINpersoncategorical[0]
20LP_STATUS_GROBpersoncategorical[0]
21NATIONALITAET_KZpersoncategorical[-1,0]
38SHOPPER_TYPpersoncategorical[-1]
39SOHO_KZpersoncategorical[-1]
40TITEL_KZpersoncategorical[-1,0]
41VERS_TYPpersoncategorical[-1]
42ZABEOTYPpersoncategorical[-1,9]
47KK_KUNDENTYPhouseholdcategorical[-1]
52GEBAEUDETYPbuildingcategorical[-1,0]
55OST_WEST_KZbuildingcategorical[-1]
57CAMEO_DEUG_2015microcell_rr4categorical[-1,X]
58CAMEO_DEU_2015microcell_rr4categorical[XX]
+
+
+ +
+ +
+
+ +
+
+
+
+

Answer

We pick the attribute column, which gives us the columns for our data.

+

We need to remember to drop the columns from this list that we removed at the start of the project, as they were mostly missing values.

+ +
+
+
+
+
+
In [44]:
+
+
+
categorical_cols = feat_info_cat['attribute'].tolist()
+
+drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']
+
+for i in drop_cols:
+    categorical_cols.remove(i)
+    
+print(categorical_cols)
+print(len(categorical_cols))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']
+18
+
+
+
+ +
+
+ +
+
+
+
+

Answer

We will drop from this list the columns that contain just two values. Note I am dropping them if the length of their unique values is equal to 2. This is because we know that we do not have any columns that have a length of two with non numeric values. This method would not extend to a case where we have 2 non-numeric values

+ +
+
+
+
+
+
In [45]:
+
+
+
# Re-encode categorical variable(s) to be kept in the analysis.
+for i in categorical_cols:
+    print(f'{i}\nValues: {azdias[i].unique()}\nLength: {len(azdias[i].unique())}')
+    if len(azdias[i].unique()) == 2:
+        categorical_cols.remove(i)
+print('\n Columns to reencode as dummies:', categorical_cols)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
ANREDE_KZ
+Values: [1 2]
+Length: 2
+FINANZTYP
+Values: [4 1 6 5 2 3]
+Length: 6
+GFK_URLAUBERTYP
+Values: [ 10.   1.   5.  12.   9.   3.   8.  11.   4.   2.   7.   6.  nan]
+Length: 13
+GREEN_AVANTGARDE
+Values: [0 1]
+Length: 2
+LP_FAMILIE_GROB
+Values: [  2.   3.   1.  nan   5.   4.]
+Length: 6
+LP_STATUS_FEIN
+Values: [  1.   2.   3.   9.   4.  10.   5.   8.   6.   7.  nan]
+Length: 11
+LP_STATUS_GROB
+Values: [  1.   2.   4.   5.   3.  nan]
+Length: 6
+NATIONALITAET_KZ
+Values: [ nan   1.   3.   2.]
+Length: 4
+SHOPPER_TYP
+Values: [ nan   3.   2.   1.   0.]
+Length: 5
+SOHO_KZ
+Values: [ nan   1.   0.]
+Length: 3
+VERS_TYP
+Values: [ nan   2.   1.]
+Length: 3
+ZABEOTYP
+Values: [3 5 4 1 6 2]
+Length: 6
+GEBAEUDETYP
+Values: [ nan   8.   1.   3.   2.   6.   4.   5.]
+Length: 8
+OST_WEST_KZ
+Values: [nan 'W' 'O']
+Length: 3
+CAMEO_DEUG_2015
+Values: [nan '8' '4' '2' '6' '1' '9' '5' '7' '3']
+Length: 10
+CAMEO_DEU_2015
+Values: [nan '8A' '4C' '2A' '6B' '8C' '4A' '2D' '1A' '1E' '9D' '5C' '8B' '7A' '5D'
+ '9E' '9B' '1B' '3D' '4E' '4B' '3C' '5A' '7B' '9A' '6D' '6E' '2C' '7C' '9C'
+ '7D' '5E' '1D' '8D' '6C' '6A' '5B' '4D' '3A' '2B' '7E' '3B' '6F' '5F' '1C']
+Length: 45
+
+ Columns to reencode as dummies: ['CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']
+
+
+
+ +
+
+ +
+
+
+
In [46]:
+
+
+
len(categorical_cols)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[46]:
+ + + + +
+
16
+
+ +
+ +
+
+ +
+
+
+
In [47]:
+
+
+
azdias[categorical_cols].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[47]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CJT_GESAMTTYPFINANZTYPGFK_URLAUBERTYPLP_FAMILIE_FEINLP_FAMILIE_GROBLP_STATUS_FEINLP_STATUS_GROBNATIONALITAET_KZSHOPPER_TYPSOHO_KZVERS_TYPZABEOTYPGEBAEUDETYPOST_WEST_KZCAMEO_DEUG_2015CAMEO_DEU_2015
02.0410.02.02.01.01.0NaNNaNNaNNaN3NaNNaNNaNNaN
15.0110.05.03.02.01.01.03.01.02.058.0W88A
23.0110.01.01.03.02.01.02.00.01.051.0W44C
32.061.0NaNNaN9.04.01.01.00.01.031.0W22A
45.055.010.05.03.02.01.02.00.02.041.0W66B
+
+
+ +
+ +
+
+ +
+
+
+
In [48]:
+
+
+
azdias_cat_dummies = pd.get_dummies(azdias[categorical_cols].astype(str))
+azdias_cat_dummies.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[48]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2FINANZTYP_3...CAMEO_DEU_2015_8ACAMEO_DEU_2015_8BCAMEO_DEU_2015_8CCAMEO_DEU_2015_8DCAMEO_DEU_2015_9ACAMEO_DEU_2015_9BCAMEO_DEU_2015_9CCAMEO_DEU_2015_9DCAMEO_DEU_2015_9ECAMEO_DEU_2015_nan
00100000000...0000000001
10000100100...1000000000
20010000100...0000000000
30100000000...0000000000
40000100000...0000000000
+

5 rows × 148 columns

+
+
+ +
+ +
+
+ +
+
+
+
+

Discussion 1.2.1: Re-Encode Categorical Features

There were 18 of the type 'categorical' that we needed to work with. They were:

+

['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']

+

ANREDE_KZ was binary numerical so we were able to drop it.

+

CAMEO_DEU_2015 had multiple strings as its values. We will use dummy variables on this.

+

The remaining 16 columns were multi-level categoricals. I used pd.get_dummies() to convert these to dummy variables.

+

These 16 become 148 columns of dummy variables. All we need to do now is to drop the columns from the original dataframe, and replace them with these.

+ +
+
+
+
+
+
+

Step 1.2.2: Engineer Mixed-Type Features

There are a handful of features that are marked as "mixed" in the feature summary that require special treatment in order to be included in the analysis. There are two in particular that deserve attention; the handling of the rest are up to your own choices:

+
    +
  • "PRAEGENDE_JUGENDJAHRE" combines information on three dimensions: generation by decade, movement (mainstream vs. avantgarde), and nation (east vs. west). While there aren't enough levels to disentangle east from west, you should create two new variables to capture the other two dimensions: an interval-type variable for decade, and a binary variable for movement.
  • +
  • "CAMEO_INTL_2015" combines information on two axes: wealth and life stage. Break up the two-digit codes by their 'tens'-place and 'ones'-place digits into two new ordinal variables (which, for the purposes of this project, is equivalent to just treating them as their raw numeric values).
  • +
  • If you decide to keep or engineer new features around the other mixed-type features, make sure you note your steps in the Discussion section.
  • +
+

Be sure to check Data_Dictionary.md for the details needed to finish these tasks.

+ +
+
+
+
+
+
In [49]:
+
+
+
feat_info_mixed = feat_info[(feat_info['type']=='mixed')]
+feat_info_mixed
+
+ +
+
+
+ +
+
+ + +
+ +
Out[49]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attributeinformation_leveltypemissing_or_unknown
15LP_LEBENSPHASE_FEINpersonmixed[0]
16LP_LEBENSPHASE_GROBpersonmixed[0]
22PRAEGENDE_JUGENDJAHREpersonmixed[-1,0]
56WOHNLAGEbuildingmixed[-1]
59CAMEO_INTL_2015microcell_rr4mixed[-1,XX]
64KBA05_BAUMAXmicrocell_rr3mixed[-1,0]
79PLZ8_BAUMAXmacrocell_plz8mixed[-1,0]
+
+
+ +
+ +
+
+ +
+
+
+
In [50]:
+
+
+
mixed_cols = feat_info_mixed['attribute'].tolist()
+
+# drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']
+
+# for i in drop_cols:
+#     mixed_cols.remove(i)
+    
+print(mixed_cols)
+print(len(mixed_cols))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
['LP_LEBENSPHASE_FEIN', 'LP_LEBENSPHASE_GROB', 'PRAEGENDE_JUGENDJAHRE', 'WOHNLAGE', 'CAMEO_INTL_2015', 'KBA05_BAUMAX', 'PLZ8_BAUMAX']
+7
+
+
+
+ +
+
+ +
+
+
+
In [51]:
+
+
+
def PRAEGENDE_JUGENDJAHRE_decade(value, **kwargs):
+    if (value == 1) or (value == 2):
+        return 40
+    elif (value == 3) or (value == 4):
+        return 50
+    elif (value == 5) or (value == 6) or (value == 7):
+        return 60
+    elif (value == 8) or (value == 9):
+        return 70
+    elif (value == 10) or (value == 11):
+        return 80
+    elif (value == 12) or (value == 13):
+        return 80
+    elif (value == 14) or (value == 15):
+        return 90
+    else:
+        return value
+
+ +
+
+
+ +
+
+
+
In [52]:
+
+
+
azdias['PRAEGENDE_JUGENDJAHRE_decade'] = azdias.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_decade, axis=1)
+azdias['PRAEGENDE_JUGENDJAHRE_decade'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[52]:
+ + + + +
+
0     NaN
+1    90.0
+2    90.0
+3    70.0
+4    70.0
+Name: PRAEGENDE_JUGENDJAHRE_decade, dtype: float64
+
+ +
+ +
+
+ +
+
+
+
In [53]:
+
+
+
def PRAEGENDE_JUGENDJAHRE_movement(value, **kwargs):
+    if (value == 1) or (value == 3) or (value == 5) or (value == 8) or (value == 10) or (value == 12) or (value == 14):
+        return 'mainstream'
+    elif (value == 2) or (value == 4) or (value == 6) or (value == 7) or (value == 9) or (value == 11) or (value == 13) or (value == 15):
+        return 'avantgarde'
+    else:
+        return value
+
+ +
+
+
+ +
+
+
+
In [54]:
+
+
+
azdias['PRAEGENDE_JUGENDJAHRE_movement'] = azdias.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_movement, axis=1)
+azdias['PRAEGENDE_JUGENDJAHRE_movement'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[54]:
+ + + + +
+
0           NaN
+1    mainstream
+2    avantgarde
+3    mainstream
+4    mainstream
+Name: PRAEGENDE_JUGENDJAHRE_movement, dtype: object
+
+ +
+ +
+
+ +
+
+
+
In [55]:
+
+
+
azdias.iloc[0:5, -2:]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[55]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movement
0NaNNaN
190.0mainstream
290.0avantgarde
370.0mainstream
470.0mainstream
+
+
+ +
+ +
+
+ +
+
+
+
+

Answer

Similar process to the one above

+ +
+
+
+
+
+
In [56]:
+
+
+
def CAMEO_INTL_2015_wealth(value, **kwargs):
+    if pd.isnull(value):
+        return value
+    else:
+        return value[0]
+
+def CAMEO_INTL_2015_life(value, **kwargs):
+    if pd.isnull(value):
+        return value
+    else:
+        return value[-1]
+
+ +
+
+
+ +
+
+
+
In [57]:
+
+
+
azdias['CAMEO_INTL_2015_wealth'] = azdias.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_wealth, axis=1)
+azdias['CAMEO_INTL_2015_wealth'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[57]:
+ + + + +
+
0    NaN
+1      5
+2      2
+3      1
+4      4
+Name: CAMEO_INTL_2015_wealth, dtype: object
+
+ +
+ +
+
+ +
+
+
+
In [58]:
+
+
+
azdias['CAMEO_INTL_2015_life'] = azdias.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_life, axis=1)
+azdias['CAMEO_INTL_2015_life'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[58]:
+ + + + +
+
0    NaN
+1      1
+2      4
+3      2
+4      3
+Name: CAMEO_INTL_2015_life, dtype: object
+
+ +
+ +
+
+ +
+
+
+
+

Answer

Let's verify that we did it correctly:

+ +
+
+
+
+
+
In [59]:
+
+
+
azdias['CAMEO_INTL_2015'].iloc[0:5][:]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[59]:
+ + + + +
+
0    NaN
+1     51
+2     24
+3     12
+4     43
+Name: CAMEO_INTL_2015, dtype: object
+
+ +
+ +
+
+ +
+
+
+
+

Answer

Let's create our dummy variables form these new columns

+ +
+
+
+
+
+
In [60]:
+
+
+
newCols = ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']
+azdias[newCols].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[60]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PRAEGENDE_JUGENDJAHRE_movementPRAEGENDE_JUGENDJAHRE_decadeCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
0NaNNaNNaNNaN
1mainstream90.051
2avantgarde90.024
3mainstream70.012
4mainstream70.043
+
+
+ +
+ +
+
+ +
+
+
+
In [61]:
+
+
+
azdias_mixed_dummies = pd.get_dummies(azdias[newCols].astype(str))
+azdias_mixed_dummies.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[61]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PRAEGENDE_JUGENDJAHRE_movement_avantgardePRAEGENDE_JUGENDJAHRE_movement_mainstreamPRAEGENDE_JUGENDJAHRE_movement_nanPRAEGENDE_JUGENDJAHRE_decade_40.0PRAEGENDE_JUGENDJAHRE_decade_50.0PRAEGENDE_JUGENDJAHRE_decade_60.0PRAEGENDE_JUGENDJAHRE_decade_70.0PRAEGENDE_JUGENDJAHRE_decade_80.0PRAEGENDE_JUGENDJAHRE_decade_90.0PRAEGENDE_JUGENDJAHRE_decade_nan...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
00010000001...0001000001
10100000010...0010100000
21000000010...0000000100
30100001000...0000010000
40100001000...0100001000
+

5 rows × 22 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
+

Discussion 1.2.2: Engineer Mixed-Type Features

(Double-click this cell and replace this text with your own text, reporting your findings and decisions regarding mixed-value features. Which ones did you keep, which did you drop, and what engineering steps did you perform?)

+

I performed the following steps:

+
    +
  • For the categorical data we ignore any binary numerical columns as they are fine as is.
  • +
  • We converted the remaining categories to dummy variables

    +
  • +
  • For the mixed data

    +
      +
    • We looked at the PRAEGENDE_JUGENDJAHRE column
        +
      • We extracted the decade as a new column
      • +
      • We extracted the movement as a new column
      • +
      +
    • +
    • We looked at CAMEO_INTL_2015 column
        +
      • We split the value into 2 single digits and put each one in a column
      • +
      +
    • +
    • We did a pd.get_dummies() on all of our new columns
    • +
    +
  • +
+

All that remains is to drop the columns in categorical_cols and mixed_cols and replace them with azdias_cat_dummies and azdias_mixed_dummies

+

For the sake of simplicity I will drop the remaining mixed columns and not do any further work on them

+ +
+
+
+
+
+
+

Step 1.2.3: Complete Feature Selection

In order to finish this step up, you need to make sure that your data frame now only has the columns that you want to keep. To summarize, the dataframe should consist of the following:

+
    +
  • All numeric, interval, and ordinal type columns from the original dataset.
  • +
  • Binary categorical features (all numerically-encoded).
  • +
  • Engineered features from other multi-level categorical features and mixed features.
  • +
+

Make sure that for any new columns that you have engineered, that you've excluded the original columns from the final dataset. Otherwise, their values will interfere with the analysis later on the project. For example, you should not keep "PRAEGENDE_JUGENDJAHRE", since its values won't be useful for the algorithm: only the values derived from it in the engineered features you created should be retained. As a reminder, your data should only be from the subset with few or no missing values.

+ +
+
+
+
+
+
In [62]:
+
+
+
# If there are other re-engineering tasks you need to perform, make sure you
+# take care of them here. (Dealing with missing data will come in step 2.1.)
+
+azdias.head(2)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[62]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_ABPRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movementCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
02.012.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.025.01525451...1.05.04.03.05.04.090.0mainstream51
+

2 rows × 83 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [63]:
+
+
+
azdias.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[63]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.012.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.025.01525451...2.03.02.01.01.05.04.03.05.04.0
23.023.01412351...3.03.01.00.01.04.04.03.05.02.0
34.022.04252126...2.02.02.00.01.03.04.02.03.03.0
43.015.04341325...2.04.02.01.02.03.03.04.06.05.0
51.022.03152252...2.03.01.01.01.05.05.02.03.03.0
62.025.01515434...3.03.01.00.01.05.05.04.06.03.0
71.013.03341325...3.03.01.00.01.04.04.02.05.02.0
83.013.04424226...2.03.02.01.01.03.03.02.04.03.0
93.024.02423541...2.03.02.01.01.03.03.02.03.01.0
103.021.02253156...2.04.02.00.02.03.03.04.06.05.0
112.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
123.016.05342413...3.03.01.00.01.05.05.03.06.04.0
131.025.01435521...2.01.01.01.01.03.03.03.06.04.0
143.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
154.024.04151142...NaNNaNNaNNaNNaNNaNNaN4.08.05.0
161.021.04314513...3.03.01.00.01.03.04.01.02.01.0
172.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
182.026.02415411...2.03.02.01.01.03.03.03.04.03.0
193.013.05231315...2.04.02.01.02.05.04.04.06.03.0
202.024.04314513...NaNNaNNaNNaNNaNNaNNaN3.04.01.0
212.013.03412513...1.04.03.02.04.04.03.05.07.05.0
221.014.01535551...2.04.02.01.02.04.03.04.05.05.0
233.013.05332216...NaNNaNNaNNaNNaNNaNNaN3.06.02.0
243.026.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
251.013.03535434...2.02.00.00.01.04.05.03.02.05.0
263.013.05242313...NaNNaNNaNNaNNaNNaNNaN4.03.05.0
273.014.03341225...2.03.03.02.04.05.03.04.07.05.0
283.012.03243323...3.03.01.00.01.05.05.03.04.01.0
294.021.05152136...3.02.02.00.01.03.04.02.04.03.0
..................................................................
8911914.021.04151142...3.03.01.00.01.04.05.01.03.01.0
8911921.023.01525351...4.02.01.00.01.03.03.03.05.01.0
8911934.013.04151255...2.04.01.00.02.02.02.04.06.04.0
8911943.014.04342313...3.02.02.00.01.04.04.04.08.05.0
8911954.026.03151152...2.03.02.01.01.04.03.04.07.05.0
8911962.026.01525431...2.03.02.01.01.03.03.03.04.05.0
8911973.021.03241335...2.03.02.01.01.04.04.03.09.05.0
8911983.015.02534531...4.02.01.00.01.04.05.03.09.05.0
8911992.013.02523341...1.04.03.02.05.05.03.03.07.03.0
8912001.023.01535551...1.04.02.01.02.03.03.04.06.05.0
8912013.013.04232236...1.04.03.01.03.04.03.03.07.05.0
8912022.025.01412541...1.04.03.02.05.04.02.04.08.05.0
8912034.021.04151345...2.03.02.01.01.03.03.04.08.05.0
8912043.015.04344216...2.03.01.00.01.03.04.04.07.03.0
8912054.012.04243342...1.04.03.01.03.03.02.03.07.05.0
8912061.024.03424424...3.02.01.00.01.04.05.03.04.03.0
8912073.021.05151242...2.03.02.02.04.04.02.01.05.01.0
8912084.012.05242316...3.02.00.00.01.03.03.04.02.05.0
8912091.025.01423441...1.04.02.01.05.05.04.04.05.05.0
8912103.015.03342226...2.03.02.01.01.03.03.03.09.05.0
8912113.012.03243322...1.04.02.00.02.03.02.03.05.05.0
8912124.011.03151155...1.03.03.02.05.04.01.03.09.05.0
8912134.025.03335326...2.04.02.01.02.05.05.03.04.04.0
8912141.024.01523341...1.04.03.02.05.05.02.03.07.03.0
8912152.026.01524541...2.04.02.01.02.04.04.02.05.02.0
8912163.025.01425441...3.02.00.00.01.02.03.0NaNNaNNaN
8912172.014.03332236...1.03.03.02.04.05.03.04.06.05.0
8912182.024.02425431...4.02.00.00.01.03.04.02.02.03.0
8912191.013.01535551...1.04.03.01.05.01.01.04.07.05.0
8912204.011.04252156...3.03.01.00.01.04.04.03.04.05.0
+

891221 rows × 79 columns

+
+
+ +
+ +
+
+ +
+
+
+
+

We need to drop ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', + 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']

+ +
+
+
+
+
+
In [64]:
+
+
+
azdias.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',
+       'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [65]:
+
+
+
len(azdias.columns)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[65]:
+ + + + +
+
79
+
+ +
+ +
+
+ +
+
+
+
In [66]:
+
+
+
print(len(categorical_cols))
+print(len(mixed_cols))
+print()
+print(len(azdias_cat_dummies.columns))
+print(len(azdias_mixed_dummies.columns))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
16
+7
+
+148
+22
+
+
+
+ +
+
+ +
+
+
+
+

We have 79 cols which is what we started with after we dropped the mostly empty cols.

+

We need to do the following:

+
    +
  • Drop categorical_cols and replace with adzias_cat_dummies
  • +
  • Drop mixed_cols and replace with azdias_mixed_dummies
  • +
+

We know we need to drop 16+6 = 22 columns from azdias (It's 6 because we dropped one of these right at the start)

+

We know we need to add 148+22 = 170 columns to azdias

+

We know we will end up with 79-22+170=227 columns at the end

+ +
+
+
+
+
+
In [67]:
+
+
+
mixed_cols.remove('KBA05_BAUMAX')
+
+ +
+
+
+ +
+
+
+
In [68]:
+
+
+
mixed_cols
+
+ +
+
+
+ +
+
+ + +
+ +
Out[68]:
+ + + + +
+
['LP_LEBENSPHASE_FEIN',
+ 'LP_LEBENSPHASE_GROB',
+ 'PRAEGENDE_JUGENDJAHRE',
+ 'WOHNLAGE',
+ 'CAMEO_INTL_2015',
+ 'PLZ8_BAUMAX']
+
+ +
+ +
+
+ +
+
+
+
In [69]:
+
+
+
azdias.drop(categorical_cols, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [70]:
+
+
+
azdias.drop(mixed_cols, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [71]:
+
+
+
azdiastemp = azdias
+azdiastemp.head(2)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[71]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.013435530NaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.0215254503.0...963.02.03.02.01.05.04.03.05.04.0
+

2 rows × 57 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [72]:
+
+
+
azdiastemp = azdiastemp.join(azdias_cat_dummies)
+
+ +
+
+
+ +
+
+
+
In [73]:
+
+
+
azdiastemp = azdiastemp.join(azdias_mixed_dummies)
+
+ +
+
+
+ +
+
+
+
In [74]:
+
+
+
azdiastemp.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[74]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
02.013435530NaN...0001000001
11.0215254503.0...0010100000
23.0214123513.0...0000000100
34.0242521202.0...0000010000
43.0143413203.0...0100001000
+

5 rows × 227 columns

+
+
+ +
+ +
+
+ +
+
+
+
+

Answer

We have 227 cols as expected

+ +
+
+
+
+
+
+

Step 1.3: Create a Cleaning Function

Even though you've finished cleaning up the general population demographics data, it's important to look ahead to the future and realize that you'll need to perform the same cleaning steps on the customer demographics data. In this substep, complete the function below to execute the main feature selection, encoding, and re-engineering steps you performed above. Then, when it comes to looking at the customer data in Step 3, you can just run this function on that DataFrame to get the trimmed dataset in a single step.

+ +
+
+
+
+
+
In [75]:
+
+
+
def clean_data(df):
+    """
+    Perform feature trimming, re-encoding, and engineering for demographics
+    data
+    
+    INPUT: Demographics DataFrame
+    OUTPUT: Trimmed and cleaned demographics DataFrame
+    """
+    
+    # Put in code here to execute all main cleaning steps:
+    # convert missing value codes into NaNs, ...
+    
+    
+    # remove selected columns and rows, ...
+
+    
+    # select, re-encode, and engineer column values.
+
+    
+    # Return the cleaned dataframe.
+    
+    
+
+ +
+
+
+ +
+
+
+
+

Step 2: Feature Transformation

Step 2.1: Apply Feature Scaling

Before we apply dimensionality reduction techniques to the data, we need to perform feature scaling so that the principal component vectors are not influenced by the natural differences in scale for features. Starting from this part of the project, you'll want to keep an eye on the API reference page for sklearn to help you navigate to all of the classes and functions that you'll need. In this substep, you'll need to check the following:

+
    +
  • sklearn requires that data not have missing values in order for its estimators to work properly. So, before applying the scaler to your data, make sure that you've cleaned the DataFrame of the remaining missing values. This can be as simple as just removing all data points with missing data, or applying an Imputer to replace all missing values. You might also try a more complicated procedure where you temporarily remove missing values in order to compute the scaling parameters before re-introducing those missing values and applying imputation. Think about how much missing data you have and what possible effects each approach might have on your analysis, and justify your decision in the discussion section below.
  • +
  • For the actual scaling function, a StandardScaler instance is suggested, scaling each feature to mean 0 and standard deviation 1.
  • +
  • For these classes, you can make use of the .fit_transform() method to both fit a procedure to the data as well as apply the transformation to the data at the same time. Don't forget to keep the fit sklearn objects handy, since you'll be applying them to the customer demographics data towards the end of the project.
  • +
+ +
+
+
+
+
+
In [76]:
+
+
+
# If you've not yet cleaned the dataset of all NaN values, then investigate and
+# do that now.
+
+# from sklearn.impute import SimpleImputer
+
+ +
+
+
+ +
+
+
+
+

Answer

To keep things simple I will drop any row with a null value. As long as we know that our final result may suffer because of the lack of information I am happy to do this for the sake of the project. In reality I would spend more time using an Imputer (which isn't a simple thing to do if you want to do it properly), or using another ML algorithm to predict the values we are missing.

+ +
+
+
+
+
+
In [77]:
+
+
+
azdiastemp.shape[0] - azdiastemp.dropna().shape[0]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[77]:
+ + + + +
+
259095
+
+ +
+ +
+
+ +
+
+
+
In [78]:
+
+
+
azdiastemp_noNa = azdiastemp.dropna()
+
+ +
+
+
+ +
+
+
+
In [79]:
+
+
+
azdiastemp_noNa.shape
+
+ +
+
+
+ +
+
+ + +
+ +
Out[79]:
+ + + + +
+
(632126, 227)
+
+ +
+ +
+
+ +
+
+
+
+

We will lose 259,095 (30%) of our rows by dropping null values

+ +
+
+
+
+
+
+

Answer

As we encoded our features from before into dummy variables, we do not need to scale these now. These are contained in the lists azdias_cat_dummies and azdias_mixed_dummies. In addition we don't need to scale GREEN_AVANTGARDE as it is a binary column with 1,0. We do need to scale ANREDE_KZ, as it is not a binary numbered value.

+ +
+
+
+
+
+
In [80]:
+
+
+
azdiastemp.shape
+
+ +
+
+
+ +
+
+ + +
+ +
Out[80]:
+ + + + +
+
(891221, 227)
+
+ +
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
In [81]:
+
+
+
azdiastemp_noNa.drop(azdias_cat_dummies.columns, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: 
+A value is trying to be set on a copy of a slice from a DataFrame
+
+See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
+  errors=errors)
+
+
+
+ +
+
+ +
+
+
+
In [82]:
+
+
+
azdiastemp_noNa.drop(azdias_mixed_dummies.columns, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: 
+A value is trying to be set on a copy of a slice from a DataFrame
+
+See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
+  errors=errors)
+
+
+
+ +
+
+ +
+
+
+
In [83]:
+
+
+
azdiastemp_noNa.drop('GREEN_AVANTGARDE', axis=1, inplace=True)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: 
+A value is trying to be set on a copy of a slice from a DataFrame
+
+See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
+  errors=errors)
+
+
+
+ +
+
+ +
+
+
+
In [84]:
+
+
+
azdiastemp_noNa.head(4)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[84]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERHEALTH_TYPRETOURTYP_BK_S...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
11.021525453.01.0...963.02.03.02.01.05.04.03.05.04.0
23.021412353.03.0...712.03.03.01.00.04.04.03.05.02.0
43.014341323.05.0...435.02.04.02.01.03.03.04.06.05.0
51.023152253.03.0...1300.02.03.01.01.05.05.02.03.03.0
+

4 rows × 56 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [85]:
+
+
+
from sklearn.preprocessing import StandardScaler
+
+scaler = StandardScaler()
+
+ +
+
+
+ +
+
+
+
In [86]:
+
+
+
scaler.fit(azdiastemp_noNa)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[86]:
+ + + + +
+
StandardScaler(copy=True, with_mean=True, with_std=True)
+
+ +
+ +
+
+ +
+
+
+
In [87]:
+
+
+
azdiastemp_noNa_scaled = pd.DataFrame(scaler.transform(azdiastemp_noNa), columns=azdiastemp_noNa.columns)
+
+ +
+
+
+ +
+
+
+
In [88]:
+
+
+
azdiastemp_noNa_scaled.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[88]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
In [89]:
+
+
+
azdiastemp_noNa_scaled.shape
+
+ +
+
+
+ +
+
+ + +
+ +
Out[89]:
+ + + + +
+
(632126, 56)
+
+ +
+ +
+
+ +
+
+
+
In [90]:
+
+
+
azdiastemp_noNa.shape
+
+ +
+
+
+ +
+
+ + +
+ +
Out[90]:
+ + + + +
+
(632126, 56)
+
+ +
+ +
+
+ +
+
+
+
In [91]:
+
+
+
azdiastemp_noNa = azdiastemp.dropna()
+
+ +
+
+
+ +
+
+
+
In [92]:
+
+
+
azdiastemp_noNa.shape
+
+ +
+
+
+ +
+
+ + +
+ +
Out[92]:
+ + + + +
+
(632126, 227)
+
+ +
+ +
+
+ +
+
+
+
In [93]:
+
+
+
azdiastemp_noNa.drop(azdiastemp_noNa_scaled.columns, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: 
+A value is trying to be set on a copy of a slice from a DataFrame
+
+See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
+  errors=errors)
+
+
+
+ +
+
+ +
+
+
+
In [94]:
+
+
+
azdiastemp_noNa.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[94]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
In [95]:
+
+
+
azdiastemp_noNa.index
+
+ +
+
+
+ +
+
+ + +
+ +
Out[95]:
+ + + + +
+
Int64Index([     1,      2,      4,      5,      6,      7,      8,      9,
+                10,     19,
+            ...
+            891207, 891209, 891210, 891211, 891212, 891213, 891214, 891215,
+            891219, 891220],
+           dtype='int64', length=632126)
+
+ +
+ +
+
+ +
+
+
+
In [96]:
+
+
+
print(azdiastemp_noNa.shape)
+print(azdiastemp_noNa_scaled.shape)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
(632126, 171)
+(632126, 56)
+
+
+
+ +
+
+ +
+
+
+
In [97]:
+
+
+
azdiastemp_noNa_final = pd.merge(azdiastemp_noNa.reset_index(), azdiastemp_noNa_scaled.reset_index(), right_index=True, left_index=True)
+
+ +
+
+
+ +
+
+
+
In [98]:
+
+
+
azdiastemp_noNa_final.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[98]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
In [99]:
+
+
+
azdiastemp_noNa_final.drop(['index_x', 'index_y'], axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [100]:
+
+
+
print(azdiastemp_noNa_final.shape)
+azdiastemp_noNa_final.head(10)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
(632126, 227)
+
+
+
+ +
+ +
Out[100]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GREEN_AVANTGARDECJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
00000010010...1.057812-0.2310610.1813780.372030.3814591.4402750.586011-0.203820-0.1719750.655880
11001000010...0.3028980.7917000.181378-0.64373-0.9843450.4008630.586011-0.203820-0.171975-0.824992
20000010000...-0.530214-0.2310611.2707640.372030.381459-0.638548-0.3118340.8075280.2635721.396317
30010000001...2.071381-0.2310610.181378-0.643730.3814591.4402751.483855-1.215167-1.043069-0.084556
40000010000...0.7690800.7917000.181378-0.64373-0.9843451.4402751.4838550.8075280.263572-0.084556
50001000000...0.4412490.7917000.181378-0.64373-0.9843450.4008630.586011-1.215167-0.171975-0.824992
61001000000...-0.301635-0.2310610.1813780.372030.381459-0.638548-0.311834-1.215167-0.607522-0.084556
71000100010...-0.244490-0.2310610.1813780.372030.381459-0.638548-0.311834-1.215167-1.043069-1.565428
80100000000...-0.563298-0.2310611.2707640.37203-0.984345-0.638548-0.3118340.8075280.2635721.396317
91001000000...0.029204-0.2310611.2707640.372030.3814591.4402750.5860110.8075280.263572-0.084556
+

10 rows × 227 columns

+
+
+ +
+ +
+
+ +
+
+
+
+

Discussion 2.1: Apply Feature Scaling

My process has been explained above but we can recap here

+

The idea was:

+
    +
  • Filter out columns that had been transformed into dummy variables
  • +
  • Apply scaling to the remaining columns
  • +
  • Join everything together under azdiastemp
  • +
+ +
+
+
+
+
+
+

Step 2.2: Perform Dimensionality Reduction

On your scaled data, you are now ready to apply dimensionality reduction techniques.

+
    +
  • Use sklearn's PCA class to apply principal component analysis on the data, thus finding the vectors of maximal variance in the data. To start, you should not set any parameters (so all components are computed) or set a number of components that is at least half the number of features (so there's enough features to see the general trend in variability).
  • +
  • Check out the ratio of variance explained by each principal component as well as the cumulative variance explained. Try plotting the cumulative or sequential values using matplotlib's plot() function. Based on what you find, select a value for the number of transformed features you'll retain for the clustering part of the project.
  • +
  • Once you've made a choice for the number of components to keep, make sure you re-fit a PCA instance to perform the decided-on transformation.
  • +
+ +
+
+
+
+
+
In [101]:
+
+
+
azdiastemp_noNa_final.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[101]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
+

Answer

Reusing some of the code from the videos here, really good way to plot the pca variance!

+ +
+
+
+
+
+
In [102]:
+
+
+
# Apply PCA to the data.
+from sklearn.decomposition import PCA
+
+def do_pca(n_components, data):
+    '''
+    Transforms data using PCA to create n_components, and provides back the results of the
+    transformation.
+
+    INPUT: n_components - int - the number of principal components to create
+           data - the data you would like to transform
+
+    OUTPUT: pca - the pca object created after fitting the data
+            X_pca - the transformed X matrix with new number of components
+    '''
+#     X = StandardScaler().fit_transform(data)
+    pca = PCA(n_components)
+#     X_pca = pca.fit_transform(X)
+    X_pca = pca.fit_transform(data)
+    return pca, X_pca
+
+ +
+
+
+ +
+
+
+
In [103]:
+
+
+
pca, df_pca = do_pca(50, azdiastemp_noNa_final)
+
+ +
+
+
+ +
+
+
+
In [104]:
+
+
+
def scree_plot(pca):
+    '''
+    Creates a scree plot associated with the principal components
+
+    INPUT: pca - the result of instantian of PCA in scikit learn
+
+    OUTPUT:
+            None
+    '''
+    num_components=len(pca.explained_variance_ratio_)
+    ind = np.arange(num_components)
+    vals = pca.explained_variance_ratio_
+
+    plt.figure(figsize=(10, 6))
+    ax = plt.subplot(111)
+    cumvals = np.cumsum(vals)
+    ax.bar(ind, vals)
+    ax.plot(ind, cumvals)
+    for i in range(num_components):
+        ax.annotate(r"%s%%" % ((str(vals[i]*100)[:4])), (ind[i]+0.2, vals[i]), va="bottom", ha="center", fontsize=12)
+
+    ax.xaxis.set_tick_params(width=0)
+    ax.yaxis.set_tick_params(width=2, length=12)
+
+    ax.set_xlabel("Principal Component")
+    ax.set_ylabel("Variance Explained (%)")
+    plt.title('Explained Variance Per Principal Component')
+
+ +
+
+
+ +
+
+
+
In [105]:
+
+
+
scree_plot(pca)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
In [106]:
+
+
+
# Re-apply PCA to the data while selecting for number of components to retain.
+import copy
+
+pca, df_pca = do_pca(30, azdiastemp_noNa_final)
+
+df_pca_orig = copy.deepcopy(df_pca)
+
+ +
+
+
+ +
+
+
+
+

Discussion 2.2: Perform Dimensionality Reduction

(Double-click this cell and replace this text with your own text, reporting your findings and decisions regarding dimensionality reduction. How many principal components / transformed features are you retaining for the next step of the analysis?)

+

Reusing the code from the videos, we can see that the first 3 features account for around 35% of the variance of the data. We see that this variance quickly falls off as we have more and more features. From the above graph I think 30 features seems a fair number of features to retain, as this should account for around 80% of the variance in the data.

+ +
+
+
+
+
+
+

Step 2.3: Interpret Principal Components

Now that we have our transformed principal components, it's a nice idea to check out the weight of each variable on the first few components to see if they can be interpreted in some fashion.

+

As a reminder, each principal component is a unit vector that points in the direction of highest variance (after accounting for the variance captured by earlier principal components). The further a weight is from zero, the more the principal component is in the direction of the corresponding feature. If two features have large weights of the same sign (both positive or both negative), then increases in one tend expect to be associated with increases in the other. To contrast, features with different signs can be expected to show a negative correlation: increases in one variable should result in a decrease in the other.

+
    +
  • To investigate the features, you should map each weight to their corresponding feature name, then sort the features according to weight. The most interesting features for each principal component, then, will be those at the beginning and end of the sorted list. Use the data dictionary document to help you understand these most prominent features, their relationships, and what a positive or negative value on the principal component might indicate.
  • +
  • You should investigate and interpret feature associations from the first three principal components in this substep. To help facilitate this, you should write a function that you can call at any time to print the sorted list of feature weights, for the i-th principal component. This might come in handy in the next step of the project, when you interpret the tendencies of the discovered clusters.
  • +
+ +
+
+
+
+
+
In [107]:
+
+
+
def getWeights(df, pca, weightIndex, N):
+    weights = pd.DataFrame(pca.components_, columns=df.columns)
+    weights = weights.iloc[weightIndex:weightIndex+1, :].transpose()
+    posWeights = weights.sort_values(weights.columns[0], ascending=False).head(N)
+    negWeights = weights.sort_values(weights.columns[0], ascending=True).head(N)
+    return posWeights, negWeights
+
+ +
+
+
+ +
+
+
+
In [108]:
+
+
+
# Map weights for the first principal component to corresponding feature names
+# and then print the linked values, sorted by weight.
+# HINT: Try defining a function here or in a new cell that you can reuse in the
+# other cells.
+# and then print the linked values, sorted by weight.
+p, n = getWeights(azdiastemp_noNa_final, pca, 0, 10)
+p
+
+ +
+
+
+ +
+
+ + +
+ +
Out[108]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
0
PLZ8_ANTG30.222606
PLZ8_ANTG40.215934
ORTSGR_KLS90.198526
EWDICHTE0.195974
HH_EINKOMMEN_SCORE0.190977
FINANZ_SPARER0.155443
FINANZ_HAUSBAUER0.152013
KBA05_ANTG40.151090
PLZ8_ANTG20.148548
ARBEIT0.141607
+
+
+ +
+ +
+
+ +
+
+
+
In [109]:
+
+
+
n
+
+ +
+
+
+ +
+
+ + +
+ +
Out[109]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
0
MOBI_REGIO-0.239428
KBA05_ANTG1-0.222922
FINANZ_MINIMALIST-0.222529
PLZ8_ANTG1-0.221995
KBA05_GBZ-0.214801
PLZ8_GBZ-0.166337
INNENSTADT-0.165851
KONSUMNAEHE-0.165035
ALTERSKATEGORIE_GROB-0.137991
BALLRAUM-0.128487
+
+
+ +
+ +
+
+ +
+
+
+
In [110]:
+
+
+
# Map weights for the second principal component to corresponding feature names
+# and then print the linked values, sorted by weight.
+p, n = getWeights(azdiastemp_noNa_final, pca, 1, 10)
+
+ +
+
+
+ +
+
+
+
In [111]:
+
+
+
p
+
+ +
+
+
+ +
+
+ + +
+ +
Out[111]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
ALTERSKATEGORIE_GROB0.252765
SEMIO_ERL0.235743
FINANZ_VORSORGER0.217776
SEMIO_LUST0.175344
RETOURTYP_BK_S0.161684
SEMIO_KRIT0.130653
SEMIO_KAEM0.122912
FINANZ_HAUSBAUER0.122652
W_KEIT_KIND_HH0.118632
PLZ8_ANTG30.104754
+
+
+ +
+ +
+
+ +
+
+
+
In [112]:
+
+
+
n
+
+ +
+
+
+ +
+
+ + +
+ +
Out[112]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1
SEMIO_REL-0.262923
SEMIO_PFLICHT-0.231305
SEMIO_KULT-0.225357
SEMIO_TRADV-0.225101
FINANZ_SPARER-0.223603
FINANZ_UNAUFFAELLIGER-0.217697
FINANZ_ANLEGER-0.195253
SEMIO_FAM-0.184628
ONLINE_AFFINITAET-0.164147
SEMIO_RAT-0.163079
+
+
+ +
+ +
+
+ +
+
+
+
In [113]:
+
+
+
# Map weights for the third principal component to corresponding feature names
+# and then print the linked values, sorted by weight.
+p, n = getWeights(azdiastemp_noNa_final, pca, 2, 10)
+
+ +
+
+
+ +
+
+
+
In [114]:
+
+
+
p
+
+ +
+
+
+ +
+
+ + +
+ +
Out[114]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
2
SEMIO_VERT0.345306
SEMIO_SOZ0.256961
SEMIO_FAM0.242939
SEMIO_KULT0.220989
FINANZ_MINIMALIST0.162318
RETOURTYP_BK_S0.123113
FINANZ_VORSORGER0.107471
W_KEIT_KIND_HH0.099203
ALTERSKATEGORIE_GROB0.095271
SEMIO_LUST0.081573
+
+
+ +
+ +
+
+ +
+
+
+
In [115]:
+
+
+
n
+
+ +
+
+
+ +
+
+ + +
+ +
Out[115]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
2
ANREDE_KZ-0.364546
SEMIO_KAEM-0.334261
SEMIO_DOM-0.311411
SEMIO_KRIT-0.264220
SEMIO_RAT-0.227216
FINANZ_ANLEGER-0.195261
SEMIO_ERL-0.158497
FINANZ_SPARER-0.111787
FINANZ_UNAUFFAELLIGER-0.103077
SEMIO_TRADV-0.097060
+
+
+ +
+ +
+
+ +
+
+
+
+

Discussion 2.3: Interpret Principal Components

(Double-click this cell and replace this text with your own text, reporting your observations from detailed investigation of the first few principal components generated. Can we interpret positive and negative values from them in a meaningful way?)

+ +
+
+
+
+
+
+

Step 3: Clustering

Step 3.1: Apply Clustering to General Population

You've assessed and cleaned the demographics data, then scaled and transformed them. Now, it's time to see how the data clusters in the principal components space. In this substep, you will apply k-means clustering to the dataset and use the average within-cluster distances from each point to their assigned cluster's centroid to decide on a number of clusters to keep.

+
    +
  • Use sklearn's KMeans class to perform k-means clustering on the PCA-transformed data.
  • +
  • Then, compute the average difference from each point to its assigned cluster's center. Hint: The KMeans object's .score() method might be useful here, but note that in sklearn, scores tend to be defined so that larger is better. Try applying it to a small, toy dataset, or use an internet search to help your understanding.
  • +
  • Perform the above two steps for a number of different cluster counts. You can then see how the average distance decreases with an increasing number of clusters. However, each additional cluster provides a smaller net benefit. Use this fact to select a final number of clusters in which to group the data. Warning: because of the large size of the dataset, it can take a long time for the algorithm to resolve. The more clusters to fit, the longer the algorithm will take. You should test for cluster counts through at least 10 clusters to get the full picture, but you shouldn't need to test for a number of clusters above about 30.
  • +
  • Once you've selected a final number of clusters to use, re-fit a KMeans instance to perform the clustering operation. Make sure that you also obtain the cluster assignments for the general demographics data, since you'll be using them in the final Step 3.3.
  • +
+ +
+
+
+
+
+
In [116]:
+
+
+
from sklearn.cluster import KMeans
+
+ +
+
+
+ +
+
+
+
In [117]:
+
+
+
from joblib import dump, load
+
+ +
+
+
+ +
+
+
+
In [118]:
+
+
+
# cluster0 = KMeans(10)
+# result0 = cluster0.fit_transform(df_pca)
+# distance0 = np.min(result0, axis=1)
+# dump(cluster0, 'cluster0')
+# print(distance0)
+
+ +
+
+
+ +
+
+
+
In [119]:
+
+
+
# cluster1 = KMeans(11)
+# result1 = cluster1.fit_transform(df_pca)
+# distance1 = np.min(result1, axis=1)
+# dump(cluster1, 'cluster1')
+# print(distance1)
+
+ +
+
+
+ +
+
+
+
In [120]:
+
+
+
# cluster2 = KMeans(12)
+# result2 = cluster2.fit_transform(df_pca)
+# distance2 = np.min(result2, axis=1)
+# dump(cluster2, 'cluster2')
+# print(distance2)
+
+ +
+
+
+ +
+
+
+
In [121]:
+
+
+
# cluster3 = KMeans(13)
+# result3 = cluster3.fit_transform(df_pca)
+# distance3 = np.min(result3, axis=1)
+# dump(cluster3, 'cluster3')
+# print(distance3)
+
+ +
+
+
+ +
+
+
+
In [122]:
+
+
+
# cluster4 = KMeans(14)
+# result4 = cluster4.fit_transform(df_pca)
+# distance4 = np.min(result4, axis=1)
+# dump(cluster4, 'cluster4')
+# print(distance4)
+
+ +
+
+
+ +
+
+
+
In [123]:
+
+
+
# cluster5 = KMeans(15)
+# result5 = cluster5.fit_transform(df_pca)
+# distance5 = np.min(result5, axis=1)
+# dump(cluster5, 'cluster5')
+# print(distance5)
+
+ +
+
+
+ +
+
+
+
In [124]:
+
+
+
# cluster6 = KMeans(16)
+# result6 = cluster6.fit_transform(df_pca)
+# distance6 = np.min(result6, axis=1)
+# dump(cluster6, 'cluster6')
+# print(distance6)
+
+ +
+
+
+ +
+
+
+
In [125]:
+
+
+
# cluster7 = KMeans(17)
+# result7 = cluster7.fit_transform(df_pca)
+# distance7 = np.min(result7, axis=1)
+# dump(cluster7, 'cluster7')
+# print(distance7)
+
+ +
+
+
+ +
+
+
+
In [126]:
+
+
+
# cluster8 = KMeans(18)
+# result8 = cluster8.fit_transform(df_pca)
+# distance8 = np.min(result8, axis=1)
+# dump(cluster8, 'cluster8')
+# print(distance8)
+
+ +
+
+
+ +
+
+
+
In [127]:
+
+
+
# cluster9 = KMeans(19)
+# result9 = cluster9.fit_transform(df_pca)
+# distance9 = np.min(result9, axis=1)
+# dump(cluster9, 'cluster9')
+# print(distance9)
+
+ +
+
+
+ +
+
+
+
In [128]:
+
+
+
cluster0 = load('cluster0')
+cluster1 = load('cluster1')
+cluster2 = load('cluster2')
+cluster3 = load('cluster3')
+cluster4 = load('cluster4')
+cluster5 = load('cluster5')
+cluster6 = load('cluster6')
+cluster7 = load('cluster7')
+cluster8 = load('cluster8')
+cluster9 = load('cluster9')
+
+ +
+
+
+ +
+
+
+
In [129]:
+
+
+
result0 = cluster0.transform(df_pca)
+distance0 = np.min(result0, axis=1)
+print(distance0)
+result1 = cluster1.transform(df_pca)
+distance1 = np.min(result1, axis=1)
+print(distance1)
+result2 = cluster2.transform(df_pca)
+distance2 = np.min(result2, axis=1)
+print(distance2)
+result3 = cluster3.transform(df_pca)
+distance3 = np.min(result3, axis=1)
+print(distance3)
+result4 = cluster4.transform(df_pca)
+distance4 = np.min(result4, axis=1)
+print(distance4)
+result5 = cluster5.transform(df_pca)
+distance5 = np.min(result5, axis=1)
+print(distance5)
+result6 = cluster6.transform(df_pca)
+distance6 = np.min(result6, axis=1)
+print(distance6)
+result7 = cluster7.transform(df_pca)
+distance7 = np.min(result7, axis=1)
+print(distance7)
+result8 = cluster8.transform(df_pca)
+distance8 = np.min(result8, axis=1)
+print(distance8)
+result9 = cluster9.transform(df_pca)
+distance9 = np.min(result9, axis=1)
+print(distance9)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
[ 5.99920356  5.25322915  6.26760652 ...,  4.92803458  5.6262381
+  6.55423197]
+[ 5.99729642  5.19941681  5.80185611 ...,  4.91543697  5.49068444
+  6.23846466]
+[ 6.00321557  5.38155623  5.71584121 ...,  4.93191586  5.4907225
+  6.14040449]
+[ 6.00392766  5.37278726  5.7805062  ...,  4.93259741  5.48580282
+  6.21427945]
+[ 5.86017994  5.66220384  5.77913626 ...,  4.60380248  5.48047593
+  6.21966435]
+[ 5.99451958  5.32246457  5.88282276 ...,  4.92354011  5.46000209
+  5.49646623]
+[ 5.92187825  5.0573057   5.77767642 ...,  4.4821897   5.48267078
+  6.21543802]
+[ 6.0017645   5.51875852  6.02450863 ...,  4.92603213  5.42898455
+  5.90105521]
+[ 5.92034543  5.03588893  5.815679   ...,  4.48228893  5.49018974
+  6.33747584]
+[ 5.92737572  5.04822523  5.88351874 ...,  4.48506609  5.1921062
+  5.66267788]
+
+
+
+ +
+
+ +
+
+
+
In [130]:
+
+
+
resultList = [distance0, distance1, distance2, distance3, distance4, distance5, distance6, distance7, distance8, distance9]
+
+ +
+
+
+ +
+
+
+
In [131]:
+
+
+
resultListAvg = []
+for i, j in zip(resultList, range(0, len(resultList))):
+    resultListAvg.append(np.mean(i))
+    print(f'Average of {j} is: {resultListAvg[j]}')
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
Average of 0 is: 5.491091752413104
+Average of 1 is: 5.432722028994438
+Average of 2 is: 5.3953931307323435
+Average of 3 is: 5.347826619987956
+Average of 4 is: 5.317350436694105
+Average of 5 is: 5.286875239748684
+Average of 6 is: 5.249543196370822
+Average of 7 is: 5.242796093423207
+Average of 8 is: 5.207815480022285
+Average of 9 is: 5.191018052005388
+
+
+
+ +
+
+ +
+
+
+
In [132]:
+
+
+
x = range(10, 20)
+plt.plot(x, resultListAvg)
+plt.xlabel('Num of Clusters')
+plt.ylabel('Distance to nearest cluster centre')
+
+ +
+
+
+ +
+
+ + +
+ +
Out[132]:
+ + + + +
+
Text(0,0.5,'Distance to nearest cluster centre')
+
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
+

Answer

Unfortunately I ran into memory issues on this VM I couldn't get any further even with refreshing the workspace. If this were a real piece of work - I would go back and optimise my code (I suspect I am wasting a lot of memory here) however I don't want to go back and change things as it currently works for this project.

+

I am on my work laptop which is not powerful and I am unable to access my desktop at home. I hope you can see that the average distance to the centres is decreasing for increasing clusters!.

+

I suspect that we will soon see this decrease slow down and eventually reach an optimum number of clusters.

+

As such I am choosing 19 clusters for the model.

+

We have already got the results for this:

+ +
+
+
+
+
+
In [133]:
+
+
+
result9
+
+ +
+
+
+ +
+
+ + +
+ +
Out[133]:
+ + + + +
+
array([[  8.89676907,  11.18238063,   9.44552392, ...,   7.78952809,
+          8.01786661,  23.62727942],
+       [  7.98911824,   8.06703566,   7.30671633, ...,   8.28362807,
+          6.64715697,  23.42522223],
+       [  9.89697642,   6.97460371,   5.88351874, ...,   8.04631183,
+          9.80914733,  24.07789033],
+       ..., 
+       [  9.49078454,  10.88099939,   8.75271193, ...,   7.85142571,
+          7.23220293,  23.94232482],
+       [ 11.30937033,  11.41794303,   9.05660614, ...,   7.33669112,
+         10.55966618,  24.50789177],
+       [  9.35820758,   7.75844345,   5.66267788, ...,   7.50301775,
+         10.07965876,  23.58627624]])
+
+ +
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
+

Discussion 3.1: Apply Clustering to General Population

I have explained above what I've done but I will recap.

+

We fitted KMeans to our final dataset starting at k=5 to k=14. Unfortunately I had to stop at k=14 due to memory problems but we can see that as we are increasing k the distance to the nearest cluster centre is decreasing. For higher k we will eventually find a sweet spot for our data.

+ +
+
+
+
+
+
+

Step 3.2: Apply All Steps to the Customer Data

Now that you have clusters and cluster centers for the general population, it's time to see how the customer data maps on to those clusters. Take care to not confuse this for re-fitting all of the models to the customer data. Instead, you're going to use the fits from the general population to clean, transform, and cluster the customer data. In the last step of the project, you will interpret how the general population fits apply to the customer data.

+
    +
  • Don't forget when loading in the customers data, that it is semicolon (;) delimited.
  • +
  • Apply the same feature wrangling, selection, and engineering steps to the customer demographics using the clean_data() function you created earlier. (You can assume that the customer demographics data has similar meaning behind missing data patterns as the general demographics data.)
  • +
  • Use the sklearn objects from the general demographics data, and apply their transformations to the customers data. That is, you should not be using a .fit() or .fit_transform() method to re-fit the old objects, nor should you be creating new sklearn objects! Carry the data through the feature scaling, PCA, and clustering steps, obtaining cluster assignments for all of the data in the customer demographics data.
  • +
+ +
+
+
+
+
+
In [134]:
+
+
+
# Load in the customer demographics data.
+customers = pd.read_csv('Udacity_CUSTOMERS_Subset.csv', sep=';')
+print(customers.shape)
+customers.head(3)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
(191652, 85)
+
+
+
+ +
+ +
Out[134]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02415.0515122...3.03.01.00.01.05.05.01.02.01.0
1-141NaN515132...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
2-1422.0515144...2.03.03.01.03.03.02.03.05.03.0
+

3 rows × 85 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [135]:
+
+
+
# Apply preprocessing, feature transformation, and clustering from the general
+# demographics onto the customer data, obtaining cluster predictions for the
+# customer demographics data.
+
+ +
+
+
+ +
+
+
+
In [136]:
+
+
+
# Fill in missing values:
+
+for col, index in zip(customers, range(len(missing_list))):
+    print(col, index)
+    customers.iloc[:,index] = customers.iloc[:,index].apply(replace, items=missing_list[index], axis=1)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
AGER_TYP 0
+ALTERSKATEGORIE_GROB 1
+ANREDE_KZ 2
+CJT_GESAMTTYP 3
+FINANZ_MINIMALIST 4
+FINANZ_SPARER 5
+FINANZ_VORSORGER 6
+FINANZ_ANLEGER 7
+FINANZ_UNAUFFAELLIGER 8
+FINANZ_HAUSBAUER 9
+FINANZTYP 10
+GEBURTSJAHR 11
+GFK_URLAUBERTYP 12
+GREEN_AVANTGARDE 13
+HEALTH_TYP 14
+LP_LEBENSPHASE_FEIN 15
+LP_LEBENSPHASE_GROB 16
+LP_FAMILIE_FEIN 17
+LP_FAMILIE_GROB 18
+LP_STATUS_FEIN 19
+LP_STATUS_GROB 20
+NATIONALITAET_KZ 21
+PRAEGENDE_JUGENDJAHRE 22
+RETOURTYP_BK_S 23
+SEMIO_SOZ 24
+SEMIO_FAM 25
+SEMIO_REL 26
+SEMIO_MAT 27
+SEMIO_VERT 28
+SEMIO_LUST 29
+SEMIO_ERL 30
+SEMIO_KULT 31
+SEMIO_RAT 32
+SEMIO_KRIT 33
+SEMIO_DOM 34
+SEMIO_KAEM 35
+SEMIO_PFLICHT 36
+SEMIO_TRADV 37
+SHOPPER_TYP 38
+SOHO_KZ 39
+TITEL_KZ 40
+VERS_TYP 41
+ZABEOTYP 42
+ALTER_HH 43
+ANZ_PERSONEN 44
+ANZ_TITEL 45
+HH_EINKOMMEN_SCORE 46
+KK_KUNDENTYP 47
+W_KEIT_KIND_HH 48
+WOHNDAUER_2008 49
+ANZ_HAUSHALTE_AKTIV 50
+ANZ_HH_TITEL 51
+GEBAEUDETYP 52
+KONSUMNAEHE 53
+MIN_GEBAEUDEJAHR 54
+OST_WEST_KZ 55
+WOHNLAGE 56
+CAMEO_DEUG_2015 57
+CAMEO_DEU_2015 58
+CAMEO_INTL_2015 59
+KBA05_ANTG1 60
+KBA05_ANTG2 61
+KBA05_ANTG3 62
+KBA05_ANTG4 63
+KBA05_BAUMAX 64
+KBA05_GBZ 65
+BALLRAUM 66
+EWDICHTE 67
+INNENSTADT 68
+GEBAEUDETYP_RASTER 69
+KKK 70
+MOBI_REGIO 71
+ONLINE_AFFINITAET 72
+REGIOTYP 73
+KBA13_ANZAHL_PKW 74
+PLZ8_ANTG1 75
+PLZ8_ANTG2 76
+PLZ8_ANTG3 77
+PLZ8_ANTG4 78
+PLZ8_BAUMAX 79
+PLZ8_HHZ 80
+PLZ8_GBZ 81
+ARBEIT 82
+ORTSGR_KLS9 83
+RELAT_AB 84
+
+
+
+ +
+
+ +
+
+
+
In [137]:
+
+
+
customers.head(10)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[137]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.04.015.0515122...3.03.01.00.01.05.05.01.02.01.0
1NaN4.01NaN515132...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
2NaN4.022.0515144...2.03.03.01.03.03.02.03.05.03.0
31.04.012.0515212...3.02.01.00.01.03.04.01.03.01.0
4NaN3.016.0314452...2.04.02.01.02.03.03.03.05.01.0
51.03.014.0515123...2.03.02.01.01.05.05.03.07.05.0
62.04.012.0515112...3.02.01.00.01.05.05.02.03.02.0
71.04.012.0515122...3.03.01.01.01.03.03.03.04.03.0
82.04.021.0225115...1.04.02.01.05.05.04.03.08.03.0
91.03.013.0524131...3.03.01.00.01.05.05.03.06.04.0
+

10 rows × 85 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [138]:
+
+
+
# Find missing data by col
+
+null_col_count_cust = customers.isnull().sum(axis=0)
+ax_rows_cust = customers.shape[0]
+anomalies_cust = null_col_count_cust.apply(findTotal, total=ax_rows_cust).sort_values(ascending=False)
+anomalies_cust[0:10]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[138]:
+ + + + +
+
TITEL_KZ          0.987936
+KK_KUNDENTYP      0.584064
+KBA05_BAUMAX      0.571531
+AGER_TYP          0.504759
+GEBURTSJAHR       0.485380
+ALTER_HH          0.358707
+KKK               0.313401
+REGIOTYP          0.313401
+W_KEIT_KIND_HH    0.297085
+KBA05_GBZ         0.292102
+dtype: float64
+
+ +
+ +
+
+ +
+
+
+
+

Answer

In the original dataset we dropped anything below 34.8%, I will do the same here so we will drop the first six of the above list

+

As we did above, I am keeping all rows regardless of how much is missing

+ +
+
+
+
+
+
In [139]:
+
+
+
customers.drop(['TITEL_KZ', 'KK_KUNDENTYP', 'KBA05_BAUMAX', 'AGER_TYP', 'GEBURTSJAHR', 'ALTER_HH'], axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [140]:
+
+
+
assert customers.shape[1]+6 == 85
+
+ +
+
+
+ +
+
+
+
+

We can now look at reencoding our categorical features

+ +
+
+
+
+
+
In [141]:
+
+
+
categorical_cols = feat_info_cat['attribute'].tolist()
+
+drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']
+
+for i in drop_cols:
+    categorical_cols.remove(i)
+    
+print(categorical_cols)
+print(len(categorical_cols))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']
+18
+
+
+
+ +
+
+ +
+
+
+
In [142]:
+
+
+
# Re-encode categorical variable(s) to be kept in the analysis.
+for i in categorical_cols:
+    print(f'{i}\nValues: {customers[i].unique()}\nLength: {len(customers[i].unique())}')
+    if len(customers[i].unique()) == 2:
+        categorical_cols.remove(i)
+print('\n Columns to reencode as dummies:', categorical_cols)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
ANREDE_KZ
+Values: [1 2]
+Length: 2
+FINANZTYP
+Values: [2 6 5 3 1 4]
+Length: 6
+GFK_URLAUBERTYP
+Values: [  4.  nan   3.  10.   2.  11.   8.   1.   5.   9.  12.   7.   6.]
+Length: 13
+GREEN_AVANTGARDE
+Values: [1 0]
+Length: 2
+LP_FAMILIE_GROB
+Values: [  2.  nan   1.   5.   4.   3.]
+Length: 6
+LP_STATUS_FEIN
+Values: [ 10.  nan   9.   1.   7.   6.   3.   5.   8.   4.   2.]
+Length: 11
+LP_STATUS_GROB
+Values: [  5.  nan   4.   1.   3.   2.]
+Length: 6
+NATIONALITAET_KZ
+Values: [  1.   2.  nan   3.]
+Length: 4
+SHOPPER_TYP
+Values: [  3.   1.   0.   2.  nan]
+Length: 5
+SOHO_KZ
+Values: [  0.  nan   1.]
+Length: 3
+VERS_TYP
+Values: [  1.   2.  nan]
+Length: 3
+ZABEOTYP
+Values: [3 1 2 4 6 5]
+Length: 6
+GEBAEUDETYP
+Values: [  1.  nan   8.   2.   3.   4.   6.]
+Length: 7
+OST_WEST_KZ
+Values: ['W' nan 'O']
+Length: 3
+CAMEO_DEUG_2015
+Values: ['1' nan '5' '4' '7' '3' '9' '2' '6' '8']
+Length: 10
+CAMEO_DEU_2015
+Values: ['1A' nan '5D' '4C' '7B' '3B' '1D' '9E' '2D' '4A' '6B' '9D' '8B' '5C' '9C'
+ '4E' '6C' '8C' '8A' '5B' '9B' '3D' '2A' '3C' '5F' '7A' '1E' '2C' '7C' '5A'
+ '2B' '6D' '7E' '5E' '6E' '3A' '9A' '4B' '1C' '1B' '6A' '8D' '7D' '6F' '4D']
+Length: 45
+
+ Columns to reencode as dummies: ['CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']
+
+
+
+ +
+
+ +
+
+
+
In [143]:
+
+
+
len(categorical_cols)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[143]:
+ + + + +
+
16
+
+ +
+ +
+
+ +
+
+
+
In [144]:
+
+
+
customers[categorical_cols].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[144]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CJT_GESAMTTYPFINANZTYPGFK_URLAUBERTYPLP_FAMILIE_FEINLP_FAMILIE_GROBLP_STATUS_FEINLP_STATUS_GROBNATIONALITAET_KZSHOPPER_TYPSOHO_KZVERS_TYPZABEOTYPGEBAEUDETYPOST_WEST_KZCAMEO_DEUG_2015CAMEO_DEU_2015
05.024.02.02.010.05.01.03.00.01.031.0W11A
1NaN2NaNNaNNaNNaNNaN1.03.00.01.03NaNNaNNaNNaN
22.023.01.01.010.05.01.01.00.02.038.0W55D
32.0610.0NaNNaN9.04.01.00.00.01.012.0W44C
46.022.010.05.01.01.01.01.00.02.013.0W77B
+
+
+ +
+ +
+
+ +
+
+
+
In [145]:
+
+
+
customers_cat_dummies = pd.get_dummies(customers[categorical_cols].astype(str))
+customers_cat_dummies.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[145]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2FINANZTYP_3...CAMEO_DEU_2015_8ACAMEO_DEU_2015_8BCAMEO_DEU_2015_8CCAMEO_DEU_2015_8DCAMEO_DEU_2015_9ACAMEO_DEU_2015_9BCAMEO_DEU_2015_9CCAMEO_DEU_2015_9DCAMEO_DEU_2015_9ECAMEO_DEU_2015_nan
00000100010...0000000000
10000001010...0000000001
20100000010...0000000000
30100000000...0000000000
40000010010...0000000000
+

5 rows × 147 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [146]:
+
+
+
feat_info_mixed = feat_info[(feat_info['type']=='mixed')]
+feat_info_mixed
+
+ +
+
+
+ +
+
+ + +
+ +
Out[146]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
attributeinformation_leveltypemissing_or_unknown
15LP_LEBENSPHASE_FEINpersonmixed[0]
16LP_LEBENSPHASE_GROBpersonmixed[0]
22PRAEGENDE_JUGENDJAHREpersonmixed[-1,0]
56WOHNLAGEbuildingmixed[-1]
59CAMEO_INTL_2015microcell_rr4mixed[-1,XX]
64KBA05_BAUMAXmicrocell_rr3mixed[-1,0]
79PLZ8_BAUMAXmacrocell_plz8mixed[-1,0]
+
+
+ +
+ +
+
+ +
+
+
+
In [147]:
+
+
+
mixed_cols = feat_info_mixed['attribute'].tolist()
+
+# drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']
+
+# for i in drop_cols:
+#     mixed_cols.remove(i)
+    
+print(mixed_cols)
+print(len(mixed_cols))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
['LP_LEBENSPHASE_FEIN', 'LP_LEBENSPHASE_GROB', 'PRAEGENDE_JUGENDJAHRE', 'WOHNLAGE', 'CAMEO_INTL_2015', 'KBA05_BAUMAX', 'PLZ8_BAUMAX']
+7
+
+
+
+ +
+
+ +
+
+
+
In [148]:
+
+
+
customers['PRAEGENDE_JUGENDJAHRE_decade'] = customers.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_decade, axis=1)
+customers['PRAEGENDE_JUGENDJAHRE_decade'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[148]:
+ + + + +
+
0    50.0
+1     NaN
+2    50.0
+3    40.0
+4    70.0
+Name: PRAEGENDE_JUGENDJAHRE_decade, dtype: float64
+
+ +
+ +
+
+ +
+
+
+
In [149]:
+
+
+
customers['PRAEGENDE_JUGENDJAHRE_movement'] = customers.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_movement, axis=1)
+customers['PRAEGENDE_JUGENDJAHRE_movement'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[149]:
+ + + + +
+
0    avantgarde
+1           NaN
+2    avantgarde
+3    mainstream
+4    mainstream
+Name: PRAEGENDE_JUGENDJAHRE_movement, dtype: object
+
+ +
+ +
+
+ +
+
+
+
In [150]:
+
+
+
customers.iloc[0:5, -2:]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[150]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movement
050.0avantgarde
1NaNNaN
250.0avantgarde
340.0mainstream
470.0mainstream
+
+
+ +
+ +
+
+ +
+
+
+
In [151]:
+
+
+
customers['CAMEO_INTL_2015_wealth'] = customers.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_wealth, axis=1)
+customers['CAMEO_INTL_2015_wealth'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[151]:
+ + + + +
+
0      1
+1    NaN
+2      3
+3      2
+4      4
+Name: CAMEO_INTL_2015_wealth, dtype: object
+
+ +
+ +
+
+ +
+
+
+
In [152]:
+
+
+
customers['CAMEO_INTL_2015_life'] = customers.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_life, axis=1)
+customers['CAMEO_INTL_2015_life'].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[152]:
+ + + + +
+
0      3
+1    NaN
+2      4
+3      4
+4      1
+Name: CAMEO_INTL_2015_life, dtype: object
+
+ +
+ +
+
+ +
+
+
+
In [153]:
+
+
+
customers['CAMEO_INTL_2015'].iloc[0:5][:]
+
+ +
+
+
+ +
+
+ + +
+ +
Out[153]:
+ + + + +
+
0     13
+1    NaN
+2     34
+3     24
+4     41
+Name: CAMEO_INTL_2015, dtype: object
+
+ +
+ +
+
+ +
+
+
+
In [154]:
+
+
+
newCols = ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']
+customers[newCols].head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[154]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PRAEGENDE_JUGENDJAHRE_movementPRAEGENDE_JUGENDJAHRE_decadeCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
0avantgarde50.013
1NaNNaNNaNNaN
2avantgarde50.034
3mainstream40.024
4mainstream70.041
+
+
+ +
+ +
+
+ +
+
+
+
In [155]:
+
+
+
customers_mixed_dummies = pd.get_dummies(customers[newCols].astype(str))
+customers_mixed_dummies.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[155]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PRAEGENDE_JUGENDJAHRE_movement_avantgardePRAEGENDE_JUGENDJAHRE_movement_mainstreamPRAEGENDE_JUGENDJAHRE_movement_nanPRAEGENDE_JUGENDJAHRE_decade_40.0PRAEGENDE_JUGENDJAHRE_decade_50.0PRAEGENDE_JUGENDJAHRE_decade_60.0PRAEGENDE_JUGENDJAHRE_decade_70.0PRAEGENDE_JUGENDJAHRE_decade_80.0PRAEGENDE_JUGENDJAHRE_decade_90.0PRAEGENDE_JUGENDJAHRE_decade_nan...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
01000100000...0000001000
10010000001...0001000001
21000100000...1000000100
30101000000...0000000100
40100001000...0100100000
+

5 rows × 22 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [156]:
+
+
+
customers.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',
+       'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [157]:
+
+
+
len(customers.columns)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[157]:
+ + + + +
+
79
+
+ +
+ +
+
+ +
+
+
+
In [158]:
+
+
+
print(len(categorical_cols))
+print(len(mixed_cols))
+print()
+print(len(customers_cat_dummies.columns))
+print(len(customers_mixed_dummies.columns))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
16
+7
+
+147
+22
+
+
+
+ +
+
+ +
+
+
+
In [159]:
+
+
+
mixed_cols.remove('KBA05_BAUMAX')
+
+ +
+
+
+ +
+
+
+
In [160]:
+
+
+
mixed_cols
+
+ +
+
+
+ +
+
+ + +
+ +
Out[160]:
+ + + + +
+
['LP_LEBENSPHASE_FEIN',
+ 'LP_LEBENSPHASE_GROB',
+ 'PRAEGENDE_JUGENDJAHRE',
+ 'WOHNLAGE',
+ 'CAMEO_INTL_2015',
+ 'PLZ8_BAUMAX']
+
+ +
+ +
+
+ +
+
+
+
In [161]:
+
+
+
customers.drop(categorical_cols, axis=1, inplace=True)
+customers.drop(mixed_cols, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [162]:
+
+
+
customerstemp = customers
+customerstemp.head(2)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[162]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
04.0151512211.0...1201.03.03.01.00.05.05.01.02.01.0
14.0151513201.0...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
+

2 rows × 57 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [163]:
+
+
+
customerstemp = customerstemp.join(customers_cat_dummies)
+customerstemp = customerstemp.join(customers_mixed_dummies)
+
+ +
+
+
+ +
+
+
+
In [164]:
+
+
+
customerstemp.head(5)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[164]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
04.0151512211.0...0000001000
14.0151513201.0...0001000001
24.0251514412.0...1000000100
34.0151521202.0...0000000100
43.0131445203.0...0100100000
+

5 rows × 226 columns

+
+
+ +
+ +
+
+ +
+
+
+
+

We will now apply feature scaling

+ +
+
+
+
+
+
In [165]:
+
+
+
print(customerstemp.shape[0] - customerstemp.dropna().shape[0])
+customerstemp_noNa = customerstemp.dropna()
+customerstemp_noNa.shape
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
75520
+
+
+
+ +
+ +
Out[165]:
+ + + + +
+
(116132, 226)
+
+ +
+ +
+
+ +
+
+
+
In [166]:
+
+
+
customerstemp_noNa.drop(customers_cat_dummies.columns, axis=1, inplace=True)
+customerstemp_noNa.drop(customers_mixed_dummies.columns, axis=1, inplace=True)
+customerstemp_noNa.drop('GREEN_AVANTGARDE', axis=1, inplace=True)
+customerstemp_noNa.head(4)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: 
+A value is trying to be set on a copy of a slice from a DataFrame
+
+See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
+  errors=errors)
+
+
+
+ +
+ +
Out[166]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERHEALTH_TYPRETOURTYP_BK_S...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
04.015151221.05.0...1201.03.03.01.00.05.05.01.02.01.0
24.025151442.05.0...433.02.03.03.01.03.02.03.05.03.0
43.013144523.05.0...513.02.04.02.01.03.03.03.05.01.0
53.015151233.03.0...1167.02.03.02.01.05.05.03.07.05.0
+

4 rows × 56 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [167]:
+
+
+
scalerCust = StandardScaler()
+scalerCust.fit(customerstemp_noNa)
+
+ +
+
+
+ +
+
+ + +
+ +
Out[167]:
+ + + + +
+
StandardScaler(copy=True, with_mean=True, with_std=True)
+
+ +
+ +
+
+ +
+
+
+
In [168]:
+
+
+
customers_noNa_scaled = pd.DataFrame(scaler.transform(customerstemp_noNa), columns=customerstemp_noNa.columns)
+
+ +
+
+
+ +
+
+
+
In [169]:
+
+
+
customers_noNa_scaled.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[169]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
In [170]:
+
+
+
customerstemp_noNa = customerstemp.dropna()
+customerstemp_noNa.drop(customers_noNa_scaled.columns, axis=1, inplace=True)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: 
+A value is trying to be set on a copy of a slice from a DataFrame
+
+See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
+  errors=errors)
+
+
+
+ +
+
+ +
+
+
+
In [171]:
+
+
+
customerstemp_noNa.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[171]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
In [172]:
+
+
+
customerstemp_noNa_final = pd.merge(customerstemp_noNa.reset_index(), customers_noNa_scaled.reset_index(), right_index=True, left_index=True)
+
+ +
+
+
+ +
+
+
+
In [173]:
+
+
+
customerstemp_noNa_final.isnull().values.any()
+
+ +
+
+
+ +
+
+ + +
+ +
Out[173]:
+ + + + +
+
False
+
+ +
+ +
+
+ +
+
+
+
In [174]:
+
+
+
customerstemp_noNa_final.drop(['index_x', 'index_y'], axis=1, inplace=True)
+
+ +
+
+
+ +
+
+
+
In [175]:
+
+
+
print(customerstemp_noNa_final.shape)
+customerstemp_noNa_final.head(10)
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
(116132, 226)
+
+
+
+ +
+ +
Out[175]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GREEN_AVANTGARDECJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
01000010001...1.7736260.7917000.181378-0.64373-0.9843451.4402751.483855-2.226515-1.478616-1.565428
11010000001...-0.536230-0.2310610.1813781.387790.381459-0.638548-1.209678-0.203820-0.171975-0.084556
20000001001...-0.295620-0.2310611.2707640.372030.381459-0.638548-0.311834-0.203820-0.171975-1.565428
31000100000...1.671367-0.2310610.1813780.372030.3814591.4402751.483855-0.2038200.6991191.396317
41010000001...2.0713810.791700-0.908009-0.64373-0.9843451.4402751.483855-1.215167-1.043069-0.824992
51010000000...-0.3918640.7917000.181378-0.643730.381459-0.638548-0.311834-0.203820-0.607522-0.084556
61001000001...1.4879020.7917000.181378-0.64373-0.9843451.4402751.483855-0.2038200.2635720.655880
71001000001...0.0352191.814461-0.908009-0.64373-0.984345-0.638548-0.311834-1.215167-0.171975-1.565428
80000010000...1.7826490.791700-1.997396-1.65949-0.9843450.4008631.483855-2.226515-1.914163-1.565428
90010000000...-0.091101-1.2538221.2707641.387790.3814591.440275-0.311834-0.2038201.1346661.396317
+

10 rows × 226 columns

+
+
+ +
+ +
+
+ +
+
+
+
In [176]:
+
+
+
pca, df_pca = do_pca(30, customerstemp_noNa_final)
+
+ +
+
+
+ +
+
+
+
In [177]:
+
+
+
df_pca.shape
+
+ +
+
+
+ +
+
+ + +
+ +
Out[177]:
+ + + + +
+
(116132, 30)
+
+ +
+ +
+
+ +
+
+
+
+

Answer

Now we can apply kmeans on our fitted model from before!

+ +
+
+
+
+
+
In [178]:
+
+
+
cluster9
+
+ +
+
+
+ +
+
+ + +
+ +
Out[178]:
+ + + + +
+
KMeans(algorithm='auto', copy_x=True, init='k-means++', max_iter=300,
+    n_clusters=19, n_init=10, n_jobs=1, precompute_distances='auto',
+    random_state=None, tol=0.0001, verbose=0)
+
+ +
+ +
+
+ +
+
+
+
In [179]:
+
+
+
resultCust = cluster9.transform(df_pca)
+
+ +
+
+
+ +
+
+
+
In [180]:
+
+
+
customerClusters = cluster9.predict(df_pca)
+
+ +
+
+
+ +
+
+
+
In [181]:
+
+
+
popClusters = cluster9.labels_
+
+ +
+
+
+ +
+
+
+
+

Answer

This plot shows us the number of points in each cluster. It is not very useful as we need to scale them so they represent a percentage which we will do below

+ +
+
+
+
+
+
In [182]:
+
+
+
testDf = pd.DataFrame(customerClusters, columns=['Cluster'])
+print(testDf.nunique())
+testDf[testDf['Cluster'] == 18]
+pd.value_counts(testDf['Cluster'])
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
Cluster    18
+dtype: int64
+
+
+
+ +
+ +
Out[182]:
+ + + + +
+
14    17464
+15    13584
+11    12668
+2      9874
+1      9647
+4      8844
+10     8623
+13     8363
+5      8040
+16     6109
+8      5274
+6      2956
+7      1510
+9      1175
+0       885
+3       771
+17      320
+18       25
+Name: Cluster, dtype: int64
+
+ +
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
In [183]:
+
+
+
f, axes = plt.subplots(1, 2, figsize=(25, 10))
+sns.countplot(x=customerClusters, ax=axes[0])
+sns.countplot(popClusters, ax=axes[1])
+
+ +
+
+
+ +
+
+ + +
+ +
Out[183]:
+ + + + +
+
<matplotlib.axes._subplots.AxesSubplot at 0x7fb1a648e198>
+
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
In [184]:
+
+
+
index_cust=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18]
+
+ +
+
+
+ +
+
+
+
In [185]:
+
+
+
print(len(customerClusters))
+print(len(df_pca))
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
116132
+116132
+
+
+
+ +
+
+ +
+
+
+
In [186]:
+
+
+
def findClusterPerc(clusterSeries, df_pca, index=False):
+    testDf = pd.DataFrame(clusterSeries, columns=['Cluster'])
+    if index is False:
+        return pd.DataFrame((pd.DataFrame(pd.value_counts((testDf['Cluster'].values))).values/len(df_pca)), columns=['Cluster'])
+    else:
+        return pd.DataFrame((pd.DataFrame(pd.value_counts((testDf['Cluster'].values))).values/len(df_pca)), columns=['Cluster'], index=index)
+
+ +
+
+
+ +
+
+
+
In [187]:
+
+
+
customerClustersPerc = findClusterPerc(customerClusters, df_pca, index=index_cust)
+
+ +
+
+
+ +
+
+
+
In [188]:
+
+
+
popClustersPerc = findClusterPerc(popClusters, df_pca_orig)
+
+ +
+
+
+ +
+
+
+
In [189]:
+
+
+
customerClustersPerc
+# popClustersPerc
+
+ +
+
+
+ +
+
+ + +
+ +
Out[189]:
+ + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Cluster
00.150381
10.116970
20.109083
30.085024
40.083069
50.076155
60.074252
70.072013
80.069232
90.052604
100.045414
110.025454
130.013002
140.010118
150.007621
160.006639
170.002755
180.000215
+
+
+ +
+ +
+
+ +
+
+
+
In [190]:
+
+
+
f, axes = plt.subplots(1, 2, figsize=(25, 10))
+sns.barplot(y=customerClustersPerc['Cluster'], x=customerClustersPerc.index, ax=axes[0])
+sns.barplot(y=popClustersPerc['Cluster'], x=popClustersPerc.index, ax=axes[1])
+
+ +
+
+
+ +
+
+ + +
+ +
Out[190]:
+ + + + +
+
<matplotlib.axes._subplots.AxesSubplot at 0x7fb19eab32e8>
+
+ +
+ +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+
+
+

Answer

We can see that in the left graph which represents the customer data, there are relatively more people towards the first clusters. On the right which represents our population data, it is more evenly spread out between the clusters.

+ +
+
+
+
+
+
In [191]:
+
+
+
print(pd.DataFrame(df_pca_orig).index.max())
+print(anomaliesU_compare.index.max())
+
+ +
+
+
+ +
+
+ + +
+ +
+ + +
+
632125
+891187
+
+
+
+ +
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+
+

Step 3.3: Compare Customer Data to Demographics Data

At this point, you have clustered data based on demographics of the general population of Germany, and seen how the customer data for a mail-order sales company maps onto those demographic clusters. In this final substep, you will compare the two cluster distributions to see where the strongest customer base for the company is.

+

Consider the proportion of persons in each cluster for the general population, and the proportions for the customers. If we think the company's customer base to be universal, then the cluster assignment proportions should be fairly similar between the two. If there are only particular segments of the population that are interested in the company's products, then we should see a mismatch from one to the other. If there is a higher proportion of persons in a cluster for the customer data compared to the general population (e.g. 5% of persons are assigned to a cluster for the general population, but 15% of the customer data is closest to that cluster's centroid) then that suggests the people in that cluster to be a target audience for the company. On the other hand, the proportion of the data in a cluster being larger in the general population than the customer data (e.g. only 2% of customers closest to a population centroid that captures 6% of the data) suggests that group of persons to be outside of the target demographics.

+

Take a look at the following points in this step:

+
    +
  • Compute the proportion of data points in each cluster for the general population and the customer data. Visualizations will be useful here: both for the individual dataset proportions, but also to visualize the ratios in cluster representation between groups. Seaborn's countplot() or barplot() function could be handy.
      +
    • Recall the analysis you performed in step 1.1.3 of the project, where you separated out certain data points from the dataset if they had more than a specified threshold of missing values. If you found that this group was qualitatively different from the main bulk of the data, you should treat this as an additional data cluster in this analysis. Make sure that you account for the number of data points in this subset, for both the general population and customer datasets, when making your computations!
    • +
    +
  • +
  • Which cluster or clusters are overrepresented in the customer dataset compared to the general population? Select at least one such cluster and infer what kind of people might be represented by that cluster. Use the principal component interpretations from step 2.3 or look at additional components to help you make this inference. Alternatively, you can use the .inverse_transform() method of the PCA and StandardScaler objects to transform centroids back to the original data space and interpret the retrieved values directly.
  • +
  • Perform a similar investigation for the underrepresented clusters. Which cluster or clusters are underrepresented in the customer dataset compared to the general population, and what kinds of people are typified by these clusters?
  • +
+ +
+
+
+
+
+
In [ ]:
+
+
+
# Compare the proportion of data in each cluster for the customer data to the
+# proportion of data in each cluster for the general population.
+
+ +
+
+
+ +
+
+
+
In [ ]:
+
+
+
# What kinds of people are part of a cluster that is overrepresented in the
+# customer data compared to the general population?
+
+ +
+
+
+ +
+
+
+
In [ ]:
+
+
+
# What kinds of people are part of a cluster that is underrepresented in the
+# customer data compared to the general population?
+
+ +
+
+
+ +
+
+
+
+

Discussion 3.3: Compare Customer Data to Demographics Data

(Double-click this cell and replace this text with your own text, reporting findings and conclusions from the clustering analysis. Can we describe segments of the population that are relatively popular with the mail-order company, or relatively unpopular with the company?)

+ +
+
+
+
+
+
+

Congratulations on making it this far in the project! Before you finish, make sure to check through the entire notebook from top to bottom to make sure that your analysis follows a logical flow and all of your findings are documented in Discussion cells. Once you've checked over all of your work, you should export the notebook as an HTML document to submit for evaluation. You can do this from the menu, navigating to File -> Download as -> HTML (.html). You will submit both that document and this notebook for your project submission.

+
+ +
+
+
+
+
+
In [ ]:
+
+
+
 
+
+ +
+
+
+ +
+
+
+ + + + + + diff --git a/python/Unsupervised Learning/Project/Identify_Customer_Segments.ipynb b/python/Unsupervised Learning/Project/Identify_Customer_Segments.ipynb new file mode 100644 index 0000000..68012fc --- /dev/null +++ b/python/Unsupervised Learning/Project/Identify_Customer_Segments.ipynb @@ -0,0 +1,13542 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Project: Identify Customer Segments\n", + "\n", + "In this project, you will apply unsupervised learning techniques to identify segments of the population that form the core customer base for a mail-order sales company in Germany. These segments can then be used to direct marketing campaigns towards audiences that will have the highest expected rate of returns. The data that you will use has been provided by our partners at Bertelsmann Arvato Analytics, and represents a real-life data science task.\n", + "\n", + "This notebook will help you complete this task by providing a framework within which you will perform your analysis steps. In each step of the project, you will see some text describing the subtask that you will perform, followed by one or more code cells for you to complete your work. **Feel free to add additional code and markdown cells as you go along so that you can explore everything in precise chunks.** The code cells provided in the base template will outline only the major tasks, and will usually not be enough to cover all of the minor tasks that comprise it.\n", + "\n", + "It should be noted that while there will be precise guidelines on how you should handle certain tasks in the project, there will also be places where an exact specification is not provided. **There will be times in the project where you will need to make and justify your own decisions on how to treat the data.** These are places where there may not be only one way to handle the data. In real-life tasks, there may be many valid ways to approach an analysis task. One of the most important things you can do is clearly document your approach so that other scientists can understand the decisions you've made.\n", + "\n", + "At the end of most sections, there will be a Markdown cell labeled **Discussion**. In these cells, you will report your findings for the completed section, as well as document the decisions that you made in your approach to each subtask. **Your project will be evaluated not just on the code used to complete the tasks outlined, but also your communication about your observations and conclusions at each stage.**" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "# import libraries here; add more as necessary\n", + "import numpy as np\n", + "import pandas as pd\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns\n", + "\n", + "# magic word for producing visualizations in notebook\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 0: Load the Data\n", + "\n", + "There are four files associated with this project (not including this one):\n", + "\n", + "- `Udacity_AZDIAS_Subset.csv`: Demographics data for the general population of Germany; 891211 persons (rows) x 85 features (columns).\n", + "- `Udacity_CUSTOMERS_Subset.csv`: Demographics data for customers of a mail-order company; 191652 persons (rows) x 85 features (columns).\n", + "- `Data_Dictionary.md`: Detailed information file about the features in the provided datasets.\n", + "- `AZDIAS_Feature_Summary.csv`: Summary of feature attributes for demographics data; 85 features (rows) x 4 columns\n", + "\n", + "Each row of the demographics files represents a single person, but also includes information outside of individuals, including information about their household, building, and neighborhood. You will use this information to cluster the general population into groups with similar demographic properties. Then, you will see how the people in the customers dataset fit into those created clusters. The hope here is that certain clusters are over-represented in the customers data, as compared to the general population; those over-represented clusters will be assumed to be part of the core userbase. This information can then be used for further applications, such as targeting for a marketing campaign.\n", + "\n", + "To start off with, load in the demographics data for the general population into a pandas DataFrame, and do the same for the feature attributes summary. Note for all of the `.csv` data files in this project: they're semicolon (`;`) delimited, so you'll need an additional argument in your [`read_csv()`](https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html) call to read in the data properly. Also, considering the size of the main dataset, it may take some time for it to load completely.\n", + "\n", + "Once the dataset is loaded, it's recommended that you take a little bit of time just browsing the general structure of the dataset and feature summary file. You'll be getting deep into the innards of the cleaning in the first major step of the project, so gaining some general familiarity can help you get your bearings." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# Load in the general demographics data.\n", + "azdias = pd.read_csv('Udacity_AZDIAS_Subset.csv', sep=';')\n", + "\n", + "# Load in the feature summary file.\n", + "feat_info = pd.read_csv('AZDIAS_Feature_Summary.csv', sep=';')" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "azdias shape is (891221, 85). feat shape is (85, 4)\n" + ] + }, + { + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
0-1212.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
1-1125.0152545...2.03.02.01.01.05.04.03.05.04.0
2-1323.0141235...3.03.01.00.01.04.04.03.05.02.0
32422.0425212...2.02.02.00.01.03.04.02.03.03.0
4-1315.0434132...2.04.02.01.02.03.03.04.06.05.0
53122.0315225...2.03.01.01.01.05.05.02.03.03.0
6-1225.0151543...3.03.01.00.01.05.05.04.06.03.0
7-1113.0334132...3.03.01.00.01.04.04.02.05.02.0
8-1313.0442422...2.03.02.01.01.03.03.02.04.03.0
9-1324.0242354...2.03.02.01.01.03.03.02.03.01.0
\n", + "

10 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 -1 2 1 2.0 \n", + "1 -1 1 2 5.0 \n", + "2 -1 3 2 3.0 \n", + "3 2 4 2 2.0 \n", + "4 -1 3 1 5.0 \n", + "5 3 1 2 2.0 \n", + "6 -1 2 2 5.0 \n", + "7 -1 1 1 3.0 \n", + "8 -1 3 1 3.0 \n", + "9 -1 3 2 4.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 3 4 3 5 \n", + "1 1 5 2 5 \n", + "2 1 4 1 2 \n", + "3 4 2 5 2 \n", + "4 4 3 4 1 \n", + "5 3 1 5 2 \n", + "6 1 5 1 5 \n", + "7 3 3 4 1 \n", + "8 4 4 2 4 \n", + "9 2 4 2 3 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 5 3 ... NaN NaN \n", + "1 4 5 ... 2.0 3.0 \n", + "2 3 5 ... 3.0 3.0 \n", + "3 1 2 ... 2.0 2.0 \n", + "4 3 2 ... 2.0 4.0 \n", + "5 2 5 ... 2.0 3.0 \n", + "6 4 3 ... 3.0 3.0 \n", + "7 3 2 ... 3.0 3.0 \n", + "8 2 2 ... 2.0 3.0 \n", + "9 5 4 ... 2.0 3.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 2.0 1.0 1.0 5.0 4.0 3.0 \n", + "2 1.0 0.0 1.0 4.0 4.0 3.0 \n", + "3 2.0 0.0 1.0 3.0 4.0 2.0 \n", + "4 2.0 1.0 2.0 3.0 3.0 4.0 \n", + "5 1.0 1.0 1.0 5.0 5.0 2.0 \n", + "6 1.0 0.0 1.0 5.0 5.0 4.0 \n", + "7 1.0 0.0 1.0 4.0 4.0 2.0 \n", + "8 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "9 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN \n", + "1 5.0 4.0 \n", + "2 5.0 2.0 \n", + "3 3.0 3.0 \n", + "4 6.0 5.0 \n", + "5 3.0 3.0 \n", + "6 6.0 3.0 \n", + "7 5.0 2.0 \n", + "8 4.0 3.0 \n", + "9 3.0 1.0 \n", + "\n", + "[10 rows x 85 columns]" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Check the structure of the data after it's loaded (e.g. print the number of\n", + "# rows and columns, print the first few rows).\n", + "\n", + "azdias_shape=azdias.shape\n", + "feat_shape=feat_info.shape\n", + "\n", + "print(f'azdias shape is {azdias_shape}. feat shape is {feat_shape}')\n", + "\n", + "azdias.head(10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
0AGER_TYPpersoncategorical[-1,0]
1ALTERSKATEGORIE_GROBpersonordinal[-1,0,9]
2ANREDE_KZpersoncategorical[-1,0]
3CJT_GESAMTTYPpersoncategorical[0]
4FINANZ_MINIMALISTpersonordinal[-1]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "0 AGER_TYP person categorical [-1,0]\n", + "1 ALTERSKATEGORIE_GROB person ordinal [-1,0,9]\n", + "2 ANREDE_KZ person categorical [-1,0]\n", + "3 CJT_GESAMTTYP person categorical [0]\n", + "4 FINANZ_MINIMALIST person ordinal [-1]" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "feat_info.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "> **Tip**: Add additional cells to keep everything in reasonably-sized chunks! Keyboard shortcut `esc --> a` (press escape to enter command mode, then press the 'A' key) adds a new cell before the active cell, and `esc --> b` adds a new cell after the active cell. If you need to convert an active cell to a markdown cell, use `esc --> m` and to convert to a code cell, use `esc --> y`. \n", + "\n", + "## Step 1: Preprocessing\n", + "\n", + "### Step 1.1: Assess Missing Data\n", + "\n", + "The feature summary file contains a summary of properties for each demographics data column. You will use this file to help you make cleaning decisions during this stage of the project. First of all, you should assess the demographics data in terms of missing data. Pay attention to the following points as you perform your analysis, and take notes on what you observe. Make sure that you fill in the **Discussion** cell with your findings and decisions at the end of each step that has one!\n", + "\n", + "#### Step 1.1.1: Convert Missing Value Codes to NaNs\n", + "The fourth column of the feature attributes summary (loaded in above as `feat_info`) documents the codes from the data dictionary that indicate missing or unknown data. While the file encodes this as a list (e.g. `[-1,0]`), this will get read in as a string object. You'll need to do a little bit of parsing to make use of it to identify and clean the data. Convert data that matches a 'missing' or 'unknown' value code into a numpy NaN value. You might want to see how much data takes on a 'missing' or 'unknown' code, and how much data is naturally missing, as a point of interest.\n", + "\n", + "**As one more reminder, you are encouraged to add additional cells to break up your analysis into manageable chunks.**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following will replace the indexes with np.na in the dataframe:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "feat_list = feat_info['missing_or_unknown'].tolist()\n", + "missing_list = []\n", + "\n", + "for i in feat_list:\n", + " subcount = 0\n", + " i = i.replace('[', '')\n", + " i = i.replace(']', '')\n", + " i = i.split(',')\n", + " missing_list.append(i)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "def replace(value, items, **kwargs):\n", + " for i in items:\n", + " try:\n", + " if value == np.int(i):\n", + " return np.nan\n", + " else:\n", + " pass\n", + " except ValueError:\n", + " if value == str(i):\n", + " return np.nan\n", + " else:\n", + " pass\n", + " return value" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AGER_TYP 0\n", + "ALTERSKATEGORIE_GROB 1\n", + "ANREDE_KZ 2\n", + "CJT_GESAMTTYP 3\n", + "FINANZ_MINIMALIST 4\n", + "FINANZ_SPARER 5\n", + "FINANZ_VORSORGER 6\n", + "FINANZ_ANLEGER 7\n", + "FINANZ_UNAUFFAELLIGER 8\n", + "FINANZ_HAUSBAUER 9\n", + "FINANZTYP 10\n", + "GEBURTSJAHR 11\n", + "GFK_URLAUBERTYP 12\n", + "GREEN_AVANTGARDE 13\n", + "HEALTH_TYP 14\n", + "LP_LEBENSPHASE_FEIN 15\n", + "LP_LEBENSPHASE_GROB 16\n", + "LP_FAMILIE_FEIN 17\n", + "LP_FAMILIE_GROB 18\n", + "LP_STATUS_FEIN 19\n", + "LP_STATUS_GROB 20\n", + "NATIONALITAET_KZ 21\n", + "PRAEGENDE_JUGENDJAHRE 22\n", + "RETOURTYP_BK_S 23\n", + "SEMIO_SOZ 24\n", + "SEMIO_FAM 25\n", + "SEMIO_REL 26\n", + "SEMIO_MAT 27\n", + "SEMIO_VERT 28\n", + "SEMIO_LUST 29\n", + "SEMIO_ERL 30\n", + "SEMIO_KULT 31\n", + "SEMIO_RAT 32\n", + "SEMIO_KRIT 33\n", + "SEMIO_DOM 34\n", + "SEMIO_KAEM 35\n", + "SEMIO_PFLICHT 36\n", + "SEMIO_TRADV 37\n", + "SHOPPER_TYP 38\n", + "SOHO_KZ 39\n", + "TITEL_KZ 40\n", + "VERS_TYP 41\n", + "ZABEOTYP 42\n", + "ALTER_HH 43\n", + "ANZ_PERSONEN 44\n", + "ANZ_TITEL 45\n", + "HH_EINKOMMEN_SCORE 46\n", + "KK_KUNDENTYP 47\n", + "W_KEIT_KIND_HH 48\n", + "WOHNDAUER_2008 49\n", + "ANZ_HAUSHALTE_AKTIV 50\n", + "ANZ_HH_TITEL 51\n", + "GEBAEUDETYP 52\n", + "KONSUMNAEHE 53\n", + "MIN_GEBAEUDEJAHR 54\n", + "OST_WEST_KZ 55\n", + "WOHNLAGE 56\n", + "CAMEO_DEUG_2015 57\n", + "CAMEO_DEU_2015 58\n", + "CAMEO_INTL_2015 59\n", + "KBA05_ANTG1 60\n", + "KBA05_ANTG2 61\n", + "KBA05_ANTG3 62\n", + "KBA05_ANTG4 63\n", + "KBA05_BAUMAX 64\n", + "KBA05_GBZ 65\n", + "BALLRAUM 66\n", + "EWDICHTE 67\n", + "INNENSTADT 68\n", + "GEBAEUDETYP_RASTER 69\n", + "KKK 70\n", + "MOBI_REGIO 71\n", + "ONLINE_AFFINITAET 72\n", + "REGIOTYP 73\n", + "KBA13_ANZAHL_PKW 74\n", + "PLZ8_ANTG1 75\n", + "PLZ8_ANTG2 76\n", + "PLZ8_ANTG3 77\n", + "PLZ8_ANTG4 78\n", + "PLZ8_BAUMAX 79\n", + "PLZ8_HHZ 80\n", + "PLZ8_GBZ 81\n", + "ARBEIT 82\n", + "ORTSGR_KLS9 83\n", + "RELAT_AB 84\n" + ] + } + ], + "source": [ + "for col, index in zip(azdias, range(len(missing_list))):\n", + " print(col, index)\n", + " azdias.iloc[:,index] = azdias.iloc[:,index].apply(replace, items=missing_list[index], axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
0NaN2.012.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
1NaN1.025.0152545...2.03.02.01.01.05.04.03.05.04.0
2NaN3.023.0141235...3.03.01.00.01.04.04.03.05.02.0
32.04.022.0425212...2.02.02.00.01.03.04.02.03.03.0
4NaN3.015.0434132...2.04.02.01.02.03.03.04.06.05.0
53.01.022.0315225...2.03.01.01.01.05.05.02.03.03.0
6NaN2.025.0151543...3.03.01.00.01.05.05.04.06.03.0
7NaN1.013.0334132...3.03.01.00.01.04.04.02.05.02.0
8NaN3.013.0442422...2.03.02.01.01.03.03.02.04.03.0
9NaN3.024.0242354...2.03.02.01.01.03.03.02.03.01.0
10NaN3.021.0225315...2.04.02.00.02.03.03.04.06.05.0
11NaN2.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
12NaN3.016.0534241...3.03.01.00.01.05.05.03.06.04.0
13NaN1.025.0143552...2.01.01.01.01.03.03.03.06.04.0
14NaN3.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
151.04.024.0415114...NaNNaNNaNNaNNaNNaNNaN4.08.05.0
16NaN1.021.0431451...3.03.01.00.01.03.04.01.02.01.0
17NaN2.016.0343553...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
18NaN2.026.0241541...2.03.02.01.01.03.03.03.04.03.0
19NaN3.013.0523131...2.04.02.01.02.05.04.04.06.03.0
\n", + "

20 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 NaN 2.0 1 2.0 \n", + "1 NaN 1.0 2 5.0 \n", + "2 NaN 3.0 2 3.0 \n", + "3 2.0 4.0 2 2.0 \n", + "4 NaN 3.0 1 5.0 \n", + "5 3.0 1.0 2 2.0 \n", + "6 NaN 2.0 2 5.0 \n", + "7 NaN 1.0 1 3.0 \n", + "8 NaN 3.0 1 3.0 \n", + "9 NaN 3.0 2 4.0 \n", + "10 NaN 3.0 2 1.0 \n", + "11 NaN 2.0 1 6.0 \n", + "12 NaN 3.0 1 6.0 \n", + "13 NaN 1.0 2 5.0 \n", + "14 NaN 3.0 1 6.0 \n", + "15 1.0 4.0 2 4.0 \n", + "16 NaN 1.0 2 1.0 \n", + "17 NaN 2.0 1 6.0 \n", + "18 NaN 2.0 2 6.0 \n", + "19 NaN 3.0 1 3.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 3 4 3 5 \n", + "1 1 5 2 5 \n", + "2 1 4 1 2 \n", + "3 4 2 5 2 \n", + "4 4 3 4 1 \n", + "5 3 1 5 2 \n", + "6 1 5 1 5 \n", + "7 3 3 4 1 \n", + "8 4 4 2 4 \n", + "9 2 4 2 3 \n", + "10 2 2 5 3 \n", + "11 3 4 3 5 \n", + "12 5 3 4 2 \n", + "13 1 4 3 5 \n", + "14 3 4 3 5 \n", + "15 4 1 5 1 \n", + "16 4 3 1 4 \n", + "17 3 4 3 5 \n", + "18 2 4 1 5 \n", + "19 5 2 3 1 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 5 3 ... NaN NaN \n", + "1 4 5 ... 2.0 3.0 \n", + "2 3 5 ... 3.0 3.0 \n", + "3 1 2 ... 2.0 2.0 \n", + "4 3 2 ... 2.0 4.0 \n", + "5 2 5 ... 2.0 3.0 \n", + "6 4 3 ... 3.0 3.0 \n", + "7 3 2 ... 3.0 3.0 \n", + "8 2 2 ... 2.0 3.0 \n", + "9 5 4 ... 2.0 3.0 \n", + "10 1 5 ... 2.0 4.0 \n", + "11 5 3 ... NaN NaN \n", + "12 4 1 ... 3.0 3.0 \n", + "13 5 2 ... 2.0 1.0 \n", + "14 5 3 ... NaN NaN \n", + "15 1 4 ... NaN NaN \n", + "16 5 1 ... 3.0 3.0 \n", + "17 5 3 ... NaN NaN \n", + "18 4 1 ... 2.0 3.0 \n", + "19 3 1 ... 2.0 4.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 2.0 1.0 1.0 5.0 4.0 3.0 \n", + "2 1.0 0.0 1.0 4.0 4.0 3.0 \n", + "3 2.0 0.0 1.0 3.0 4.0 2.0 \n", + "4 2.0 1.0 2.0 3.0 3.0 4.0 \n", + "5 1.0 1.0 1.0 5.0 5.0 2.0 \n", + "6 1.0 0.0 1.0 5.0 5.0 4.0 \n", + "7 1.0 0.0 1.0 4.0 4.0 2.0 \n", + "8 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "9 2.0 1.0 1.0 3.0 3.0 2.0 \n", + "10 2.0 0.0 2.0 3.0 3.0 4.0 \n", + "11 NaN NaN NaN NaN NaN NaN \n", + "12 1.0 0.0 1.0 5.0 5.0 3.0 \n", + "13 1.0 1.0 1.0 3.0 3.0 3.0 \n", + "14 NaN NaN NaN NaN NaN NaN \n", + "15 NaN NaN NaN NaN NaN 4.0 \n", + "16 1.0 0.0 1.0 3.0 4.0 1.0 \n", + "17 NaN NaN NaN NaN NaN NaN \n", + "18 2.0 1.0 1.0 3.0 3.0 3.0 \n", + "19 2.0 1.0 2.0 5.0 4.0 4.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN \n", + "1 5.0 4.0 \n", + "2 5.0 2.0 \n", + "3 3.0 3.0 \n", + "4 6.0 5.0 \n", + "5 3.0 3.0 \n", + "6 6.0 3.0 \n", + "7 5.0 2.0 \n", + "8 4.0 3.0 \n", + "9 3.0 1.0 \n", + "10 6.0 5.0 \n", + "11 NaN NaN \n", + "12 6.0 4.0 \n", + "13 6.0 4.0 \n", + "14 NaN NaN \n", + "15 8.0 5.0 \n", + "16 2.0 1.0 \n", + "17 NaN NaN \n", + "18 4.0 3.0 \n", + "19 6.0 3.0 \n", + "\n", + "[20 rows x 85 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.head(20)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.1.2: Assess Missing Data in Each Column\n", + "\n", + "How much missing data is present in each column? There are a few columns that are outliers in terms of the proportion of values that are missing. You will want to use matplotlib's [`hist()`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.hist.html) function to visualize the distribution of missing value counts to find these columns. Identify and document these columns. While some of these columns might have justifications for keeping or re-encoding the data, for this project you should just remove them from the dataframe. (Feel free to make remarks about these outlier columns in the discussion, however!)\n", + "\n", + "For the remaining features, are there any patterns in which columns have, or share, missing data?" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Rather than using a histogram which is cumbersome to plot, we can achieve the same result by finding how many missing values make up the entire column. We can sort this in descending order and we can see which columns have the most missing values." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "# Perform an assessment of how much missing data there is in each column of the\n", + "# dataset.\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt\n", + "\n", + "null_col_count = azdias.isnull().sum(axis=0)\n", + "# print(null_col_count)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "ax_rows = azdias.shape[0]" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "def findTotal(value, total):\n", + " return value/total" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "anomalies = null_col_count.apply(findTotal, total=ax_rows).sort_values(ascending=False)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "There are six columns that I would consdier to be anomalies in terms of missing values, they are:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "TITEL_KZ 0.997576\n", + "AGER_TYP 0.769554\n", + "KK_KUNDENTYP 0.655967\n", + "KBA05_BAUMAX 0.534687\n", + "GEBURTSJAHR 0.440203\n", + "ALTER_HH 0.348137\n", + "dtype: float64" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "anomalies[0:6]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can drop these columns:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(['TITEL_KZ', 'AGER_TYP', 'KK_KUNDENTYP', 'KBA05_BAUMAX', 'GEBURTSJAHR', 'ALTER_HH'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "assert azdias_shape[1]-6 == azdias.shape[1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "To find patterns we can use seaborn heatmap with pd.isnull()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "79" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.shape[1]" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.subplots(figsize=(20,15))\n", + "sns.heatmap(azdias.iloc[:,0:30].isnull(), cbar=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABJsAAAPBCAYAAABZRasCAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3XmYZVV97vHvC00jMgQUMUymMQIOqIgNkngxCIqICkFFIEbFqWKwHYigEONVg9zgPIREu5DRizgwKCqKiDLoBbQZbSZFROxuQosTIkhb9O/+cXbJoaiiN3Wqunbb38/z1NNnr7X2Ou/eXY8hq9eQqkKSJEmSJEmaCmvMdABJkiRJkiT9+XCwSZIkSZIkSVPGwSZJkiRJkiRNGQebJEmSJEmSNGUcbJIkSZIkSdKUcbBJkiRJkiRJU2aVGGxKsmeSG5LcmOTwmc4jSZIkSZKk8aWqZjrDg0qyJvAj4LnAIuAHwIFVde2MBpMkSZIkSdIDrAozm3YCbqyqm6pqGfA5YJ8ZziRJkiRJkqRxrAqDTZsDP++7XtSUSZIkSZIkqWNmzXSAFjJO2f3W/iUZAoYA5s+f//SD5713ZeRqbWTZYmbN7tb4WBczQTdzmakdM7XXxVxmasdM7XUxl5naMVN7XcxlpnbM1F4Xc5mpHTO118VcHc003vjMuFaFmU2LgC37rrcAlvQ3qKrhqppbVXOHhoZWajhJkiRJkiTdZ1UYbPoBsHWSrZLMBg4AzprhTJIkSZIkSRpH55fRVdVIknnAOcCawPFVdc0Mx5IkSZIkSdI4Oj/YBFBVZwNnz3QOSZIkSZIkPbhVYrBJkiSteu5ectFMR5AkSdIMGGiwKcnxwAuBpVW1XVP2CODzwBzgZuBlVfXrJH8B/F/gMc33fqiqTmjueQzwaXobgRewV1XdnGQ34EPAbOAy4LVVNTJIZkmStHKss9kuMx3hfkaWLZ7pCJIkSauFQTcIPxHYc0zZ4cB5VbU1cF5zDfBG4NqqeiqwK/DhZsNvgJOBD1bVE4CdgKVJ1gBOAg5oBrJ+BrxqwLySJEmSJEmaRgMNNlXVhcCvxhTvQ2+QiObPvx9tDqyfJMB6zX0jSZ4IzKqqc5s+76yqu4BHAvdU1Y+a+88FXjJIXkmSJEmSJE2vQWc2jefRVXUrQPPnJk35McATgCXAD4G3VNVyYBvgN0nOSHJFkg8mWRO4HVgrydzm/pfSW2b3AEmGkixIsmB4eHgaHkmSJEmSJEltTMdg00SeB1wJbAZsDxyTZAN6+zftAhwK7Ag8Fjioqgo4APhoku8DvwPG3a+pqoaram5VzR0aGpr+J5EkSZIkSdK4puM0utuSbFpVtybZFFjalL8aOLoZRLoxyU+BxwOLgCuq6iaAJF8CdgaOq6qL6Q1EkWQPerOgJHWUJ0+157vS6sDfc0mSpNXTdAw2nUVvI++jmz+/3JTfAuwOXJTk0cC2wE3Ar4GNkjyqqn4B7AYsAEiySVUtTbI28A7gqGnIK2mKePJUe74rrQ78PZckSVo9DbSMLsmpwMXAtkkWJXktvUGm5yb5MfDc5hrgSOBvk/yQ3il176iq26vqXnpL6M5r6gIc29xzWJLrgKuBr1TVtwfJK0mSJEmSpOk10Mymqjpwgqrdx2m7BNhjgn7OBZ4yTvlhwGGDZJQkSZIkSdLKszI3CJckSZIkSdKfuUGX0W2Z5DtJrktyTZK3NOX7NdfLk8zta//yJFf2/SxPsn1T940kVzX3fSrJmk359kkuadovSLLTIJklSZIkSZI0fQbdIHwEeFtVXZ5kfeCyJOcCC4EXA/P7G1fVKcApAEmeDHy5qq5sql9WVXckCXAasB/wOeADwHur6utJ9mqudx0wt6Rp0MWTp7qYCbqbq2u6+J66mKmruviuzNSOmdrrYi4ztWOm9rqYy0ztmKm9LubqYqa2Bt2z6Vbg1ubz75rNvDdv9mCiN240oQOBU/v6uqMv02ygRquADZrPfwEsGSSzpOnTxZOnupYJupmrq6d0dfE9dTFTV3XxXZlpxczUXhdzmakdM7XXxVxmasdM7XUxV1cztTXozKY/STIHeBpwactb9gf2GdPHOcBOwNfpzW4CeCtwTpIP0Vv297fjfPcQMAQwf/78sdWSJEmSJElaSaZkg/Ak6wGnA2/tm6H0YO2fAdxVVQv7y6vqecCmwNrAbk3xPwOHVNWWwCHAcWP7q6rhqppbVXOHhoYGexhJkiRJkiRN2sCDTUnWojfQdEpVndHytgPoW0LXr6r+AJzFfbOeXgWM9vtFejOfJEmSJEmS1EGDnkYXejONrquqj7S8Zw3u2/x7tGy9JJs2n2cBewHXN9VLgL9rPu8G/HiQzJIkSZIkSZo+g+7Z9EzgFcAPk4yeKvev9JbB/SfwKOBrSa5slsgBPAtYVFU39fWzLnBWkrWBNYFvA59q6l4PfLwZhPoDzd5MkiRJkiRJ6p5BT6P7LjDRkXNnTnDP+cDOY8puA3Z8kO94+uRTSlpZVuWjOVc235VWB/6eS5IkrZ6m7DQ6SVqVj+Zc2XxXWh34ey5JkrR6GnTPpocl+X6Sq5Jck+S9TfkpSW5IsjDJ8c0m4qP37Jrkyqb9BX3lezb33Jjk8L7yi5r2VyZZkuRLg2SWJEmSJEnS9Bl0ZtM9wG5VdWczoPTdJF8HTgH+sWnzWeB1wCeTbAj8N7BnVd2SZBOAJGsC/wU8F1gE/CDJWVV1bVX96Z9Fk5wOfHnAzJIkSZIkSZomA81sqp47m8u1mp+qqrObugK+D2zRtPkH4IyquqW5f2lTvhNwY1XdVFXL6J1Ut0//dyVZn95pdM5skiRJkiRJ6qiBBpugNyupOYluKXBuVV3aV7cWvdPqvtEUbQNslOT8JJcleWVTvjnw875uFzVl/fYFzquqO8bJMJRkQZIFw8PDgz6SJEmSJEmSJmngDcKr6l5g+2aJ3JlJtquqhU31fwMXVtXocTSz6J0stzuwDnBxkksY/0S7GnN9IPDpCTIMA6OjTHXwvPdO+nkkSZIkSZI0eVN2Gl1V/SbJ+cCewMIk7wYeBfxTX7NFwO1V9Xvg90kuBJ7alG/Z124LYMnoRZJH0ltqt+9U5ZUkSZIkSdLUG/Q0ukc1M5pIsg7wHOD6JK8DngccWFXL+275MrBLkllJHg48A7gO+AGwdZKtkswGDgDO6rtvP+CrVfWHQfJKkiRJkiRpeg06s2lT4KTmNLk1gC9U1VeTjAA/o7dMDnqbgv97VV2X5BvA1cBy4NOjS+6SzAPOAdYEjq+qa/q+5wDg6AGzSpIkSZIkaZoNNNhUVVcDTxunfMJ+q+qDwAfHKT8bOHuCe3adfEpJkiRJkiStLAOfRidJkiRJkiSNGniwKcmaSa5I8tXm+rgkVyW5OslpSdYb0/6lSSrJ3Ob65Umu7PtZnmT7pm52kuEkP0pyfZKXDJpXkiRJkiRJ02cqZja9hd4m36MOqaqnVtVTgFuAeaMVSdYH3gxcOlpWVadU1fZVtT3wCuDmqrqyqX4nsLSqtgGeCFwwBXklSZIkSZI0TQbasynJFsALgKOAfwGoqjuaugDrANV3y5HAB4BDJ+jyQODUvuvXAI9v+l0O3D5IXkmStPLcveSimY4gSZKkGTDoaXQfA94OrN9fmOQEYC/gWuBtTdnTgC2b0+omGmzaH9inab9hU3Zkkl2BnwDzquq2sTclGQKGAObPnz/gI0mSpKmwzma7zHSE+xlZtnimI0iSJK0WJr2MLskL6S1xu2xsXVW9GtiM3vK6/ZOsAXyUZuBpgv6eAdxVVQubolnAFsD3qmoH4GLgQ+PdW1XDVTW3quYODQ1N9pEkSZIkSZI0oEH2bHomsHeSm4HPAbsl+b+jlVV1L/B54CX0Zj5tB5zftN8ZOGt0k/DGAdx/Cd0vgbuAM5vrLwI7DJBXkiRJkiRJ02zSg01VdURVbVFVc+gNFH0beEWSx8Gf9mx6EXB9Vf22qjauqjlN+0uAvatqQdN2DWA/eoNWo/0X8BVg16Zod3rL8iRJkiRJktRRg+7ZNFaAk5Js0Hy+CvjnFvc9C1hUVTeNKX8H8JkkHwN+Abx6KsNKkiRJkiRpak3JYFNVnQ+c31w+s0X7Xce5f+dx2v2M3kCUJEmSJEmSVgFTPbNJ0mqsi8ecdzETdDdX13TxPXUxU1d18V2ZqR0ztdfFXGZqx0ztdTGXmdoxU3tdzNXFTG2ltzXSAB30Nvz+HXAvMFJVc/vqDgU+CDyqqm5Psg9wJLAcGAHeWlXf7Wu/Ab0T7M6sqnlN2fnApsDdTbM9qmrpg0SqWbM3H+iZptrIssWYqZ0u5jJTO2Zqr4u5zNSOmdobWbaYP94+dnX8zFpr48d27l118e/PTO11MZeZ2jFTe13MZaZ2zNReF3N1NFPatp2qmU3Prqrb+wuSbAk8F7ilr/g84KyqqiRPAb4APL6v/kjggnH6f/noZuKSJGnVsM5mu8x0hPsZWbZ4piNIkiStFiZ9Gl0LHwXeDvxp6lRV3Vn3TaVat78uydOBRwPfnMZMkiRJkiRJmkZTMdhUwDeTXJZkCCDJ3sDiqrpqbOMk+ya5Hvga8JqmbA3gw8BhE3zHCUmuTPKuJA+YtpVkKMmCJAuGh4en4JEkSZIkSZI0GVOxjO6ZVbUkySbAuc1A0juBPcZrXFVnAmcmeRa9ZXPPAQ4Gzq6qn48zlvTyqlqcZH3gdOAVwMlj+hwGRkeZ6uB5752Cx5IkSZIkSdJDNfBgU1Utaf5cmuRM4O+ArYCrmoGjLYDLk+xUVf/Td9+FSf46ycbA3wC7JDkYWA+YneTOqjq8qhY37X+X5LPATowZbJLUDV08LaGLmaC7ubqmi++pi5m6qovvykztmKm9LuYyUztmaq+LuczUjpna62KuLmZqa6DT6JKsC6zRDAStC5wL/HtVfaOvzc3A3OY0uscBP2k2CN8B+AqwRd8+TiQ5qGk/L8ksYMPm3rWAU4FvVdWnHiSWp9G10MVM0M1cZmrHTO11MZeZ2jFTe13MZaZ2zNReF3OZqR0ztdfFXGZqx0ztdTFXRzOttNPoHk1vSdxoX5/tH2gax0uAVyb5I3A3sH89+GjX2sA5zUDTmsC3gGMHzCxJkiRJkqRpMtBgU1XdBDx1BW3m9H1+P/D+FbQ/ETix+fx74OmDZJQkSZIkSdLKMxUbhEuSJEmStFrr4v46Zmqvi7m6mKmtgQabkmwIfBrYDijgNcDzgNcDv2ia/WtVnZ3kucDRwGxgGXBYVX276eco4JXARlW13jjf81Lgi8COVbVgkMySJEmSJE21dTbbZaYj3M/IssVmaqmLubqaqa01BvyujwPfqKrH01tOd11T/tGq2r75Obspux14UVU9GXgV8Jm+fr5C75S5B0iyPvBm4NIBs0qSJEmSJGmaTXqwKckGwLOA4wCqallV/Wai9lV1RVUtaS6vAR6WZO2m7pKqunWCW48EPgD8YbJZJUmSJEmStHIMMrPpsfSWyp2Q5Iokn06yblM3L8nVSY5PstE4974EuKKq7nmwL0jyNGDLqvrqCtoNJVmQZMHw8PBknkWSJEmSJElTYJDBplnADsAnq+ppwO+Bw4FPAn8NbA/cCny4/6YkT6J3It0/PVjnSdYAPgq8bUVBqmq4quZW1dyhoaFJPIokSZIkSZKmwiCDTYuARVU1upfSacAOVXVbVd1bVcuBY+nbiynJFsCZwCur6icr6H99ehuPn5/kZmBn4KwkcwfILEmSJEmSpGk06dPoqup/kvw8ybZVdQOwO3Btkk379l/aF1gIfzq57mvAEVX1vRb9/xbYePQ6yfnAoZ5GJ3XXqnw058rmu9LqwN9zSZKk1dOkB5sabwJOSTIbuAl4NfCJJNsDBdzMfcvl5gGPA96V5F1N2R5VtTTJB4B/AB6eZBHw6ap6z4DZJK1kq/LRnCub70qSJOnPSxf/kcVM7XUxVxcztTXQYFNVXQmMXdb2ignavg943wR1bwfevoLv2nUSESVJ0gxxUFWStDrp4v/dM1M7XczV1UxtDbJnkyRJkiRJknQ/Aw02Jdk2yZV9P3ckeWtT96YkNyS5plkmN3rPEUlubOqe11d+SNN2YZJTkzysKT8uyVVJrk5yWpL1BsksSZIkSZKk6TPoMrobgO0BkqwJLAbOTPJsYB/gKVV1T5JNmjZPBA4AngRsBnwryTbAXwJvBp5YVXcn+ULT7kTgkKq6o7n/I/T2fjp6kNySJEmSJEmaHlO5jG534CdV9TPgn4Gjq+oegKpa2rTZB/hcVd1TVT8FbgR2aupmAeskmQU8HFjS3Ds60BRgHXobj0uSJEmSJKmDpnKw6QDg1ObzNsAuSS5NckGSHZvyzYGf992zCNi8qhYDHwJuAW4FfltV3xxtlOQE4H+AxwP/OfaLkwwlWZBkwfDw8BQ+kiRJkiRJkh6KKRlsSjIb2Bv4YlM0C9gI2Bk4DPhCMzMp49xeSTaiN+tpK3rL69ZN8o9/alD16qb8OmD/B3RQNVxVc6tq7tDQ0FQ8kiRJkiRJkiZhqmY2PR+4vKpua64XAWdUz/eB5cDGTfmWffdtQW+53HOAn1bVL6rqj8AZwN/2f0FV3Qt8HnjJFGWWJEmSJEnSFJuqwaYDuW8JHcCXgN0Amg3AZwO3A2cBByRZO8lWwNbA9+ktn9s5ycObGVC7A9el53FNPwFeBFw/RZklSZIkSZI0xQY6jQ4gycOB5wL/1Fd8PHB8koXAMuBVVVXANc1Jc9cCI8AbmxlLlyY5Dbi8Kb8CGKa37O6kJBs0n6+it/m4pA66e8lFMx3hAbqYCbqbq2u6+J66mKmruviuzNSOmdrrYi4ztWOm9rqYy0ztmKm9LubqYqa20hsD+rNSs2ZvPtMZ7mdk2WLM1E4Xc5mpHTO118VcZmrHTO11MZeZ2jFTe13MZaZ2zNReF3OZqR0ztdfFXB3NNN4+3OMaeGaTJEnSeFblf42TJEnS5A002JTkEOB1QAE/BF4N3AO8D9gPuBf4ZFV9ojlx7njgr4E/AK+pqoVNPzcDv2vaj1TV3Kb8g/T2aVoG/AR4dVX9ZpDMkqZPF/8fyy5mgu7m6pouvqcuZlJ7Xfz7M1M7XcwE3cxlpnbM1F4Xc5mpHTO118VcXczU1qQ3CE+yOfBmYG5VbQesCRwAHETvxLnHV9UTgM81t/wrcGVVPQV4JfDxMV0+u6q2Hx1oapwLbNfc8yPgiMnmlSRJkiRJ0vSb9J5NzWDTJcBTgTvonUD3CXqzmv6hqm4c0/5rwH9U1Xeb658Af1tVtzUzm+ZW1e0P8n37Ai+tqpevIJp7NrXQxUzQzVxmasdM7XUxl5naMVN7XcxlpnbM1F4Xc5mpHTO118VcZmrHTO11MVdHM7Xes2nSM5uqajHwIeAW4Fbgt1X1TXrL5PZPsiDJ15Ns3dxyFfBigCQ7AX8FbDHaHfDNJJclGZrgK18DfH28iiRDzfctGB4enuwjSZIkSZIkaUCDLKPbCNgH2ArYDFg3yT8CawN/aJbDHUtvnyaAo4GNklwJvAm4Ahhp6p5ZVTsAzwfemORZY77rnU3bU8bLUlXDVTW3quYODU00ViVJkiRJkqTpNsgG4c8BflpVvwBIcgbwt8Ai4PSmzZnACQBVdQe9DcRJEuCnzQ9VtaT5c2mSM4GdgAubtq8CXgjsXpNd8ydJkiRJkqSVYtIzm+gtn9s5ycObwaPdgevo7d20W9Pm7+ht7E2SDZPMbspfB1xYVXckWTfJ+k2bdYE9gNFT6vYE3gHsXVV3DZBVkiRJkiRJK8GkZzZV1aVJTgMup7fE7QpgGFgHOCXJIcCd9AaWAJ4AnJzkXuBa4LVN+aOBM3vjVcwCPltV32jqjqG3LO/cpv6SqnrDZDNLkiRJkiRpeg2yjI6qejfw7jHF9wAvGKftxcDW45TfRO9Eu/H6f9wg+SRJkiRJWhnuXnLRTEd4ADO118VcXczU1kCDTZIkaeZ19T9Eupqra7r4nsy0auviuzJTO13MBN3M1cVMku4z0GBTkrcArwcCHFtVH0vyeWDbpsmGwG+qavskawGfBnZovvfkqvqPJFsCJwN/CSwHhqvq403/+wHvobcEb6eqWjBIXkmS/hyts9kuMx3hAUaWLe5crpFli2c6wri6+J7M1I6/U+108e/PTO11MZeZ2jFTe13M1dVMbU16sCnJdvQGmnYClgHfSPK1qtq/r82Hgd82l/sBa1fVk5M8HLg2yan0lt29raoubzYKvyzJuVV1Lb2Nwl8MzJ9sTkmSJEmSJK08g5xG9wR6G3bfVVUjwAXAvqOVzQl1LwNObYoKWDfJLHqbiC8D7qiqW6vqcoCq+h29E+02b66vq6obBsgoSZIkSZKklWiQwaaFwLOSPLKZqbQXsGVf/S7AbVX14+b6NOD3wK3ALcCHqupX/R0mmQM8Dbj0oQRJMpRkQZIFw8PDk3kWSZIkSZIkTYFJL6OrquuSvB84F7gTuAoY6WtyIPfNaoLecrt7gc2AjYCLknyrOY2OJOsBpwNvrao7HmKWYWB0lKkOnvfeSTyRJEmSJEmSBjXIzCaq6riq2qGqngX8CvgxQLNU7sXA5/ua/wPwjar6Y1UtBb4HzG3ar0VvoOmUqjpjkEySJEmSJEmaOQMNNiXZpPnzMfQGl0ZnMj0HuL6qFvU1vwXYLT3rAjsD1zd7Ox0HXFdVHxkkjyRJkiRJkmbWQINNwOlJrgW+Aryxqn7dlB/A/ZfQAfwXsB69vZ5+AJxQVVcDzwReQW8g6srmZy+AJPsmWQT8DfC1JOcMmFeSJEmSJEnTaNJ7NgFU1S4TlB80TtmdwH7jlH8XyAT9nAmcOUhGSZIkSZIkrTyDzmySJEmSJEmS/qTVYFOS45MsTbKwr+wRSc5N8uPmz42a8r9I8pUkVyW5Jsmr++55TJJvJrkuybVJ5jTluyW5PMnCJCc1G4zT7O/0iSQ3Jrk6yQ5T+fCSJEmSJEmaWm2X0Z0IHAOc3Fd2OHBeVR2d5PDm+h3AG4Frq+pFSR4F3JDklKpa1tx/VFWdm2Q9YHmSNYCTgN2r6kdJ/h14Fb1Nw58PbN38PAP4ZPOnpA66e8lFMx1hleG70urA33NJkqTVU6vBpqq6cHQWUp99gF2bzycB59MbbCpg/eaUufWAXwEjSZ4IzKqqc5s+7wRoBqTuqaofNX2dCxxBb7BpH+DkqirgkiQbJtm0qm596I8qabqts9m427jNmJFli2c6woR8V1od+HsuSVqddPEfWczUXhdzdTFTW4NsEP7o0UGfqro1ySZN+THAWcASYH1g/6panmQb4DdJzgC2Ar5FbzbU7cBaSeZW1QLgpcCWTV+bAz/v+85FTdn9BpuSDAFDAPPnzx/gkSRJkiRJeui6+I8sZmqni7m6mqmt6dgg/HnAlcBmwPbAMUk2oDewtQtwKLAj8FjgoGbW0gHAR5N8H/gdMNL0Nd4pdfWAgqrhqppbVXOHhoam+nkkSZIkSZLU0iAzm24bXdKWZFNgaVP+auDoZhDpxiQ/BR5Pb1bSFVV1E0CSLwE7A8dV1cX0BqJIsgewTdPXIu6b5QSwBb0ZU5I6qIvTPLuYCbqbq2u6+J66mKmruviuzNSOmdrrYi4ztWOm9rqYy0ztmKm9LubqYqa20hsTatGwt2fTV6tqu+b6g8Av+zYIf0RVvT3JJ4Hbquo9SR4NXA48Ffh18/k5VfWLJCcAC6rqv5JsUlVLk6wNnE1vE/FvJ3kBMA/Yi97G4J+oqp1WELVmzd78ob2FaTaybDFmaqeLuczUjpna62IuM7Vjpva6mMtM7ZipvS7mMlM7Zmqvi7nM1I6Z2utiro5mGm/12bhazWxKciq9zcA3TrIIeDdwNPCFJK8FbgH2a5ofCZyY5If0lsG9o6pub/o5FDiv2Tz8MuDY5p7DkryQ3rK+T1bVt5vys+kNNN0I3EVv1pQkSZIkSZI6qu1pdAdOULX7OG2XAHtM0M+5wFPGKT8MOGyc8gLe2CajJEmSJEmSZt50bBAuSZIkSZKk1dQKB5uSHJ9kaZKFfWX7JbkmyfIkc/vKZyc5IckPk1yVZNe+uvOT3JDkyuZnk6b8oCS/6Ct/Xd8970+ysPnZf8qeWpIkSZIkSdOizTK6E4FjgJP7yhYCLwbmj2n7eoCqenIzmPT1JDtW1fKm/uVVtWCc7/h8Vc3rL2g2B98B2B5YG7ggyder6o4WmSVJkiRJkjQDVjizqaouBH41puy6qrphnOZPBM5r2iwFfgPMHaddG08ELqiqkar6PXAVsOck+5IkSZIkSdJKMNV7Nl0F7JNkVpKtgKcDW/bVn9AslXtXcyLdqJckuTrJaUm27Ovr+UkenmRj4Nlj+vqTJENJFiRZMDw8PMWPJEmSJEmSpLZanUb3EBwPPAFYAPwM+H/ASFP38qpanGR94HTgFfSW5n0FOLWq7knyBuAkYLeq+maSHZs+fgFc3NfX/VTVMDA6ylQHz3vvFD+WJEnddfeSi2Y6wri6mqtruviezLRq6+K7MlM7XcwE3cxlpnbM1F4Xc3UxU1tTOthUVSPAIaPXSf4f8OOmbnHz5++SfBbYCTi5qn7Z18WxwPv7+jsKOKrp67OjfUmSpPuss9kuMx3hAUaWLe5crpFli2c6wri6+J7M1I6/U+108e/PTO11MVdXM0m6z5QONiV5OJCq+n2S5wIjVXVtklnAhlV1e5K1gBcC32ru2bSqbm262Bu4rilfs7nnl0meAjwF+OZU5pUkSZIkaSp0cQDMTO10MVdXM7W1wsGmJKcCuwIbJ1kEvJvehuH/CTwK+FqSK6vqecAmwDlJlgOL6S2Vg95pcuc0A01r0htoOrape3OSvektkfsVcFBTvhZwUbO10x3APzYzpyRJkiRJktRRKxxsqqoDJ6g6c5y2NwPbjlP+e3qbhY/X/xHAEeOU/4HeiXSSJEmSJElaRUz1aXSSJEmSJElajbUabEpyfJKlSRb2lR2Z5OokVyb5ZpLNmvIk+USSG5v6Hcb0tUGSxUmOaa4fnuRrSa5Pck2So/vaPibJd5Jc0fS119Q8tiRJkiRJkqZD2w3CTwSOAU7uK/tgVb0LIMmbgf8NvAF4PrB18/MM4JPNn6OOBC4Y0/8BTMaKAAAgAElEQVSHquo7SWYD5yV5flV9Hfg34AtV9ckkTwTOBua0fzxJK1MXj+bsYibobq6u6eJ76mKmruriuzJTO2Zqr4u5zNSOmdrrYi4ztWOm9rqYq4uZ2mo12FRVFyaZM6bsjr7LdYFqPu8DnFxVBVySZMPRE+eSPB14NPANYG7Tz13Ad5rPy5JcDmwx+jXABs3nvwCWPLTHk7QydfG0hK5lgm7m6upxvV18T13M1FVdfFdmWjEztdfFXGZqx0ztdTGXmdoxU3tdzNXVTG21ndk0riRHAa8Efgs8uyneHPh5X7NFwOZJbgM+TO+Eut0n6G9D4EXAx5ui9wDfTPImegNaz5ngviFgCGD+/PmTfyBJkiRJkiQNZKDBpqp6J/DOJEcA84B3AxmvKXAwcHZV/Tx5YJMks4BTgU9U1U1N8YHAiVX14SR/A3wmyXZVtXxMjmFgePTy4HnvHeSxJE3SqjzNc2XzXWl14O+5JEnS6mmgwaY+nwW+Rm+waRGwZV/dFvSWv/0NsEuSg4H1gNlJ7qyqw5t2w8CPq+pjffe+FtgToKouTvIwYGNg6RTlljSFVuVpniub70qrA3/PJUmSVk+tTqMbT5Kt+y73Bq5vPp8FvLI5lW5n4LdVdWtVvbyqHlNVc4BD6e3rdHjT1/vo7cn01jFfcwvNkrskTwAeBvxispklSZIkSZI0vVrNbEpyKrArsHGSRfRmMO2VZFtgOfAzeifRQe/EuL2AG4G7gFevoO8tgHfSG6y6vFlid0xVfRp4G3BskkPoLcU7qNl4XJIkSZIkSR3U9jS6A8cpPm6CtgW8cQX9nQic2HxexPj7PFFV1wLPbJNRkiRJkiRJM2+Fy+iSHJ9kaZKF49QdmqSSbNxcPz7JxUnuSXJoX7stk3wnyXVJrknylr66pzb3/DDJV5Js0JS/PMmVfT/Lk2w/NY8tSZIkSZKk6dBmZtOJwDHAyf2FSbYEnktvX6VRvwLeDPz9mD5GgLdV1eVJ1gcuS3JuM3Pp08ChVXVBktcAhwHvqqpTgFOa73oy8OWquvKhPqAkSZIkSdOti6ewmqm9LubqYqa2VjjYVFUXJpkzTtVHgbcDX+5ruxRYmuQFY/q4Fbi1+fy7JNcBmwPXAtsCFzZNzwXOAd415rsOBE5d8eNIkiRJkrTydfEUVjO108VcXc3U1qROo0uyN7C4qq6axL1zgKcBlzZFC+mdZgewH7DlOLftj4NNkiRJkiRJnfeQB5uSPJze6XH/exL3rgecDry1qu5oil8DvDHJZcD6wLIx9zwDuKuqHrBnVF+boSQLkiwYHh5+qLEkSZIkSZI0RVqdRjfGXwNbAVclAdgCuDzJTlX1PxPdlGQtegNNp1TVGaPlVXU9sEfTZhvgBWNuPYAVzGqqqmFgdJSpDp733of0QJIkSZIkSZoaD3mwqap+CGwyep3kZmBuVd0+0T3pjUodB1xXVR8ZU7dJVS1Nsgbwb8Cn+urWoLe07lkPNackSZIkSZJWvhUuo0tyKnAxsG2SRUle+yBt/zLJIuBfgH9r2m8APBN4BbBbkiubn72a2w5M8iPgemAJcEJfl88CFlXVTZN6OkmSJEmSJK1UbU6jO3AF9XP6Pv8PvWV1Y30XyAT3fxz4+AR15wM7ryijJEmSJEmSumEyezZJ0rjuXnLRTEd4gC5mgu7m6pouvqcuZuqqLr4rM7Vjpva6mMtM7ZipvS7mMlM7Zmqvi7m6mKmtVNWDN0iOB14ILK2q7Zqy9wCvB37RNPvXqjo7yXOBo4HZ9E6VO6yqvt3ccxTwSmCjqlpvzHe8DHgPUMBVVfUPTfljgE8DWzZ1e1XVzSt4ppo1e/MVPvjKNLJsMWZqp4u5zNSOmdrrYi4ztWOm9rqYy0ztmKm9LuYyUztmaq+LuczUjpna62KujmYad8XaeNrMbDoROAY4eUz5R6vqQ2PKbgdeVFVLkmwHnAOMvp2vNP38uP+GJFsDRwDPrKpfJ9mkr/pk4KiqOjfJesDyFnklSZIkSVqpujgLxUztdTFXFzO11WbPpguTzGnTWVVd0Xd5DfCwJGtX1T1VdQlA72C6+3k98F9V9eumj6VNuycCs6rq3Kb8zjYZJEmSJEla2dbZbJeZjnA/I8sWm6mlLubqaqa2Vnga3YOYl+TqJMcn2Wic+pcAV1TVPSvoZxtgmyTfS3JJkj37yn+T5IwkVyT5YJI1B8grSZIkSZKkaTbZDcI/CRxJbx+lI4EPA68ZrUzyJOD9wB4tM2wN7ErvJLuLmiV4s4BdgKcBtwCfBw4CjhvbQZIhYAhg/vz5k3siSZJWUV2dYt3VXF3TxfdkplVbF9+VmdrpYiboZi4ztWOm9rqYq4uZ2prUYFNV3Tb6OcmxwFf7rrcAzgReWVU/adHdIuCSqvoj8NMkN9AbfFpEb2bUTU2/XwJ2ZpzBpqoaBoZHLw+e997JPJYkSaukrk2xhlV/6vfK1MX3ZKZ2/J1qp4t/f2Zqr4u5zNSOmdrrYq6uZmprUsvokmzad7kvsLAp3xD4GnBEVX2vZXdfAp7d3L8xveVzNwE/ADZK8qim3W7AtZPJK0mSJEmSpJVjhYNNSU4FLga2TbIoyWuBDyT5YZKr6Q0UHdI0nwc8DnhXkiubn02afj6QZBHw8Kaf9zT3nAP8Msm1wHeAw6rql1V1L3AocF6SHwIBjp2qB5ckSZIkSdLUa3Ma3YHjFD9gKVvT9n3A+yaoezvw9nHKC/iX5mds3bnAU1aUUZIkSZIkSd0wyGl0kiRJkiRJ0v20GmxKcnySpUkWjil/U5IbklyT5ANN2U59S+iuSrJvX/s9m/Y3Jjm8r/y4pu3VSU5Lsl5TflCSX/T197qpeWxJkiRJkiRNh7an0Z0IHAOcPFqQ5NnAPsBTquqe0b2Z6G0WPreqRpqNxK9K8hWggP8CnkvvpLkfJDmrqq4FDqmqO5p+P0Jv76ejm/4+X1XzBnlISZIkSZIkrRytZjZV1YXAr8YU/zNwdFXd07RZ2vx5V1WNNG0eRm+QCWAn4MaquqmqlgGfozdYRd9AU4B1+u6RJEmSJEnSKqTtzKbxbAPskuQo4A/AoVX1A4AkzwCOB/4KeEUzy2lz4Od99y8CnjF6keQEYC/gWuBtfe1ekuRZwI/ozYDq70OSJEmSpBl395KLZjrCA5ipvS7m6mKmtgYZbJoFbATsDOwIfCHJY6vnUuBJSZ4AnJTk60DG6eNPM5iq6tVJ1gT+E9gfOAH4CnBqs0zvDcBJwG5jO0kyBAwBzJ8/f4BHkiRJkiTpoVtns11mOsL9jCxbbKaWupirq5naGuQ0ukXAGc3g0veB5cDG/Q2q6jrg98B2Tfst+6q3AJaMaX8v8HngJc31L0eX6QHHAk8fL0hVDVfV3KqaOzQ0NMAjSZIkSZIkaRCDDDZ9iWaWUZJtgNnA7Um2SjKrKf8rYFvgZuAHwNZN/WzgAOCs9DyuaR/gRcD1zfWmfd+3N3DdAHklSZIkSZI0zVoto0tyKrArsHGSRcC76e3JdHyShcAy4FVVVUn+F3B4kj/Sm+10cFXd3vQzDzgHWBM4vqquSbIGvaV2G9BbancVvc3HAd6cZG9ghN4G5QdNwTNLkiRJkiRpmrQabKqqAyeo+sdx2n4G+MwE/ZwNnD2mbDnwzAnaHwEc0SajJEmSJEmSZt4gG4RLkiRNaFU+QUWSJEmT13YZ3fHAC4GlVbVdU/Z5evsxAWwI/Kaqtk+yEzA8eivwnqo6s7nnLcDrm/Jjq+pjTfkj6G0MPofe/k4vq6pf933/jsAlwP5Vddqkn1aSJK00q/IJKpIkSZq8thuEnwjs2V9QVftX1fZVtT1wOnBGU7UQmNuU7wnMTzIryXb0Bpp2Ap4KvDDJ1s09hwPnVdXWwHnNNQBJ1gTeT2+vJ0mSJEmSJHVYq8GmqrqQ3gbdD9CcIPcy4NSm7V1VNdJUPwyo5vMTgEv66i8A9m3q9gFOaj6fBPx931e8id5g1tI2WSVJkiRJkjRzpmLPpl2A26rqx6MFSZ5B77S6vwJeUVUjzal1RyV5JHA3sBewoLnl0VV1K0BV3Zpkk6afzekNSO0G7DgFWSVNoy7uz9LFTNDdXF3TxffUxUxd1cV3ZaZ2zNReF3OZqR0ztdfFXGZqx0ztdTFXFzO1NRWDTQfSzGoaVVWXAk9K8gTgpCRfr6rrkrwfOBe4E7gKGHlAb/f3MeAdVXVvbwLV+JIMAUMA8+fPn/SDSJIkSZIkaTCpqhW3ApLMAb46ukF4UzYLWAw8vaoWTXDfd4DDqmrBmPL/Ayyqqv9OcgOwazOraVPg/KraNslP6W0mDrAxcBcwVFVfepCoNWv25q2eaWUZWbYYM7XTxVxmasdM7XUxl5naMVN7XcxlpnbM1F4Xc5mpHTO118VcZmrHTO11MVdHM008C2iMthuET+Q5wPX9A01JtmoGoUjyV/ROrLu5uR5dHvcY4MXcNyPqLOBVzedXAV8GqKqtqmpOVc0BTgMOXsFAkyRJkiRJkmZQq2V0SU4FdgU2TrIIeHdVHQccwJgldMD/Ag5P8kdgOb0BotubutObPZv+CLyxqn7dlB8NfCHJa4FbgP0GeCZJkiRJkiTNkFaDTVV14ATlB41T9hngMxO032WC8l8Cu68gwwO+S5IkSZIkSd0yFRuES5IkSZK0WuviyWFmaq+LubqYqa22y+iOB14ILB3dIDzJ9sCngIfRO1Xu4Kr6ft89OwKXAPtX1WlJng18tK/bxwMHVNWXklwErN+UbwJ8v6r+Psk+wJH0luONAG+tqu9O/nElSdLKsir/B5IkSQ/VOpuNu5BnxowsW2ymlrqYq6uZ2mo7s+lE4Bjg5L6yDwDvraqvJ9mrud4VIMmawPuBc0YbV9V3gO2b+kcANwLfbOr+9AaTnE6zQThwHnBWVVWSpwBfoDdIJUmSOm5V/g8kSZIkTV6r0+iq6kLgV2OLgQ2az38BLOmrexNwOrB0gi5fCny9qu7qL0yyPrAb8KXme++sqmqq122+U5IkSZIkSR01yJ5NbwXOSfIheoNWfwuQZHNgX3qDRjtOcO8BwEfGKd8XOK+q7hgtSLIv8B/0lte9YIC8kiRJkiRJmmaDDDb9M3BIVZ2e5GXAccBzgI8B76iqe5M84KYkmwJPpm+JXZ8DgU/3F1TVmcCZSZ5Fb/+m54zT5xAwBDB//vwBHkmSJE0V92ySJElaPQ0y2PQq4C3N5y9y3yDRXOBzzUDTxsBeSUaq6ktN/cuAM6vqj/2dJXkksBO92U0PUFUXJvnrJBtX1e1j6oaB4dHLg+e9d4DHkiRJU8E9myRJklZPrfZsmsAS4O+az7sBPwaoqq2qak5VzQFOo3dK3Zf67jsQOHWc/vYDvlpVfxgtSPK4NKNWSXYAZgO/HCCzJEmSJEmSplGrmU1JTqV30tzGSRYB7wZeD3w8ySzgDzTL2FbQzxxgS+CCcaoPAI4eU/YS4JVJ/gjcDezft2G4JEmSJEmSOqbVYFNVHThB1dNXcN9BY65vBjafoO2u45S9H3h/m4ySJEmSJEmaeYMso5MkSZIkSZLuZ4Uzm5IcD7wQWFpV2zVlTwU+BawH3Ay8vKruaJbJXQfc0Nx+SVW9oblnNnAMveV4y4F3VtXpfd/zUnobje9YVQuSPJfesrrZwDLgsKr69oDPK0nSn52unvrW1Vxd08X3ZKZVWxfflZna6WIm6GYuM7Vjpva6mKuLmdpqs4zuRHqDRCf3lX0aOLSqLkjyGuAw4F1N3U+qavtx+nknvQGrbZKsATxitCLJ+sCbgUv72t8OvKiqliTZDjiHCZbgSZK0OuvaqW/QO/mta7m6ehpdF9+Tmdrxd6qdLv79mam9LuYyUztmaq+Lubqaqa0VLqOrqguBX40p3ha4sPl8Lr2NvFfkNcB/NH0ur6rb++qOBD5Ab6Px0e+9oqqWNJfXAA9LsnaL75EkSZIkSdIMmeyeTQuBvZvP+9E7YW7UVkmuSHJBkl0AkmzY1B2Z5PIkX0zy6KbuacCWVfXVB/m+lwBXVNU9k8wrSZIkSZKklWCyg02vAd6Y5DJgfXp7KgHcCjymqp4G/Avw2SQb0FuutwXwvaraAbgY+FCznO6jwNsm+qIkT6J3It0/PUiboSQLkiwYHh6e5CNJkiRJkiRpUJMabKqq66tqj6p6OnAq8JOm/J6q+mXz+bKmfBvgl8BdwJlNF18EdqA3ULUdcH6Sm4GdgbOSzAVIskVzzyur6icPkme4quZW1dyhoaHJPJIkSZIkSZKmwKQGm5Js0vy5BvBv9E6mI8mjkqzZfH4ssDVwU1UV8BV6J9EB7A5cW1W/raqNq2pOVc0BLgH2bk6j2xD4GnBEVX1vsg8oSZIkSZKklWeFp9ElOZXeINHGSRYB7wbWS/LGpskZwAnN52cB/55kBLgXeENVjW4u/g7gM0k+BvwCePUKvnoe8DjgXUlGT7rbo6qWtnoySZIkSZJWki4eU2+m9rqYq4uZ2lrhYFNVHThB1cfHaXs6cPoE/fyM3mDUg33Xrn2f3we8b0X5JEmSJEmaaV08pt5M7XQxV1cztTXZDcIlSZIkSZKkB2izjG5L4GTgL4HlwHBVfTzJI4DPA3OAm4GXVdWvm3t2BT4GrAXcXlV/15TfDPyO3hK7kaoa3Qh8P+A9wBOAnapqQVP+SOA0YEfgxKqaNwXPLEmSJEnSlOrikicztdfFXF3M1NYKB5uAEeBtVXV5kvWBy5KcCxwEnFdVRyc5HDgceEezsfd/A3tW1S2jm4n3eXZV3T6mbCHwYmD+mPI/AO+id2Lddg/lwSStfF38H8MuZoLu5uqaLr6nLmbqqi6+KzO1Y6b2upjLTO2Yqb0u5upiJkn3Se+guIdwQ/Jl4JjmZ9equjXJpsD5VbVtkoOBzarq38a592Zg7jiDTaP15wOHjs5s6is/qLmvzcymmjV784fySNNuZNlizNROF3OZqR0ztdfFXGZqx0ztdTGXmdoxU3tdzGWmdszUXhdzmakdM7XXxVwdzZS2bdvMbPqTJHOApwGXAo+uqlsBmgGn0RlM2wBrNQNH6wMfr6qTm7oCvpmkgPlVNfxQvv9Bcg0BQwDz54+dHCVpZenivzB1MRN0N1fXdPE9dTFTV3XxXZmpHTO118VcZmrHTO11MZeZ2jFTe13M1cVMbbWe2ZRkPeAC4KiqOiPJb6pqw776X1fVRkmOAeYCuwPrABcDL6iqHyXZ7P+zd+/RfhWF2ce/DyRAEBAqoJBEYhUEihA0RiryohEVtVWxomBFvKblUgHFKtgqseUtAgXxUpvzggIWL8hFKeUiRSJgIRggCYGgUqCYS00tIkSEeJLn/WPPkZ+Hc3ImcEgm8nzW+i1+v9kzs5+9k9VlpnOxvaQMTF0F/JXta3v6mEVmNq0VLWaCNnMlU51kqtdirmSqk0z1WsyVTHWSqV6LuZKpTjLVazFXMtVJpnot5mo0U/XMpqrT6CSNBS4EzrN9USn+WVk+R/nvslK+CLjC9q/KcrlrgT0AbC8p/10GXAxMrQ0aERERERERERHtqzmNTsBZwELbp/VcugQ4FDip/Pc7pfw7wBckjQE2Al4GnC7pGcAGth8q318LfHrUniQiIiIiImI91uqSmRZzJVOdZKrXYq4WM9Wq2bNpb+AQ4DZJc0vZ8XSDTOdLej9wH3AggO2Fkq4A5gOrgDNtL5D0h8DF3dgVY4Cv2b4CQNIBwOeBbYB/kzTX9uvKtXuBLYCNJL0FeK3tO578o0dERERERLRj3Pb7rOsIj9O/YnFzuZKpTjLVazFXq5lqjTjYZPt6YLh1ea8eps0pwCmDyu6mLKcbov7FdMvqhro2aaSMERERERERERHRhjU6jS4iYnXW52mea1veVTwd5O95RERExNNTzZ5NE4FzgefQLYvrs32GpAOBE4BdgKkDJ8hJ+nPgoz1d7A682Pbcsrxuu3Lf64AjbK+UNBn4Z2AToB843PZNZb+oM4A3AA8D77F9yyg8d0Q8BdbnaZ5rW95VPB3k73lERETE01PNaXT9wEds7wLsBRwhaVdgAfBWutPmfsv2ebYn255Mt9fTvbYH9np6u+09gN3o9mc6sJSfDMwobT5ZfgO8HtixfKYDX3pijxkREREREREREWtDzZ5NS4Gl5ftDkhYC421fBVA2/B7OwcDXe/p6sOe+GwEeuES3CTjAM4El5fubgXNtG7hR0paStiuZIiIiIiIiIiKiMWu0Z5OkScCewOzKJu+gGzDq7eNKYCpwOXBBKT4auFLSqXSzrV5eyscDP+1pvqiU/c5gk6TpdDOfmDlzZmW0iIiIiIiIdrS6112LuVrMFBGPqR5skrQZcCFwdM8MpdXVfxnwsO0FveW2XydpE+A8YBpwFXAYcIztCyW9HTgL2I+hT8Hz4wrsPqBv4OfhR86ofayIiIiIiIgmtLbXHbR7/HqLmSLiMVWDTZLG0g00nWf7osq+D6JnCV0v249IuoRu1tNVwKHAUeXyt4Azy/dFwMSephN4bIldRERENCz/X+eIiIiIp6ea0+hEN9Nooe3TajqVtAHd5t//p6dsM2Bz20sljaE7YW7gf4UuAfYFZtHNdvpJKb8EOFLSN4CXAb/Mfk0R7WrxH5YtZoJ2c7WmxffUYqao1+KfXzLVaTETtJkrmeokU70WcyVTnWSq12KuFjPVUrf39moqSK+gGxS6DVhVio8HNgY+T3eq3APAXNuvK21eCZxke6+efp4NXFrabQh8j27pXH+5xxl0g1+PAIfbvrkMdH0B2B94GHiv7TkjPJPHbDS+7unXkv4Vi0mmOi3mSqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnMlU51kqtdirmSqk0z1WszVaKbVnhDXq+Y0uusZeu8kgIuHaTML2GtQ2c+Al67mHi8ZotzAESNljIiIiIiIiIiINmywrgNERERERERERMTvjxEHmyRNlHSNpIWSbpd0VCk/RdKdkuZLuljSlqV8rKRzJN1W2hy3un4G3etYSZa0dfm9Vel7vqSbJO02uo8fERERERERERGjqWZmUz/wEdu70C2NO0LSrnSnyO1me3fgx8Bxpf6BwMa2X0S3NO4vJE1aTT9ANxgFvAa4r+fex9PtBbU78G66fZ0iIiIiIiIiIqJRIw422V5q+5by/SFgITDe9ndt95dqNwITBpoAzygnzo0DVgAPDtdPz61OB/66tB+wK3B1aXMnMKlsNB4REREREREREQ1aoz2bygylPYHZgy69D7i8fL8A+BWwlG6W0qm2719dP5LeBCy2PW9Qv/OAt5Y6U4EdeGxQq7e/6ZLmSJrT19e3Jo8UERERERERERGjaMTT6AZI2gy4EDja9oM95Z+gWyJ3XimaCqwEtge2Aq6T9O+27x6qH0mbAp8AXjvEbU8CzpA0F7gNuLXc63fY7gMGRpl8+JEzah8rIiIiniK/XnLduo4QEREREetA1WCTpLF0A0Tn2b6op/xQ4E+AV9seWP72TuAK278Blkn6ATAFuHuYfp4PPA+YJwm6mUu3SJpq+7+B95Z7CbinfCIiIqJx47bfZ11H+B39Kxav6wgRERERTwsjDjaVQZ6zgIW2T+sp3x/4GLCv7Yd7mtwHTJP0L8CmdJuBf3a4fmzfBmzb0++9wBTbPy8n3D1sewXwAeDa3llVEdGWFmcxtJgJ2s3VmhbfU4uZWtXiu0qmOslUr8VcyVQnmeq1mCuZ6iRTvRZztZiplh6bkDRMBekVwHV0y9hWleLjgc8BGwP/W8putP2XZZncV+g29xbwFdunDNeP7csG3e9eHhts+mPgXLpleXcA77f9ixGeyWM2Gj9ClbWrf8VikqlOi7mSqU4y1WsxVzLVSaZ6LeZKpjrJVK/FXMlUJ5nqtZgrmeokU70WczWaSbV1R5zZZPt6ukGjwS4bogzby4ED16CfwfUm9Xy/AdhxpDYREREREREREdGGNTqNLiIiIiIiIiIiYnVGHGySNFHSNZIWSrpd0lGl/O8kzZc0V9J3JW1fyreSdHG5dpOk3Xr6+rKkZZIWDLrHgaXvVZKm9JSPlXSOpNvK/Y8bvUePiIiIiIiIiIjRVjOzqR/4iO1d6Db7PkLSrsAptne3PRm4FPhkqX88MNf27sC7gTN6+job2H+IeywA3gpcO6j8QGBj2y8CXgL8haRJFZkjIiIiIiIiImIdGHGwyfZS27eU7w8BC4Hxg06FewYwsNP4rsDVpf6dwCRJzy6/rwXuH+IeC23/aKjbA8+QNAYYB6wAchpdRERERERERESjRtwgvFeZVbQnMLv8PpFu9tIvgVeVavPoZildL2kqsAMwAfjZE8h3AfBmYCmwKXCM7ccNVkmaDkwHmDlz5hO4TURERERERMQT1+Ix9clUr8VcLWaqVT3YJGkz4ELg6IFZTbY/AXyi7KV0JPAp4CTgDElzgduAW+mW4j0RU4GVwPbAVsB1kv7d9t29lWz3AX0DPw8/csYTvF1ERERERETEmhu3/T7rOsLv6F+xOJkqtZir1Uy1qgabJI2lG2g6z/ZFQ1T5GvBvwKfKQNR7SzsB95TPE/FO4ArbvwGWSfoBMAW4e/XNImJdaHHkvcVM0G6u1rT4nlrM1KoW31Uy1Ummei3mSqY6yVSvxVzJVCeZ6rWYq8VMtWR79RW6AaNzgPttH91TvqPtn5TvfwXsa/ttkrYEHra9QtIHgX1sv7un3STgUtu7MYikWcCxtueU3x8DdgbeR7eM7ofAQbbnryayx2w0fsQHX5v6Vywmmeq0mCuZ6iRTvRZzJVOdZKrXYq5kqpNM9VrMlUx1kqlei7mSqU4y1WsxV6OZVFu35jS6vYFDgGmS5pbPG4CTJC2QNB94LXBUqb8LcLukO4HX95Qj6evADcALJS2S9P5SfoCkRcAfA/8m6crS5IvAZnSn1f0Q+MoIA00REREREREREbEOjbiMzvb1wFCjV5cNU/8GYBI1hZYAACAASURBVMdhrh08TPnFwMVDlC8HDhwpY0REREREREREtKFmZlNERERERERERESVEQebJE2UdI2khZJul3TUoOvHSrKkrcvvrSRdLGm+pJsk7dZT96iy9O52Sb37P02WdGNZojdH0tRS/tGepXsLJK2U9Aej9/gRERERERERETGaamY29QMfsb0LsBdwhKRdoRuIAl4D3NdT/3hgru3dgXcDZ5S6uwEfBKYCewB/Imlgud3JwAzbk4FPlt/YPsX25FJ+HPB92/c/mQeOiIiIiIiIiIinzoiDTbaX2r6lfH8IWAgMbIl+OvDXQO+RdrsCV5f6dwKTJD2bbuPwG20/bLsf+D5wwMBtgC3K92cCS4aIcjDw9fpHi4iIiIiIiIiItW2N9mySNAnYE5gt6U3AYtvzBlWbB7y11J8K7ABMoDtR7v9IepakTYE3ABNLm6OBUyT9FDiVbhZT7303BfYHLhwm1/Sy/G5OX1/fmjxSRERERERERESMourBJkmb0Q32HE23tO4TdEveBjsJ2ErSXOCvgFuBftsLgc8AVwFX0A1K9Zc2hwHH2J4IHAOcNajPPwV+MNwSOtt9tqfYnjJ9+vTaR4qIiIiIiIiIiFE2pqaSpLF0A03n2b5I0ouA5wHzJEE3c+kWSVNt/zfw3tJOwD3lg+2zKANJkv4vsKjc4lBgYOPxbwFnDopwEFlCFxERsV759ZLr1nWEiIiIiFgHRhxsKgNGZwELbZ8GYPs2YNueOvcCU2z/XNKWwMO2VwAfAK61/WCpt63tZZKeS7fU7o9LF0uAfYFZwDTgJz19P7Nce9eTe9SIeKq1+A/LFjNBu7la0+J7ajFT1Gvxzy+Z6rSYCdrMlUx1kqlei7mSqU4y1WsxV4uZasn26itIrwCuA24DVpXi421f1lPnXh4bbPpj4FxgJXAH8H7bvyj1rgOeBfwG+LDtq3vucQbd4NcjwOG2by7X3gPsb/ugymfymI3Gj1xrLepfsZhkqtNirmSqk0z1WsyVTHWSqV6LuZKpTjLVazFXMtVJpnot5kqmOslUr8VcjWZSbd0RZzbZvh5YbYe2J/V8vwHYcZh6+6zmHi8Z5trZwNkj5YyIiIiIiIiIiHVvjU6ji4iIiIiIiIiIWJ0RB5skTZR0jaSFkm6XdFTPtb+S9KNSfnJP+XGS7irXXtdTfkypu0DS1yVtUsrPlnSPpLnlM7mnzStL2e2Svj96jx4REREREREREaOt5jS6fuAjtm+RtDlws6SrgGcDbwZ2t/2opG0BJO1Kd3rcHwHbA/8uaSfgOcCHgF1t/1rS+aXe2eU+H7V9Qe+Ny2bj/0S3Z9N9A/eIiIiIiIiIiIg2jTizyfZS27eU7w8BC4HxwGHASbYfLdeWlSZvBr5h+1Hb9wB3AVPLtTHAOEljgE3pTqFbnXcCF9m+b9A9IiIiIiIiIiKiQWu0Z5OkScCewGxgJ2AfSbMlfV/SS0u18cBPe5otAsbbXgycCtwHLAV+afu7PfVOlDRf0umSNi5lOwFbSZol6WZJ7x4m13RJcyTN6evrW5NHioiIiIiIiIiIUVQ92CRpM+BC4GjbD9LNUtoK2Av4KHC+JDH0yXWWtBXdrKfn0S2ve4akd5XrxwE7Ay8F/gD4WCkfQ3dK3RuB1wF/W5bk/W7ndp/tKbanTJ8+vfaRIiIiIiIiIiJilNXs2YSksXQDTefZvqgUL6Jb4mbgJkmrgK1L+cSe5hPolsvtB9xj+39KnxcBLwf+xfbSUvdRSV8Bju25x89t/wr4laRrgT2AHz+hp42IiIiIiIh4Cvx6yXXrOsLjJFO9FnO1mKnWiINNZbbSWcBC26f1XPo2MA2YVWYbbQT8HLgE+Jqk0+hmMO0I3ASsAvaStCnwa+DVwJxyj+1sLy33eguwoNzjO8AXyh5PGwEvA05/co8cERERERERMbrGbb/Puo7wO/pXLE6mSi3majVTrZqZTXsDhwC3SZpbyo4Hvgx8WdICYAVwaJnldHs5ae4OupPsjrC9Epgt6QLgllJ+KzCwwdJ5krahW4I3F/hLANsLJV0BzKcbrDrT9sBAVERERERERERENGbEwSbb1zP0PkwA7xqq0PaJwIlDlH8K+NQQ5dNWc/9TgFNGyhkRERFtWZ+nfkdERETEE1e1Z1NERETEmlqfp35HRERExBM34ml0kiZKukbSQkm3SzqqlH9T0tzyuXdgiZ2kZ5X6yyV9oaefzXvqz5X0c0mfLdc+LOkOSfMlXS1ph552K3vaXDL6ryAiIiIiIiIiIkZLzcymfuAjtm+RtDlws6SrbL9joIKkfwR+WX4+AvwtsFv5AGD7IWByT5ubgYGT7W4Fpth+WNJhwMnAQP+/tv3bdhERERERERER0a6aPZuWAkvL94ckLQTG020APnBa3dvpTqbD9q+A6yW9YLg+Je0IbAtcV9pc03P5RobZCyoiIiIiIiKiRS3uVZhM9VrM1WKmWmu0Z5OkScCewOye4n2An9n+yRp0dTDwzXJ63WDvBy7v+b2JpDl0M6xOsv3tIXJNB6YDzJw5cw1iRERERERERDx5Le5VmEx1WszVaqZa1YNNkjYDLgSOtv1gz6WDga9X37FzEHDIEPd4FzAF2Len+Lm2l0j6Q+B7km6z/Z+97Wz3AX0DPw8/csYaxomI0dDiyHuLmaDdXK1p8T21mKlVLb6rZKqTTPVazJVMdZKpXou5kqlOMtVrMVeLmWpp6MlFgypJY4FLgSttn9ZTPgZYDLzE9qJBbd5Dtw/TkYPK9wC+ZXunQeX7AZ8H9rW9bJgcZwOX2r5gNXE9ZqPxIz7T2tS/YjHJVKfFXMlUJ5nqtZgrmeokU70WcyVTnWSq12KuZKqTTPVazJVMdZKpXou5Gs2k2ro1p9EJOAtY2DvQVOwH3Dl4oGkEj5sJJWlPYCbwpt6BJklbSdq4fN8a2JuyV1RERERERERERLSnZhnd3nRL3m6TNLeUHW/7MrrlcI9bQifpXmALYCNJbwFea3tgkOjtwBsGNTkF2Az4Vje2xX223wTsAsyUtIpuYOyknn4iIiIiIiIiIqIxNafRXQ8MOVXK9nuGKZ+0mv7+cIiy/Yap+x/Ai0bKGBERERERERERbVij0+giIlanxQ3sWswE7eZqTYvvqcVMrWrxXSVTnWSq12KuZKqTTPVazJVMdZKpXou5WsxUa8QNwiVNBM4FngOsAvpsnyFpMvDPwCZAP3C47Zsk/TnwsdJ8OXCY7Xmlr3uBh4CVQL/tKaV8j9LXZsC9wJ/3nngn6bl0ezWdYPvUEZ4pG4RXaDETtJkrmeokU70WcyVTnWSq12KuZKqTTPVazJVMdZKpXou5kqlOMtVrMVejmUZvg3C6gaSP2N4F2As4QtKuwMnADNuTgU+W3wD30J0otzvwd0DfoP5eZXvywEBTcSbwcdsvAi4GPjqozenA5bUPFRERERERERER68aIg022l9q+pXx/CFgIjAdMtwk4wDOBJaXOf9j+RSm/EZhQkeOFwLXl+1XAnw1cKBuM3w3cXtFPRERERERERESsQzUzm35L0iRgT2A2cDRwiqSfAqcCxw3R5P387owkA9+VdLOk6T3lC4A3le8HAhPL/Z5BtyRvxgi5pkuaI2lOX9/giVQREREREREREbG2VG8QLmkz4ELgaNsPSvp74BjbF0p6O3AWsF9P/VfRDTa9oqebvW0vkbQtcJWkO21fC7wP+JykTwKXACtK/RnA6baXS8MvDbTdx2PL9Xz4kasdm4qIp0iLG9i1mAnazdWaFt9Ti5la1eK7SqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnO1mKnWiBuEA0gaC1wKXGn7tFL2S2BL21Y3EvRL21uUa7vT7b30ets/HqbPE4Dlgzf8lrQT8C+2p0q6jjLLCdiSboPyT9r+wmriZoPwCi1mgjZzJVOdZKrXYq5kqpNM9VrMlUx1kqlei7mSqU4y1WsxVzLVSaZ6LeZqNFP1BuEjzmwqA0lnAQsHBpqKJcC+wCxgGvCTUv+5wEXAIb0DTWVJ3Aa2HyrfXwt8ulzb1vYySRsAf0N3Mh229+lpfwLd4NTqBpoiYh1qceS9xUzQbq7WtPieWszUqhbfVTLVSaZ6LeZKpjrJVK/FXMlUJ5nqtZirxUy1RpzZJOkVwHXAbXQziwCOBx4EzqAbsHoEONz2zZLOpNvg+79K3X7bUyT9Id1sJ0qbr9k+sdzjKOCIcu0i4DgPCjbcTKghZGZThRYzQZu5kqlOMtVrMVcy1Ummei3mSqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnM1mmn0ZjbZvh4YrsOXDFH/A8AHhii/G9hjmHucQTdwtbocJ4yUNSLWrRZH3lvMBO3mak2L76nFTK1q8V0lU51kqtdirmSqk0z1WsyVTHWSqV6LuVrMVKtqz6b1TGY2VWgxE7SZK5nqJFO9FnMlU51kqtdirmSqk0z1WsyVTHWSqV6LuZKpTjLVazFXo5lGdc+micC5wHPoltH12T5D0h50eyttBtwL/Hk5pW4qj50MJ+AE2xf39LchMAdYbPtPSpmAvwcOBFYCX7L9OUlvBv6u3Lef7iS862sfLiLWrhZH3lvMBO3mak2L76nFTK1q8V0lU51kqtdirmSqk0z1WsyVTHWSqV6LuVrMVGvEwSa6QZ6P2L5F0ubAzZKuAs4EjrX9fUnvAz4K/C2wAJhiu1/SdsA8Sf9qu7/0dxSwENii5x7voTt1bmfbqyRtW8qvBi4pJ97tDpwP7PyknjginjLjtt9n5EprUf+Kxc1lgjZz9a9YvK4jDKnF99RipvX5f4isbS3++cX6LX+nIiIiHq9mz6alwNLy/SFJC4HxwAuBa0u1q4Argb+1/XBP802A367TkzQBeCNwIvDhnnqHAe+0varcZ1n57/KeOs/o7Ssi2pN/8NbLu4rR1No/dqHdgbkWtfiekqlO/k7VafHPL5nqtZgrmeokU70Wc7WaqVbNzKbfkjQJ2BOYTTeD6U3Ad+iWv03sqfcy4MvADsAhPbOaPgv8NbD5oK6fD7xD0gHA/wAfsv2T0tcBwD8A29INVA2VazowHWDmzJlr8kgRMYrW5/9juLblXUVERERExO+rDWorStoMuJBu36QHgfcBR0i6mW7waMVAXduzbf8R8FLgOEmbSPoTYJntm4fofmPgEdtTgP9HN1A10NfFtncG3kK3f9Pj2O6zPcX2lOnTp9c+UkREREREREREjLKqwSZJY+kGms6zfRGA7Tttv9b2S4CvA/85uJ3thcCvgN2AvYE3SboX+AYwTdK/lKqLSv8AFwO7D9HXtcDzJW1d/3gREREREREREbE2jTjYVE6KOwtYaPu0nvJty383AP6G7mQ6JD1P0pjyfQe6vZ3utX2c7Qm2JwEHAd+z/a7S3beBaeX7vsCPS/sXlPsj6cXARsD/PqknjoiIiIiIiIiIp0zNnk17A4cAt0maW8qOB3aUdET5fRHwlfL9FcDHJf0GWAUcbvvnI9zjJOA8SccAy4EPlPI/A95d+vo18A7b2SQ8IiIiIiIiIqJRNafRXQ9omMtnDFH/q8BXR+hzFjCr5/cDDLH5t+3PAJ8ZKWNERERERERERLSheoPwiIiIiIiIiIiIkdRuEL6JpJskzZN0u6QZpfx5kmZL+omkb0raaFC7t0mypCnl91RJc8tnnqQDVtd/uXaepB9JWiDpy2Wz8oiIiIiIiIiIaFDNnk0AjwLTbC8vgz3XS7oc+DBwuu1vSPpn4P3AlwAkbQ58CJjd088CYIrtfknbAfMk/etw/du+ETgPGNhI/Gt0+zl96ck8dERExO+TXy+5bl1HiCehxT+/ZFq/tfiukqlOi5mgzVzJVCeZ6rWYq8VMtaoGm8qm3MvLz7HlY7oT5N5Zys8BTuCxgaC/A04Gju3p5+Gebjcpfayuf2xfNtBA0k3AhJrMERERTxfjtt9nXUd4nP4Vi9d1hPVGa39+/SsWJ1OlVv+et/auWvzzS6Z6LeZKpjrJVK/FXK1mqlW9Z5OkDctpdMuAq4D/BB6w3V+qLALGl7p7AhNtXzpEPy+TdDtwG/CXA+0H92979qB2Y+lOxbtiiD6nS5ojaU5fX1/tI0VERERERERExCirHmyyvdL2ZLqZRVOBXYaqJmkD4HTgI8P0M9v2HwEvBY6TtMlQ/UvabVDTfwKutf24eWS2+2xPsT1l+vTptY8UERERERERERGjbI1Po7P9ADAL2AvYUtLAUrwJwBJgc2A3YJake0u9SwY2Ce/pZyHwq1J3qP73HyiT9ClgG7o9oiIiIiIiIiIiolG1p9FtI2nL8n0csB+wELgGeFupdijwHdu/tL217Um2JwE3Am+yPaecXjem9LMD8ELg3mH6v7P8/gDwOuBg26tG5akjIiIiIiIiIuIpUXsa3XbAOZI2pBugOt/2pZLuAL4h6e+BW4GzRujnFcDHJf0GWAUcbvvnknYfqv/S5p+B/wJukARwke1Pr8EzRsRasj6flrC25V1FRERERMTvq9rT6OYDew5Rfjfd/k2ra/vKnu9fBb5a23+5VjsgFhHr2Pp8WsLalncVERERERG/rzKQExGjpsXZOi1mgnZztabF99Ripla1+K6SqU4y1WsxVzLVSaZ6LeZKpjrJVK/FXC1mqiXbq6/QnRZ3LbAx3eDUBbY/JelI4Gjg+cA2tn9e6r8S+A5wT+niItufljQROBd4Dt0Suj7bZ5Q2fwB8E5gE3Au83fYvJO0MfAV4MfAJ26dWPJPHbDS+7unXkv4Vi0mmOi3mSqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnMlU51kqtdirmSqk0z1WszVaCbV1q3ZIPxRYJrtPYDJwP6S9gJ+QLeR938N0eY625PLZ2B/pX7gI7Z3oTuh7ghJu5ZrHweutr0jcHX5DXA/8CGgZpApIiIiIiIiIiLWsREHm9xZXn6OLR/bvtX2vbU3sr3U9i3l+0N0p9kNDNO9GTinfD8HeEupt8z2D4Hf1N4nIiIiIiIiIiLWnao9m8opcTcDLwC+aHv2CE3+WNI8YAlwrO3bB/U3iW5D8IF+nm17KXSDUpK2rX6Crr/pwHSAmTNnrknTiIiI9V6r6/lbzdWaFt9TMq3fWnxXyVSnxUzQZq5kqpNM9VrM1WKmWrWn0a0EJkvaErhY0m62FwxT/RZgB9vLJb0B+Daw48BFSZsBFwJH237wycX/bb4+oG/g5+FHzhiNbiMiItYLrZ1uCN0+A63lavXUxRbfUzLVyd+pOi3++SVTvRZzJVOdZKrXYq5WM9Wq2bPpt2w/AMwC9l9NnQcHlt3ZvgwYK2lrAElj6QaazrN9UU+zn0nartTZDli2JrkiIiIiIiIiIqINIw42SdqmzGhC0ji6TcHvXE3950hS+T613ON/S9lZwELbpw1qdglwaPl+KN1pdhERERERERERsZ6pmdm0HXCNpPnAD4GrbF8q6UOSFgETgPmSziz13wYsKHs2fQ44yLaBvYFDgGmS5pbPG0qbk4DXSPoJ8Jrye2DgahHwYeBvJC2StMWoPHlERERERERERIy6Efdssj2fbjPvweWfoxtMGlz+BeALQ5RfD2iYe/wv8Oohyv+bbjArIiIiIiIiIiLWA2u0Z1NERERERERERMTq1OzZtImkmyTNk3S7pBml/DxJP5K0QNKXy+bfA21eWZbJ3S7p+z3l+5c2d0n6eE/5dT1L65ZI+nYpl6TPlfrzJb14dB8/IiIiIiIiIiJGU83MpkeBabb3ACYD+0vaCzgP2Bl4ETAO+ABA2Uz8n4A32f4j4MBSviHwReD1wK7AwZJ2BbC9j+3JticDNwADJ9W9HtixfKYDX3rSTxwREREREREREU+ZEQeb3Flefo4tH9u+rFwzcBOP7a30TuAi2/eV9stK+VTgLtt3214BfAN4c++9JG0OTAO+XYreDJxbbnMjsKWk7Z7ow0ZERERERERExFOras8mSRtKmgssozuNbnbPtbF0p8xdUYp2AraSNEvSzZLeXcrHAz/t6XZRKet1AHC17QfXoA2SpkuaI2lOX19fzSNFRERERERERMRTYMTT6ABsrwQmlyVyF0vazfaCcvmfgGttX9fT50voTpcbB9wg6UaGPonOg34fDJzZ87umDbb7gIFRJh9+5IyKp4qIiIiIiIiIiNFWNdg0wPYDkmYB+wMLJH0K2Ab4i55qi4Cf2/4V8CtJ1wJ7lPKJPfUmAEsGfkh6Ft1SuwMG9TVsm4iIiIiIiIiIaEvNaXTblBlNSBoH7AfcKekDwOuAg22v6mnyHWAfSWMkbQq8DFgI/BDYUdLzJG0EHARc0tPuQOBS24/0lF0CvLucSrcX8EvbS5/w00ZERERERERExFOqZmbTdsA55TS5DYDzbV8qqR/4L7plctBtCv5p2wslXQHMB1YBZw4suZN0JHAlsCHwZdu399znIOCkQfe+DHgDcBfwMPDeJ/icERERERERTfv1kutGrrQOtJirxUwR8ZgRB5tszwf2HKJ82La2TwFOGaL8MroBpKHavHKIMgNHjJQxIiIiIiJifTdu+33WdYTH6V+xuLlcrWaKiMfULKPbRNJNkuZJul3SjFJ+VimbL+kCSZv1tHm7pDtK/a/1lH9G0oLyeUdP+ZB9SdpB0tWlfJakCaP7+BERERERERERMZpqltE9CkyzvVzSWOB6SZcDx9h+EEDSacCRwEmSdgSOA/a2/QtJ25Y6bwReDEwGNga+L+ny0seQfQGnAufaPkfSNOAfgENG7ekjYlS1OJ25xUzQbq7WtPieWszUqhbfVTLVSaZ6LeZKpjrJVK/FXMlUJ5nqtZirxUy1apbRGVhefo4tH/cMDgkYB7jU+SDwRdu/KO2XlfJdge/b7gf6Jc2jO9Xu/NX0tStwTPl+DfDtJ/icEbEWtDidubVM0GauVqd+t/ieWszUqhbfVTKNLJnqtZgrmeokU70WcyVTnWSq12KuVjPVGnEZHYCkDSXNBZYBV9meXcq/Avw3sDPw+VJ9J2AnST+QdKOk/Uv5POD1kjaVtDXwKmBizz2G6mse8Gfl+wHA5pKeVf10ERERERERERGxVlUNNtleaXsyMAGYKmm3Uv5eYHtgITCwB9MYYEfglcDBwJmStrT9XbrNwf8D+DpwA9Dfc4+h+joW2FfSrcC+wOLeNgMkTZc0R9Kcvr6++qePiIiIiIiIiIhRVbNn02/ZfkDSLLrlbwtK2UpJ3wQ+CnwFWATcaPs3wD2SfkQ3+PRD2ycCJwKUjcN/Mqj/3+nL9hLgraX+ZsCf2f7lELn6gIFRJh9+5Iw1eayIGCUtriluMRO0m6s1Lb6nFjO1qsV3lUx1kqlei7mSqU4y1WsxVzLVSaZ6LeZqMVMtdVsyraaCtA3wmzLQNA74LnAysND2XWWfpVMAbB9bls0dbPvQslzuVrpNwR8AtrT9v5J2B75WylcCzx+mr62B+22vknQisNL2J0d4Jo/ZaPwTehlPlf4Vi0mmOi3mSqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnMlU51kqtdirmSqk0z1WszVaCbV1q2Z2bQdcI6kDemW3Z0P/BtwnaQtANHtrXRYqX8l8FpJd9ANJH20DDBtUtoAPAi8y3a/pA1K/0P19UrgHyQZuBY4ovbBIiIiYt1an/+/cRERERHxxNWcRjcf2HOIS3sPU9/Ah8unt/wRutPlBtdftZq+LgAuGCljRLQh/7Csl3cVTwfr8wkqEREREfHErdGeTRERq5N/WNbLu4qIiIiIiN9XVafRSdpE0k2S5km6XdKMQdc/L2l5z+/TJc0tnx9LeqDn2smlj4WSPlf2aULSSyTdJumuQeWTJd1Y+pojaeroPHpERERERERERIy2qsEm4FFgmu096Db13l/SXgCSpgBb9la2fYztybYnA58HLip1X063ZG53YDfgpcC+pdmXgOl0J9ftSHfiHXSbkc8ofX2y/I6IiIiIiIiIiAZVLaMr+zANzFwaWz4um4afArwTOGCY5gcDnxroCtgE2IhuM/CxwM8kbQdsYfsGAEnnAm8BLi9ttijtnwksqX24iFi7sg9RvbyriIiIiIj4fVW9Z1MZWLoZeAHwRduzJR0FXGJ7aVn1NrjNDsDzgO8B2L5B0jXAUrrBpi/YXlhmRy3qaboIGDjj72jgSkmn0s3EevkaPmNErCXZh6he3lVERERERPy+ql1Gh+2VZSnbBGCqpP8DHEi3TG44BwEX2F4JIOkFwC6lj/HAtNLP40equhlNAIcBx9ieCBwDnDW4oqTpZT+nOX19fbWPFBERERERERERo2yNT6Oz/YCkWcCr6GY53VVmNW0q6S7bL+ipfhBwRM/vA4AbbS8HkHQ5sBfwVboBqAETeGy53KHAUeX7t4Azh8jUBwyMMvnwI2cMrhIRa0GLS8NazATt5mpNi++pxUytavFdJVOdZKrXYq5kqpNM9VrMlUx1kqlei7lazFSrarBJ0jbAb8pA0zhgP+Aztp/TU2d570CTpBcCWwE39HR1H/BBSf9AN5tpX+CzZRneQ2XT8dnAu3lsxtSSUm8WMA34yRN60oh4yrW4NKy1TNBmrlaX0bX4nlrM1KoW31UyjSyZ6rWYK5nqJFO9FnO1mikiHlM7s2k74Jyyb9MGwPm2Lx2hzcHAN8rm4gMuoBswuo1umdwVtv+1XDsMOBsYR7cx+OWl/IPAGZLGAI/QnVgXERERERER0YwWB8CSqU6LuVrNVKv2NLr5wJ4j1Nls0O8ThqizEviLYdrPAXYbovx64CU1OSMiIiIiIiIiYt2q3iA8IiIiIiIiIiJiJCMONknaRNJNkuZJul3SjFJ+tqR7JM0tn8ml/JmS/rWn/nt7+nqupO9KWijpDkmTSvl1Pf0skfTtUv7RnvIFklZK+oOn4kVERERERERERMSTV7OM7lFgmu3lksYC15dT5AA+avuCQfWPAO6w/adlY/EfgPfcRAAAIABJREFUSTrP9grgXOBE21dJ2gxYBWD7twsRJV0IfKeUnwKcUsr/FDjG9v1P+GkjIiIiIiIa1erJUy3majFTRDxmxMGmssH38vJzbPl4+BYY2FySgM2A+4F+SbsCY2xfVfpdPrihpM3pNhB/7+BrdBuOf32kvBEREREREeuj1jYDhnY3KW4xU4sDYMlUr8VcLWaqVbVBeDmF7mbgBcAXbc+WdBhwoqRPAlcDH7f9KPAF4BJgCbA58A7bqyTtBDwg6SLgecC/lzYre251AHC17QcH3X9TYH/gyCfxrBERERERERFPiRYHwJKpTou5Ws1Uq2qDcNsrbU8GJgBTJe0GHAfsDLwU+APgY6X664C5wPbAZOALkragG9jaBzi2tPlD4D2DbjXc7KU/BX4w3BI6SdMlzZE0p6+vr+aRIiIiIiIiIiLiKVA1s2mA7QckzQL2t31qKX5U0lfoBpGgWwJ3Ull+d5eke+gGpRYBt9q+G6BsAr4XcFb5/SxgKt3spsEOYjVL6Gz3AQOjTD78yBlr8lgRMUrW52mea1veVTwd5O95RERExNPTiINNZZPv35SBpnHAfsBnJG1ne2nZm+ktwILS5D7g1cB1kp4NvBC4G/gFsJWkbWz/D93eTHN6bnUgcKntRwbd/5nAvsC7nsyDRsTTU/6xu35r8c+vxUxRr8U/v2Sq02ImaDNXMtVJpnot5kqmOslUr8VcLWaqpW4C0moqSLsD5wAb0i27O9/2pyV9D9gGEN2yub8sJ9ZtD5wNbFeunWT7X0pfrwH+sZTfDEwvp9RRZkydZPuKQfd/D91MqoMqn8ljNhpfWXXt6F+xmGSq02KuZKqTTPVazJVMdZKpXou5kqlOMtVrMVcy1Ummei3mSqY6yVSvxVyNZlJt3ZrT6OYDew5RPm2Y+kuA1w5z7Spg92GuvXKY8rPpBq8iIiIiIiIiIqJxa7RnU0REREREREQ8XotLnpKpXou5WsxUq2bPpk2Aa4GNS/0LbH+q7NX093R7La0EvmT7c5K2Ar4MPB94BHif7QWlr3uBh0r9fttTBt3rWOAUYBvbPy9lrwQ+C4wFfm573yf70BERERERERGjqcVj6pOpTou5Ws1Uq2Zm06PAtLIf01jgekmXA7sAE4Gdba+StG2pfzww1/YBknYGvki3YfiAVw0MJPWSNBF4Dd0G4wNlWwL/RLdn030994iIBq3PI+9rW95VRERERET8vqrZs8nA8vJzbPkYOAx4p+1Vpd6yUmdX4B9K2Z2SJkl6tu2fjXCr04G/Br7TU/ZO4CLb9w26R0Q0aH0eeV/b8q4iIiIiIuL31QY1lSRtKGkusAy4yvZsumVy75A0R9LlknYs1ecBby3tpgI7ABPKNQPflXSzpOk9/b8JWGx73qBb7wRsJWlWafPuJ/icERERERERERGxFlRtEG57JTC5LGu7WNJudHs4PWJ7iqS30u3TtA9wEnBGGZy6DbgV6C9d7W17SVkOd5WkO4E5wCcY+gS7McBL6JbhjQNukHSj7R/3VioDV9MBZs6cWf/0ERERERERERExqtboNDrbD0iaBewPLAIuLJcuBr5S6jwIvBegbCJ+T/lge0n57zJJFwNTgV8AzwPmddWZANxSZkUtotsU/FfAryRdC+wB/M5gk+0+oG/g5+FHzliTx4qIiIiIiIiIiFEy4jI6SduUGU1IGgfsB9wJfBuYVqrtSxkAkrSlpI1K+QeAa20/KOkZkjYvdZ5BN5Npge3bbG9re5LtSXQDTC+2/d90+zftI2mMpE2BlwELR+XJIyIiIiIiIiJi1NXMbNoOOEfShnSDU+fbvlTS9cB5ko6h20D8A6X+LsC5klYCdwDvL+XPpluCN3Dfr9m+YnU3tr1Q0hXAfGAVcKbtBWv0hBERERERERERsdbUnEY3H9hziPIHgDcOUX4DsOMQ5XfTLYEb6X6TBv0+BThlpHYRERERERER68qvl1y3riM8TjLVazFXi5lqrdGeTRERERERERHxeOO232ddR/gd/SsWJ1OlFnO1mqlWzZ5Nm0i6SdI8SbdLmlHKXy3pFklzJV0v6QWlfGNJ35R0l6TZkiYN6u+5kpZLOran7MuSlklaMKjuCZIWl3vMlfSG6ieLiIiIiIiIiIi1bsTBJuBRYJrtPYDJwP6S9gK+BPy57cnA14C/KfXfD/zC9guA04HPDOrvdODyQWVn051wN5TTbU8un8sq8kZERERERERExDoy4mCTO8vLz7Hl4/LZopQ/E1hSvr8ZOKd8vwB4tcqu4JLeAtwN3D7oHtcC9z/xx4iIiIiIiIiIiBbUzGxC0oaS5gLLgKtsz6Y7fe4ySYuAQ4CTSvXxwE8BbPcDvwSeJekZwMeAGWuY8UhJ88tSu63WsG1ERERERERERKxFVYNNtleW5XITgKmSdgOOAd5gewLwFeC0Ul1DdUE3yHR6zyypGl8Cnk+3fG8p8I9DVZI0XdIcSXP6+vrWoPuIiIiIiIiIiBhNa3Qane0HJM0CXg/sUWY4AXwTuKJ8XwRMBBZJGkO3xO5+4GXA2ySdDGwJrJL0iO0vrOZ+Pxv4Lun/AZcOU68PGBhl8uFHrunkqYiIiIiIiIiIGA01p9FtI2nL8n0csB+wEHimpJ1KtdeUMoBLgEPL97cB3yv7Pu1je5LtScBngf+7uoGmcr/ten4eACwYrm5ERERERERERKx7NTObtgPOkbQh3eDU+bYvlfRB4EJJq4BfAO8r9c8CvirpLroZTQeNdANJXwdeCWxd9oD6lO2zgJMlTaZbhncv8Bdr8nAREREREREREbF2jTjYZHs+sOcQ5RcDFw9R/ghw4Ah9njDo98HD1DtkpHwREREREREREdGOqg3CIyIiIiIiIiIiatTs2bSJpJskzZN0u6QZpXyapFskLZB0TtkMHEk7S7pB0qOSju3pZ6KkayQtLP0c1XNtsqQbJc0tp8pNHZThpZJWSnrb6D16RERERERERESMtpqZTY8C02zvAUwG9pf0cuAc4CDbuwH/xWObgt8PfAg4dVA//cBHbO8C7AUcIWnXcu1kYIbtycAny28Ayl5RnwGufALPFxERERERERERa1HNnk0GlpefY8tnJfCo7R+X8quA44CzbC8Dlkl646B+lgJLy/eHJC0ExgN30G0AvkWp+kxgSU/TvwIuBF66xk8XERER68yvl1y3riNERERExDpQcxrdwOyim4EXAF8EbgLGSppiew7wNmBi7U0lTaLbdHx2KToauFLSqXSzrV5e6o0HDgCmkcGmiOa1+A/LFjNBu7la0+J7ajFT1Gvxzy+Z6rSYCdrMlUx1kqlei7mSqU4y1WsxV4uZalUNNtleCUyWtCXdCXR/BBwEnC5pY+C7dMvkRiRpM7qZSkfbfrAUHwYcY/tCSW8HzgL2Az4LfMz2Skmr63M6MB1g5syZNTEi4ikwbvt91nWE39G/YnFzmaDNXP0rFq/rCENq8T21mKlVLb6rZBpZMtVrMVcy1Ummei3mSqY6yVSvxVytZqpVNdg0wPYDkmYB+9s+FdgHQNJrgZ1Gai9pLN1A03m2L+q5dCgwsGH4t4Azy/cpwDfKQNPWwBsk9dv+9qBcfUDfwM/Dj5yxJo8VEaOkxZH3FjNBu7la0+J7ajFTq1p8V8lUJ5nqtZgrmeokU70WcyVTnWSq12KuFjPVUrcl02oqSNsAvykDTePoZjF9BrjJ9rIys+ky4ETb3+tpdwKwvAxKoW7E6BzgfttHD7rHQuAw27MkvRo42fZLBtU5G7jU9gUjPJPHbDR+pOdeq/pXLCaZ6rSYK5nqJFO9FnMlU51kqtdirmSqk0z1WsyVTHWSqV6LuZKpTjLVazFXo5mGX3I2SM3Mpu2Ac8q+TRsA59u+VNIpkv6klH1pYKBJ0nOAOXQbfq+SdDSwK7A7cAhwm6S5pe/jbV8GfBA4Q9IY4BHKkriIWL+0OPLeYiZoN1drWnxPLWZqVYvvKpnqJFO9FnMlU51kqtdirmSqk0z1WszVYqZaI85sWg9lZlOFFjNBm7mSqU4y1WsxVzLVSaZ6LeZKpjrJVK/FXMlUJ5nqtZgrmeokU70WczWaqXpm0wZPZZCIiIiIiIiIiHh6qR5skrShpFslXVp+P0/SbEk/kfRNSRuV8g9LukPSfElXS9qhp48rJD0w0EdP+dmS7pE0t3wml/I3l37mSpoj6RWj89gREREREREREfFUWJOZTUcBC3t+fwY43faOwC+A95fyW4EptncHLgBO7mlzCt2+TUP5qO3J5TOwp9PVwB62JwPv47FT6iIiIiIiIiIiokFVg02SJgBvpAz2lJPlptENJkF3ytxbAGxfY/vhUn4jMOH/s3fvUX5VhdnHvw+EAHIvAgJRU0FEixA1opZyEShSQBRBQQUBwVExFfHl0mhbQV/qBaz4itVEUEDAGxpFbkLBCFpQEwnITUCMmEQbQVAjlzDkef84e+DHMMnsCUlmB5/PWrPmnH322ec5J1ks3dmXgXZsXwn8uTac7QV+fFGptYCn3QJTERERERERERFPJzW70QGcBhwPrFPONwTut91fzucAQ61cdQRwaeUzTpb073Sjmf7F9sMAkvYDPgpsTNfh9SSS+ig72E2ZMqXycREREbE8rcw7qKxILX6nFjNFRETEymPYziZJ+wDzbc+UtMtA8RBVnzDqSNLBwERg54ock4HfAWOBqcAJwIcBbE8DpknaCfgIsPuTHmxPLfcB+KhJJ1U8MiIiIpanNTfbcbQjPEH/wrmjHWFILX6nFjNFRETEyqNmZNMOwL6S9gLWANalG+m0vqQxZXTTOGDewA2Sdgc+COw8MEJpSWz/thw+LOlLwLFD1Lla0haSnmn7norcERERERERERGxgg27ZpPtybbH2R4PHARcZfutwPeBA0q1Q4HvAEh6CTAF2Nf2/JoQkjYtv0W39tNN5XzLUoakl9KNfLq3+u0iIiIiIiIiImKFql2zaSgnAF+V9H/pdqA7s5SfAqwNfKP0E91te18ASdcAWwNrS5oDHGH7e8B5kjaim543C3hXaWt/4G2SHgEeBA7sWTA8IiIiIiIiIiIaM6LOJtvTgenl+C5g+yHqPGlNpZ5rQy4AYHvXxZR/HPj4SDJGRERERERERMToGXYaXURERERERERERK3qziZJq0q6XtJF5XySpDslWdIze+q9TtKNkmZJmiHpH3quHSrpjvJzaCl7hqSLJd0m6WZJH+up/35Jt5T2rpT03GXz2hERERERERERsTyMZBrd0cCtdLvRAfwIuIgyra7HlcCFti1pW+DrwNaS/gb4EDARMDBT0oXAw8Cptr8vaSxwpaR/sn0p3VpQE20/IOndwCeAA5fmRSMiIiIiIiKWlwfnXTPaEZ4kmeq1mKvFTLWqOpskjQP2Bk4G3g9g+/py7Ql1bS/oOV2LrmMJ4DXAFbb/UO67AtjT9lfodrbD9kJJPwPGlfPv97R1HXDwCN4tIiIiRtHK/D+QIiIiRmrNzYZconjU9C+cm0yVWszVaqZatdPoTgOOBxbVVJa0n6TbgIuBt5fizYHf9FSbU8p671sfeC3d6KjBjgAuXczz+sqUvRlTp06tiRgREREREREREcvBsCObJO0DzLc9U9IuNY3angZMk7QT8BFgd0BDVe15zhjgK8D/Kzvd9WY4mG763c6Led5UYKCXyUdNOqkmZkRERCxHK/O/xkVERETE0qsZ2bQDsK+k2cBXgV0lnVvTuO2rgS3KAuJzgGf3XB4HzOs5nwrcYfu03jYk7Q58ENjX9sM1z42IiIiIiIiIiNExbGeT7cm2x9keDxwEXGV7sWsnSdpSZSEnSS8FxgL3At8D9pC0gaQNgD1KGZL+L7Ae8L5Bbb0EmELX0TR/Kd4vIiIiIiIiIiJWoJHsRvcEkt5Lt47Ts4AbJV1i+0hgf+Btkh4BHgQOtG3gD5I+Avy0NPFh238oi49/ELgN+Fnppzrd9hnAKcDawDdK+d22913azBEREU9HrS7E3Wqu1rT4nZJp5dbit0qmOi1mgjZzJVOdZKrXYq4WM9VS1w/0tOIxYzcfvtYK1L9wLslUp8VcyVQnmeq1mCuZ6iRTvRZzJVOdZKrXYq5kqpNM9VrMlUx1kqlei7kazTTUWtxDWuqRTRERERERERHRaXEUSjLVazFXi5lqVXc2SVoVmAHMtb2PpPPodoh7BPgJ8E7bj0h6Hd0OdIuAfuB9tn9Y2vgEsDfdWlFXAEfbtqQD6abSrQpcbPv4Un8n4DRgW+Ag2xcsi5eOiIiIiIiIWJZa3IU1meq0mKvVTLVqdqMbcDRwa8/5ecDWwIuBNYEjS/mVwHa2JwBvB84AkPT3dDvbbQtsA7wc2FnShnRrM+1m+++ATSTtVtq6GzgMOH8EOSMiIiIiIiIiYpRUjWwqi3jvDZwMvB/A9iU9138CjCvlC3puXQsYWBTKwBp0u9MJWA34X+B5wO22f1/q/TfdIuNX2p5d2l808leLiIiI0bQyD/2OiIiIiKVXO43uNLqd59YZfEHSasAhdCOfBsr2Az4KbEzXSYXtayV9H/gtXWfT6bZvlbQBsLWk8cAc4PV0HVLVJPUBfQBTpkwZya0RERGxnKzMQ78jIiIiYukNO41O0j7AfNszF1Plv4CrbT/2z5e2p9nemq7j6COlnS2BF9KNgNoc2FXSTrbvA94NfA24BphNt9ZTNdtTbU+0PbGvr28kt0ZERERERERExDJUs2bTDsC+kmYDX6XrJDoXQNKHgI0oU+sGs301sIWkZwL7AdfZXlCm2l0KvLLU+67tV9h+FfAL4I6n9loRERERERERETEahu1ssj3Z9jjb44GDgKtsHyzpSOA1wJttP7amkqQtJakcv5RuSty9dIt97yxpTJl6tzNlwXFJG5ffGwBHURYVj4iIiIiIiIiIlctIdqMb7PPAJsC1kmZJ+vdSvj9wk6RZwGeBA20buAD4JfBz4AbgBtvfLfd8WtItwI+Aj9m+HUDSyyXNAd4ITJF081PIGxERERERERERy1ntAuEA2J4OTC/HQ95r++PAx4cofxR452LuefNiyn9K2eUuIiIiIiIiIiLa91RGNkVERERERERERDxBdWeTpFUlXS/ponJ+pqQbJN0o6QJJaw+qf4AkS5pYzt9aptsN/CySNKFcGytpqqTbJd0maf9Svrqkr0m6U9KPJY1fVi8eERERERERERHL3khGNh1NWdC7OMb2dra3pVv8e9LABUnrAO8FfjxQZvs82xNsTwAOAWbbnlUufxCYb3sr4EXAD0r5EcB9trcEPsUQ0/MiIiIiIiIiIqIdVZ1NksYBe9OzS5ztP5VrAtYE3HPLR4BPAA8tpsk3A1/pOX878NHS7iLb95Ty1wFnl+MLgN0GdrqLiIiIiIiIiIj21I5sOg04HljUWyjpS8DvgK2Bz5SylwDPtn3REto7kNLZJGn9UvYRST+T9A1Jm5SyzYHfANjuB/4IbDi4MUl9kmZImjF16tTKV4qIiIiIiIiIiGVt2N3oJO1DN8VtpqRdeq/ZPlzSqnQdTQdKOptuutthS2jvFcADtm/qyTAO+JHt90t6P3Aq3VS7oUYx+UkF9lRgoJfJR006abjXioiIiIiIiFhmHpx3zWhHeJJkqtdirhYz1Rq2swnYAdhX0l7AGsC6ks61fTCA7UclfQ04DvgWsA0wvcx2exZwoaR9bc8o7R3EE6fQ3Qs8AEwr59+gW6sJYA7wbGCOpDHAesAflupNIyIiIiIiIpaTNTfbcbQjPEH/wrnJVKnFXK1mqjXsNDrbk22Psz2erqPoKuAQSVvCY2s2vRa4zfYfbT/T9vhS/zrgsY4mSasAbwS+2tO+ge8Cu5Si3YBbyvGFwKHl+ADgqlI/IiIiIiIiIiIaVDOyaSgCzpa0bjm+AXh3xX07AXNs3zWo/ATgy5JOA34PHF7Kzyzld9KNaDpoKfNGRETECrYyD/2OiIiIiKU3os4m29OB6eV0h4r6uwxx/yuHqPdruo6oweUP0Y2EioiIiJXMyjz0OyIiIiKW3tKObIqIiIiIiIiIosURvclUr8VcLWaqVd3ZVHadmwHMtb1PT/lngMNtr13ODwNOAQb++fB022eUa88BzqBb9NvAXrZnSzoPmAg8AvwEeKftRyRtAHwR2AJ4CHh7zy52EREREREREU1ocURvMtVpMVermWoNu0B4j6OBW3sLJE0E1h+i7tdsTyg/Z/SUnwOcYvuFwPbA/FJ+HrA18GJgTeDIUv4BYJbtbYG3AZ8eQd6IiIiIiIiIiFjBqjqbJI0D9qYblTRQtirdCKbjK9t4ETDG9hUAthfYfqAcX+KCbmTTuHLbi4ArS53bgPGSNql5XkRERERERERErHi1I5tOo+tUWtRTNgm40PZvh6i/v6QbJV0g6dmlbCvgfknfknS9pFNKh9VjJK0GHAJcVopuAN5Qrm0PPJfHO6J67+uTNEPSjKlTp1a+UkRERERERERELGvDdjZJ2geYb3tmT9lmdLvEfWaIW74LjC9T3/4bOLuUjwF2BI4FXg48Dzhs0L3/BVxte2AVrI8BG0iaBfwzcD3QP/iBtqfanmh7Yl9f33CvFBERERERERERy0nNAuE7APtK2gtYA1gXuBl4GLhTEsAzJN1pe0vb9/bc+wXg4+V4DnC97bsAJH0beCVwZjn/ELAR8M6Bm23/CTi8XBfwq/ITERERERERERENGnZkk+3JtsfZHg8cBFxlewPbz7I9vpQ/YHtLAEmb9ty+L48vKv5TulFKG5XzXYFbyj1HAq8B3mz7sal6ktaXNLacHkk36ulPS/muERERERERERGxnNWMbBqp90ral2662x8oU+VsPyrpWODKMkppJt3IJ4DPA78Gri0jpb5l+8PAC4FzJD1K1zF1xHLIGxERERERERERy8iIOptsTwemD1G+ds/xZGDyYu6/Ath2iPIhc9i+Fnj+SDJGRERERERERMToWR4jmyIiIiIiIiL+qjw475rhK61gyVSvxVwtZqpV3dkkaVVgBjDX9j6SzgJ2Bv5Yqhxme1apuwtwGrAacI/tnRfXTinbFTgVGEs3ve4I2/2S1gPOBZ5Tsp5q+0tL/7oRsTy1+B/DFjNBu7la0+J3ajFTq1r8VslUJ5nqtZgrmeokU70Wc7WYKSIeJ9t1FaX3AxOBdXs6my6yfcGgeusD/wPsaftuSRvbnr+EdlahW69pN9u3S/ow8GvbZ0r6ALCe7RPKwuK/AJ5le+ESonrM2M1r33+F6F84l2Sq02KuZKqTTPVazJVMdZKpXou5kqlOMtVrMVcy1Ummei3mSqY6yVSvxVyNZlJt3WF3owOQNA7YGzijovpb6Bb4vhtgUEfTUO1sCDxs+/ZyfgWwfzk2sE5ZUHxtugXH+2syR0RERERERETEilc7je404HhgnUHlJ0v6d+BK4F9sPwxsBawmaXqp/2nb5yyhnXtK/Ym2ZwAHAM8u104HLgTmlXsOtL1ocDhJfUAfwJQpUypfKSKWtQxnrpdvFX8N8vc8IiIi4q/TsJ1NkvYB5tueWdZiGjAZ+B3dOktTgROAD5c2XwbsBqwJXCvpOrpOqCe1Y9uSDgI+JWl14HIeH730GmAWsCuwBXCFpGts/6k3o+2pJQOAj5p0Uv0XiIhlZs3NdhztCE/Qv3DuaEdYrHyr+GuQv+cRERERf51qptHtAOwraTbwVWBXSefa/q07DwNfArYv9ecAl9n+i+17gKuB7RbXDoDta23vaHv7Uv+O0tbhdFPybPtO4FfA1k/9tSMiIiIiIiIiYnkYtrPJ9mTb42yPBw4CrrJ9sKRNAcp6Sq8Hbiq3fAfYUdIYSc8AXgHcurh2Shsbl9+r042Q+nxp6266EVJI2gR4AXDXU3/tiIiIiIiIiIhYHmrXbBrKeWWHONFNdXsXgO1bJV0G3AgsAs6wfdPimwHguDJdbxXgc7avKuUfAc6S9PPynBPKaKmIiIiIiIiIiGjQiDqbbE8HppfjXZdQ7xTglJp2yvlxwHFD1JsH7DGSjBERERERERERMXpq1myKiIiIiIiIiIioUt3ZJGlVSddLuqicS9LJkm6XdKuk95by4yTNKj83SXpU0t9IWkPSTyTdIOlmSSf1tD2itpb1R4iIiIiIiIiIiGVjJNPojgZuBdYt54cBzwa2tr1oYJHv3il0kl4LHGP7D2Uh8V1tL5C0GvBDSZfavm6kbT2lN46IiIiIiIiIiOWmqrNJ0jhgb+Bk4P2l+N3AW2wvArA9f4hb3wx8pVw3sKCUr1Z+vDRtRURExOMenHfNaEeIp6DFP79kWrm1+K2SqU6LmaDNXMlUJ5nqtZirxUy1akc2nQYcD6zTU7YFcKCk/YDfA++1fcfARUnPAPYEJvWUrQrMBLYEPmv7x0vbVi9JfUAfwJQpUypfKSIi4ulhzc12HO0IT9K/cO5oR1hptPbn179wbjJVavXveWvfqsU/v2Sq12KuZKqTTPVazNVqplrDrtkkaR9gvu2Zgy6tDjxkeyLwBeCLg66/FvhR77Q324/angCMA7aXtM3SttXL9lTbE21P7OvrG+6VIiIiIiIiIiJiOalZIHwHYF9Js4GvArtKOheYA3yz1JkGbDvovoNYzLQ32/cD0+lGK/FU2oqIiIiIiIiIiHYM29lke7LtcbbH03X6XGX7YODbwK6l2s7A7QP3SFqvlH2np2wjSeuX4zWB3YHbyuURtRUREREREREREW0ayW50g30MOE/SMXQLfx/Zc20/4HLbf+kp2xQ4u6zbtArwddsXLWVbERER0biVeVHLiIiIiFh6I+pssj2dbvrbwFS4vRdT7yzgrEFlNwIvWUz9EbUVERER7VuZF7WMiIiIiKVXs2ZTRERERERERERElerOJkmrSrpe0kXl/BpJs8rPPEnfLuXrSfqupBsk3Szp8FI+QdK1pexGSQf2tH1mqX+jpAskrd1z7U2SbimLiRB4AAAgAElEQVT3nb/sXj0iIiIiIiIiIpa1kUyjOxq4FVgXwPZjY+MlfZPHF/B+D3CL7ddK2gj4haTzgAeAt9m+Q9JmwExJ3ytT6I6x/afS1n8Ck4CPSXo+MBnYwfZ9kjZ+Sm8bERERERERERHLVVVnk6RxdGsqnQy8f9C1deh2kju8FBlYR5KAtYE/AP22H9thzvY8SfOBjYD7ezqaBKxZ2gB4B/BZ2/eV++YvzUtGxIrR4mLALWaCdnO1psXv1GKmVrX4rZKpTjLVazFXMtVJpnot5kqmOslUr8VcLWaqVTuy6TTgeGCdIa7tB1w50GEEnA5cCMwr9Q+0vaj3BknbA2OBX/aUfQnYC7gF+D+leKty7UfAqsCJti8bHEBSH9AHMGXKlMpXiohlrcXFgFvLBG3manXh5Ba/U4uZWtXit0qm4SVTvRZzJVOdZKrXYq5WM0XE44btbJK0DzDf9kxJuwxR5c3AGT3nrwFm0Y122gK4QtI1PaOXNgW+DBza2wll+3BJqwKfAQ4EvlTyPR/YBRgHXCNpmzL1jp57pwJTB06PmnTScK8VERERERERscy02AGWTHVazNVqplo1C4TvAOwraTbwVWBXSecCSNoQ2B64uKf+4cC33LkT+BWwdam/bqn7r7avG/wg248CXwP2L0VzgO/YfsT2r4Bf0HU+RUREREREREREg4btbLI92fY42+OBg4CrbB9cLr8RuMj2Qz233A3sBiBpE+AFwF2SxgLTgHNsf2OgsjpbDhwDrwVuK5e/Dby6XHsm3bS6u5byXSMiIiIiIiIiYjkbyW50QzkI+Nigso8AZ0n6OSDgBNv3SDoY2AnYUNJhpe5hwI3A2WXUk4AbgHeX698D9pB0C/AocJzte59i5oiIiIiIiIiIWE5G1Nlkezowved8lyHqzAP2GKL8XODcxTS9w2KeZ7rd794/1PWIiIiIiIiIiGhLzZpNERERERERERERVao7myStKul6SReV890k/UzSLEk/7Fl36bmSrpR0o6Tpksb1tHGZpPsH2ugp/1tJP5Z0h6SvlfWdkHSYpN+XZ8ySdOSyee2IiIiIiIiIiFgeRjKy6Wjg1p7zzwFvtT0BOB/411J+Kt0i4NsCHwY+2nPPKcAhQ7T9ceBTtp8P3Acc0XPta7YnlJ8zRpA3IiIiIiIiIiJWsKrOpjI6aW+gt7PHwLrleD1gXjl+EXBlOf4+8LrHbrCvBP48qG0BuwIXlKKzgddXv0FERERERERERDSjdmTTacDxwKKesiOBSyTNoRutNLAr3Q3A/uV4P2AdSRsuoe0Ngftt95fzOcDmPdf3L1PyLpD07KEakNQnaYakGVOnTq18pYiIiIiIiIiIWNaG7WyStA8w3/bMQZeOAfayPQ74EvCfpfxYYGdJ1wM7A3OBfhZPQ5S5/P4uML5MyftvulFPT65sT7U90fbEvr6+4V4pIiIiIiIiIiKWkzEVdXYA9pW0F7AGsK6ki4Gtbf+41PkacBmA7XnAGwAkrQ3sb/uPS2j/HmB9SWPK6KZxlCl5tu/tqfcFurWdIiIiIiIiIiKiUcN2NtmeDEwGkLQL3cil1wO/k7SV7duBf6QsHi7pmcAfbC8q931xmPYt6fvAAcBXgUOB75S2NrX921J1X564QHlENObBedeMdoQnaTETtJurNS1+pxYztarFb5VMdZKpXou5kqlOMtVrMVcy1Ummei3majFTLdkevtZA5dLZZHsfSfvR7Ta3iG4HubfbvkvSAXQ70Bm4GniP7YfL/dcAWwNrA/cCR9j+nqTn0XU0/Q1wPXCw7YclfZSuk6kf+APwbtu3DRPTY8ZuPkyVFat/4VySqU6LuZKpTjLVazFXMtVJpnot5kqmOslUr8VcyVQnmeq1mCuZ6iRTvRZzNZppqGWQhlQzje4xtqcD08vxNGDaEHUu4PGd5QZf23Ex5XcB2w9R/tioqoiIiIiIiIiIaN+IOpsiIiKiPa0OsW41V2ta/E7JtHJr8VslU50WM0GbuZKpTjLVazFXi5lqVXc2SVoVmAHMLdPodgVOBcYCM+mmxPVL2oBunaYtgIfoptfdVNo4GngH3Q50X7B9Win/GvCC8qj1gfttT+h59nOAW4ATbZ/6VF44IiLi6WbNzYYcODyq+hfObS5X/8K5ox1hSC1+p2Sqk79TdVr880umei3mSqY6yVSvxVytZqq1ygjaPZrHFwFfBTgbOMj2NsCv6Rb2BvgAMMv2tsDbgE+Xe7ah62jaHtgO2EfS8wFsH2h7Qulg+ibwrUHP/hRw6QiyRkRERERERETEKKjqbJI0DtgbOKMUbQg8XHaiA7gC2L8cvwi4EqAs5j1e0ibAC4HrbD9gux/4AbDfoOcIeBPwlZ6y1wN3ATeP+O0iIiIiIiIiImKFqp1GdxpwPLBOOb8HWE3SRNszgAOAZ5drNwBvAH4oaXvgucA44CbgZEkbAg8Ce9FNy+u1I/C/tu8AkLQWcALwj8CxiwsnqQ/oA5gyZUrlK0XEstbinOIWM0G7uVrT4ndqMVOrWvxWyVQnmeq1mCuZ6iRTvRZzJVOdZKrXYq4WM9WS7SVXkPYB9rJ9lKRdgGPLmk2vAj4BrA5cDuxt+yWS1qWbOvcS4OfA1sCRtm+QdATwHmAB3RpMD9o+pudZnwPutP3Jcn4q8BPbX5d0IrCgYs0mN7g9YItbFjaXCdrMlUx1kqlei7mSqU4y1WsxVzLVSaZ6LeZKpjrJVK/FXMlUJ5nqtZir0UyqrVszsmkHYF9JewFrAOtKOtf2wXQjkZC0B7AVgO0/AYeXcgG/Kj/YPhM4s1z7D2DOwEMkjaEbEfWynme/AjhA0ifoFg5fJOkh26fXvmBERERERERERKw4w3Y22Z4MTAboGdl0sKSNbc+XtDrdVLeTS531gQdsLwSOBK4uHVD03PMcuo6lV/U8anfgNttzep792NLrPSOb0tEUEREREREREdGo2jWbhnJcmWK3CvA521eV8hcC50h6lG6q3BE993yzrNn0CPAe2/f1XDuInoXBIyIiIiIiIiJi5TOizibb04Hp5fg44Lgh6lwLPH8x9+84VHm5dtgwzz6xOmhEjIoWF7BrMRO0m6s1LX6nFjO1qsVvlUx1kqlei7mSqU4y1WsxVzLVSaZ6LeZqMVOtYRcIXwllgfAKLWaCNnMlU51kqtdirmSqk0z1WsyVTHWSqV6LuZKpTjLVazFXMtVJpnot5mo0U/UC4avUVpQ0W9LPJc2SNKOUvVHSzZIWSZo4qP5kSXdK+oWk1/SUH1PuuUnSVyStMei+z0ha0HP+rp7n/lDSi2ozR0RERERERETEilXd2VS82vYE2wMdSzfRLfR9dW+l0iF0EPB3wJ7Af0laVdLmwHuBiba3AVYt9Qbum0i361yv822/2PYE4BPAf44wc0RERERERERErCBPZYFwbN8KID1pJNXrgK/afhj4laQ7ge2Bu8sz15T0CPAMYF5pY1XgFOAtwH49z/hTT7trAU+7eX8RTxcr85ziFS3fKv4a5O95nRa/U4uZIiJa1+J/O5OpXou5WsxUaySdTQYul2Rgiu2pS6i7OXBdz/kcYHPb10o6la7T6UHgctuXlzqTgAtt/3Zw55Wk9wDvB8YCuw5+mKQ+oA9gypQpI3iliFiW1txssXsAjIr+hXNHO8Ji5VvFX4P8Pa/T4ndqMVNEROta/G9nMtVpMVermWqNpLNpB9vzJG0MXCHpNttXL6buUItGWdIGdKOe/ha4H/iGpIOBq4A3ArsM1ZjtzwKflfQW4F+BQwddnwoMdH75qEknjeC1ImJZabHnvcVM0G6u1rT4nVrM1KoWv1Uy1Ummei3mSqY6yVSvxVzJVCeZ6rWYq8VMtZZqNzpJJwILbJ9azqcDx9oeWDh8MoDtj5bz7wEnAuOAPW0fUcrfBrwSuBg4E3ioPOI5wF22txz03FWA+2yvt4R42Y2uQouZoM1cyVQnmeq1mCuZ6iRTvRZzJVOdZKrXYq5kqpNM9VrMlUx1kqlei7kazbRsd6OTtJakdQaOgT3oFgdfnAuBgyStLulvgecDP6GbPvdKSc9QN1duN+BW2xfbfpbt8bbHAw8MdDRJen5Pu3sDd9S+XERERERERERErFi10+g2AaaVtZTG0O0Qd5mk/YDPABsBF0uaZfs1tm+W9HXgFqAfeI/tR4EfS7oA+Fkpv57Hp78tziRJuwOPAPcxaApdRLSjxWGeLWaCdnO1psXv1GKmVrX4rZKpTjLVazFXMtVJpnot5kqmOslUr8VcLWaqtVTT6BqXaXQVWswEbeZKpjrJVK/FXMlUJ5nqtZgrmeokU70WcyVTnWSq12KuZKqTTPVazNVopmU7jS4iIiIiIiIiIqJG7ZpNsyX9XNIsSQOLgJ8i6TZJN0qaJmn9Ur6hpO9LWiDp9J421in3D/zcI+m0cm0nST+T1C/pgJ57Jki6VtLN5TkHLtvXj4iIiIiIiIiIZWkkI5tebXuC7Ynl/ApgG9vbArcDk0v5Q8C/Acf23mz7z+X+CbYnAL8GvlUu3w0cBpw/6JkPAG+z/XfAnsBpA51aERERERERERHRnqWeRmf7ctv95fQ6YFwp/4vtH9J1Og2p7DC3MXBNuWe27RuBRYOecbvtO8rxPGA+3WLkERERERERERHRoNrOJgOXS5opqW+I628HLh3Bc98MfM0jWJ1c0vbAWOCXQ1zrkzRD0oypU4fb3C4iIiIiIiIiIpaXMZX1drA9T9LGwBWSbrN9NYCkDwL9wHkjeO5BwCG1lSVtCnwZONT2osHXbU8FBnqZfNSkk0YQJSKWlRa35mwxE7SbqzUtfqcWM7WqxW+VTHWSqV6LuZKpTjLVazFXMtVJpnot5moxUy2NYHBRd4N0IrDA9qmSDgXeBexm+4FB9Q4DJtqeNKh8O+Abtrcaou2zgItsX9BTti4wHfio7W9URHSD2wO2uGVhc5mgzVzJVCeZ6rWYK5nqJFO9FnMlU51kqtdirmSqk0z1WsyVTHWSqV6LuRrNpNq6w06jk7SWpHUGjoE9gJsk7QmcAOw7uKNpGG8GvlJTUdJYYBpwTmVHU0REREREREREjKKaaXSbANMkDdQ/3/Zlku4EVqebVgdwne13AUiaDawLjJX0emAP27eU9t4E7NX7AEkvp+tU2gB4raSTyg50bwJ2AjYsI6UADrM9aynfNyIiIiIiIiIilqNhO5ts3wVsN0T5lku4Z/wSrj1viLKfUnazG1R+LnDucBkjIiIiIiIiIqINVQuEl5FKfwYeBfptT5T0EeB1wCJgPt2Io3mS3ko3vQ5gAfBu2zcsrp1SPgH4PLAG3WLjR9n+iaStgS8BLwU+aPvUp/7KEbG8tLiAXYuZoN1crWnxO7WYqVUtfqtkqpNM9VrMlUx1kqlei7mSqU4y1WsxV4uZalUtEF46iSbavqenbF3bfyrH7wVeZPtdkv4euNX2fZL+CTjR9isW104pvxz4lO1LJe0FHG97l7L73XOB1wP3VXY2ZYHwCi1mgjZzJVOdZKrXYq5kqpNM9foXzuWRe+4a7RhPsNozn9fct2rxzy+Z6rWYK5nqJFO9FnMlU51kqtdirkYzVS8QXjWyaSgDHU3FWoBL+f/0lF/HENPjhmqObo0ngPWAeaWt+cB8SXsvbc6IiIgYHWtutuNoR3iC/oVzRztCRERExF+F2s4mA5dLMjDF9lQASScDbwP+CLx6iPuOAC4drh3gfcD3JJ1Kt0Pe34/4TSIiIiIiIiIiYtTVdjbtUNZj2phu97nbbF9t+4PAByVNBiYBHxq4QdKr6Tqb/mG4doB3A8fY/qakNwFnArvXvoSkPqAPYMqUKbW3RcQytjLPKV7R8q0iIiIiIuLpqqqzyfZj09okTQO2B67uqXI+cDGls0nStsAZwD/ZvreinUOBo0u1b5R7q5URUgOjpHzUpJNGcntELCOZMlMv3yoiIiIiIp6uVhmugqS1JK0zcAzsAdwk6fk91fYFbit1ngN8CzjE9u3DtVMuzwN2Lse7Anc8lZeKiIiIiIiIiIjRUTOyaRNgmqSB+ufbvkzSNyW9AFgE/Bp4V6n/78CGwH+Ve/ptT1xcO+WedwCfljQGeIgyJU7Ss4AZdIuHL5L0Prpd73oXJ4+IiIiIiIiIiEYM29lk+y5guyHK919M/SOBI2vbKdd+CLxsiPLfUbebXURERERERMSoaXFNzmSq12KuFjPVql0gPCIiIiIiIiIWo8U1OZOpTou5Ws1Uq7qzSdJs4M/Aozw+NW7g2rHAKcBGtu+R9DrgI3RT7PqB95XRSwP11wVuBabZnlTKpgObAg+WanuUhcRXB86hG/l0L3Cg7dnVbxgRERGjYmX+17iIiIiIWHojHdn0atv39BZIejbwj8DdPcVXAhfadtmZ7uvA1j3XPwL8YIj232p7xqCyI4D7bG8p6SDg48CBI8wdERERK9jK/K9xEREREbH0ht2NrsKngOMBDxTYXmB74Hyt3muSXka3WPjlle2/Dji7HF8A7KayynhERERERERERLRlJJ1NBi6XNFPSwG5x+wJzbd8wuLKk/STdBlwMvL2UrQJ8EjhuMc/4kqRZkv6tp0Npc+A3ALb7gT/S7XYXERERERERERGNGck0uh1sz5O0MXBF6Uj6ILDHUJVtTwOmSdqJbtrc7sBRwCW2fzPE4KS32p4raR3gm8AhdGs1DTWKyb0npfOrD2DKlCkjeKWIiIiIiIiIiFiWqkc22Z5Xfs8HpgE7A38L3FAWDx8H/EzSswbddzWwhaRnAq8CJpX6pwJvk/SxUm9u+f1n4Hxg+9LEHODZAJLGAOsBfxj0jKm2J9qe2NfXV/3yERERERERERGxbFV1Nklaq4w4QtJadKOZfmp7Y9vjbY+n6xR6qe3fSdpyYBqcpJcCY4F7bb/V9nNK/WOBc2z/i6QxpTMKSasB+wA3lcdfCBxajg8ArupZDyoiIiIiIiIiIhpSO41uE7opcQP3nG/7siXU359u1NIjwIPAgcN0EK0OfK90NK0K/DfwhXLtTODLku6kG9F0UGXmiIiIiIiIiIhYwao6m2zfBWw3TJ3xPccfBz4+TP2zgLPK8V+Aly2m3kPAG2tyRkRERERERETE6BrJAuEREUv04LxrRjvCk7SYCdrN1ZoWv1OLmVrV4rdKpjrJVK/FXMlUJ5nqtZgrmeokU70Wc7WYqZZqlj8qC3r/GXgU6Lc9UdKJwDuA35dqH7B9Sc89zwFuAU60faqkNYCr6abMjQEusP2hUncS8D5gC2Aj2/eU8g2AL5byh4C32x5Yy2lxPGbs5hWvvuL0L5xLMtVpMVcy1Ummei3mSqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnMlU51kqtdirkYzqbbuSEY2vXqgE6jHp2yfupj6nwIu7Tl/GNjV9oKyNtMPJV1q+zrgR8BFwPRBbXwAmGV7P0lbA58FdhtB5oiIiIiIiIiIWIGqdqMbKUmvB+4Cbh4oc2dBOV2t/Lhcu9727CGaehFwZalzGzBe0ibLI3NERERERERERDx1tZ1NBi6XNFNSX0/5JEk3SvpimfKGpLWAE4CTBjciaVVJs4D5wBW2fzzMc28A3lDu3R54LjCuMnNERERERERERKxgtZ1NO9h+KfBPwHsk7QR8jm4tpQnAb4FPlron0U2vWzC4EduP2p5A12G0vaRthnnux4ANSgfVPwPXA/2DK0nqkzRD0oypU6dWvlJERERERERERCxrVWs22Z5Xfs+XNA3Y3vbVA9clfYFuzSWAVwAHSPoEsD6wSNJDtk/vae9+SdOBPYHFLvht+0/A4eUZAn5VfgbXmwoM9DL5qElPGlQVERERERERERErwLAjmyStJWmdgWNgD+AmSZv2VNuP0mlke0fb422PB04D/sP26ZI2krR+aWdNYHfgtmGevb6kseX0SODq0gEVERERERERERENqhnZtAkwrRtYxBjgfNuXSfqypAl06znNBt45TDubAmdLWpWuk+vrti8CkPRe4HjgWcCNki6xfSTwQuAcSY8CtwBHjPQFI2LFeXDeNaMd4UlazATt5mpNi9+pxUytavFbJVOdZKrXYq5kqpNM9VrMlUx1kqlei7lazFRLtkc7w7LmMWM3H+0MT9C/cC7JVKfFXMlUJ5nqtZgrmeokU70WcyVTnWSq12KuZKqTTPVazJVMdZKpXou5Gs2k2rq1C4RHREREREREREQMq6qzSdJsST+XNEvSjJ7yf5b0C0k3lwXBkTRe0oOl7ixJn++pf7Kk30haMKj950j6vqTrJd0oaa9Svpqks8uzb5U0edm8dkRERERERERELA9Vu9EVr7Z9z8CJpFcDrwO2tf2wpI176v7S9oQh2vgucDpwx6Dyf6Vbw+lzkl4EXAKMB94IrG77xZKeAdwi6Su2Z48gd0RExNNaq/P5W83Vmha/UzKt3Fr8VslUp8VM0GauZKqTTPVazNViploj6Wwa7N3Ax2w/DGB7/nA32L4OoCw2/oRLwLrleD1gXk/5WpLGAGsCC4HsRhcREdFjzc12HO0IT9K/cG5zufoXzh3tCENq8TslU538narT4p9fMtVrMVcy1Ummei3majVTrdo1mwxcLmmmpL5SthWwo6QfS/qBpJf31P/bMiXuB5Jqvs6JwMGS5tCNavrnUn4B8Bfgt8DdwKm2/1CZOSIiIiIiIiIiVrDakU072J5XpspdIem2cu8GwCuBlwNfl/Q8uo6h59i+V9LLgG9L+jvbSxqR9GbgLNuflPQq4MuStgG2Bx4FNivPukbSf9u+q/fm0gHWBzBlypTKV4qIZa3FYZ4tZoJ2c7Wmxe/UYqZWtfitkqlOMtVrMVcy1Ummei3mSqY6yVSvxVwtZqol2yO7QToRWADsTjeNbnop/yXwStu/H1R/OnCs7d6FxRfYXrvn/GZgT9u/Ked30XVifQi4zvaXS/kXgctsf30JEd3g9oAtblnYXCZoM1cy1Ummei3mSqY6yVSvxVzJVCeZ6rWYK5nqJFO9FnMlU51kqtdirkYzPWlNpMUZdhqdpLUkrTNwDOwB3AR8G9i1lG8FjAXukbSRpFVL+fOA5wN3DdV2j7uB3co9LwTWAH5fyndVZy26Dqjbal8uIiIiIiIiIiJWrJppdJsA08qi3mOA821fJmks8EVJN9Et3H2obUvaCfiwpH66KXDvGlhnSdIngLcAzyjrM51h+0Tg/wBfkHQM3fpQh5W2Pgt8ia5zS8CXbN+4zN4+IiIiIiIiYhloccpTMtVrMVeLmWoN29lU1kfabojyhcDBQ5R/E/jmYto6Hjh+iPJbgB2GKF8AvHG4jBEREdGelfl/IEVERIxUizuHJVOdFnO1mqlW7W50ERERERERERERw6rajU7SbODPdNPi+m1PlPQ14AWlyvrA/bYnlPrbAlOAdYFFwMttP1R2pzsLWBO4BDi6TJc7EXgH3TpNAB+wfYmktwLH9UTZFnip7VlL+b4RERGxgqzM/xoXEREREUuvqrOpeLXtewZObB84cCzpk8Afy/EY4FzgENs3SNoQeKRU/RzQB1xH19m0J3BpufYp26f2PtD2ecB5pd0XA99JR1NERERERERERLue8jQ6dSuHvwn4SinaA7jR9g0Atu+1/aikTYF1bV9r28A5wOtH8Kg39zwjIiIiIiIiIiIaVNvZZOBySTMl9Q26tiPwv7bvKOdbAZb0PUk/kzSwIPjmwJye++aUsgGTJN0o6YuSNhgiw4GksykiIiIiIiIiomm1nU072H4p8E/AeyTt1HNt8IijMcA/AG8tv/eTtBugIdp1+f05YAtgAvBb4JO9lSS9AnjA9k1DhZPUJ2mGpBlTp06tfKWIiIiIiIiIiFjWqtZssj2v/J4vaRqwPXB1WZ/pDcDLeqrPAX4wsL6TpEuAl9Kt4zSup944YKDd/x0olPQF4KJBEQ5iCaOabE8FBnqZfNSkk2peKyKWsRa3OW8xE7SbqzUtfqcWM7WqxW+VTHWSqV6LuZKpTjLVazFXMtVJpnot5moxUy11yyctoYK0FrCK7T+X4yuAD9u+TNKewGTbO/fU3wC4km5U00LgMrrFvy+W9FPgn4Ef0y0Q/pmy69ymtn9b7j8GeIXtg8r5KsDdwE6276p4J48Zu/nwtVag/oVzSaY6LeZKpjrJVK/FXMlUJ5nqtZgrmeokU70WcyVTnWSq12KuZKqTTPVazNVopqFmrA2pZmTTJsC0bh1wxgDn276sXHvSiCPb90n6T+CndNPkLrF9cbn8buAsYE26XegGdqL7hKQJpf5s4J09Te4EzKnsaIqIiIiIiIiIiFE0bGdT6eTZbjHXDltM+bl00+YGl88Athmi/JAlPH868MrhckbE6GtxmGeLmaDdXK1p8Tu1mKlVLX6rZKqTTPVazJVMdZKpXou5kqlOMtVrMVeLmWoNO41uJZRpdBVazARt5kqmOslUr8VcyVQnmeq1mCuZ6iRTvRZzJVOdZKrXYq5kqpNM9VrM1WimZTqNDkmzgT8DjwL9tieWaW+fB9YA+oGjbP+k1N8FOA1YDbhnYE0nSUcD76Dbme4Ltk8r5acAr6Vb4+mXwOG27y/XtgWmAOsCi4CX236o9gUjYsVpsee9xUzQbq7WtPidWszUqha/VTLVSaZ6LeZKpjrJVK/FXMlUJ5nqtZirxUy1qkY2lc6miQM7zJWyy+kW/r5U0l7A8bZ3kbQ+8D/AnrbvlrRx2cVuG+CrdDvZDSwc/m7bd0jaA7jKdr+kjwPYPqHsdvcz4BDbN0jaELjf9qNLiJuRTRVazARt5kqmOslUr8VcyVQnmeq1mCuZ6iRTvRZzJVOdZKrXYq5kqpNM9VrM1Wim6pFNqzyF55hutBHAesC8cvwW4Fu27wawPb+UvxC4zvYDtvuBHwD7lTqXlzKA64Bx5XgP4EbbN5R69w7T0RQREREREREREaOotrPJwOWSZkrqK8u5Hr4AACAASURBVGXvA06R9BvgVGByKd8K2EDS9FL/baX8JmAnSRtKegawF/DsIZ71dh7fpW4rwJK+J+lnko4f2etFRERERERERMSKVLVmE7CD7XmSNgaukHQbcABwjO1vSnoTcCawe2nzZcBuwJrAtZKus31rmSJ3BbAAuIFurafHSPpgKTuvJ98/AC8HHgCulDTT9pWD7usD+gCmTJkyog8QERERERERERHLTlVnk+155fd8SdPo1l06FDi6VPkGcEY5nkO3KPhfgL9IuhrYDrjd9pl0nVJI+o9Sl3J+KLAPsJsfX0hqDvCDgbWiJF0CvBR4QmeT7anA1IHToyadVPf2EbFMrcwL2K1o+Vbx1yB/zyMiIiL+Og3b2SRpLWAV238ux3sAH6Zbo2lnYDqwK3BHueU7wOllce+xwCuAT5W2BhYLfw7wBuBVpXxP4ARgZ9sP9Dz+e8DxZdrdwvK8Tz2lN46Ivyr5P7srtxb//FrMFPVa/PNLpjotZoI2cyVTnWSq12KuZKqTTPVazNViplrD7kYn6XnAtHI6Bjjf9smS/gH4dCl7CDjK9sxyz3HA4cAi4Azbp5Xya4ANgUeA9w9Mh5N0J7A6cG95znW231WuHUy3HpSBS2wPt25TdqOr0GImaDNXMtVJpnot5kqmOslUr8VcyVQnmeq1mCuZ6iRTvRZzJVOdZKrXYq5GM1XvRjfsyCbbd9FNgxtc/kO6tZmGuucU4JQhyndcTP0tl/D8c4Fzh8sZEaOvxZ73FjNBu7la0+J3ajFTq1r8VslUJ5nqtZgrmeokU70WcyVTnWSq12KuFjPVGnZk00ooI5sqtJgJ2syVTHWSqV6LuZKpTjLVazFXMtVJpnot5kqmOslUr8VcyVQnmeq1mKvRTNUjm1apqSRptqSfS5olaUYp207StaX8u5LWLeVvLfUGfhZJmiBpnUHl90gamF73XElXSrpR0nRJ43qe/WjPPReO7FNERERERERERMSKVLUbXfHqgV3hijOAY23/QNLbgeOAf7N9HnAegKQXA9+xPavcM2HgZkkzgW+V01OBc2yfLWlX4KPAIeXag7Yfuy8iIiJWDivz0O+IiIiIWHoj6Wwa7AXA1eX4Crqd4/5tUJ03A18ZfKOk5wMbAwP/K/RFwDHl+PvAt59CroiIiGjAmpsNuVTjqOlfOHe0I0RExNNYi//Ikkz1WszVYqZatZ1N/v/s3XmUn1Vh//H3B0KQsAgFoRKQRVlEZHNYrIYtoqIWRFBClQLajsqiUKlA+blQS0XBIq0tZmQRFAUJoLiAIIpilWCABEICApElCVtURNZhyOf3x3OnfDPMMHcgyTyRz+ucOfN97nPvfT7Pd3L0nMtdgCskGZhsuweYCewFfA94L7D+IO32B/YepPwA4AI/u2HUDGBfmtPt9gFWlbSm7d8DLytL9/qAk2w/ZyBKUjfQDTB58uTKV4qIiIiIiIhYPNr4H1mSqU4bc7U1U62qPZuAN9neDtgTOEzSzsAHy+frgVWB3s4GknYEHrc9c5D+JrHojKejgV0k3QjsAsyjGVwCeJXtLuDvgC9LevXAzmz32O6y3dXd3V35ShERERERERERsbhVzWyyPb/8flDSJcAOtk8B3gogaVPgnQOaDRxQotTdGhhj+/oB/b+n3F8F2Nf2nwY8e46kq4FtgTtH8I4REREREREREbGUDDuzSdLKklbt/0wzwDRT0tqlbDng/wFf7WizHM3SuvMH6fI5+zhJWqu0ATgOOKuUryFpxf46wJuAWSN5wYiIiIiIiIiIWHpqltGtA/xS0gzgOuCHti8HDpD0W+BWYD5wdkebnYG5tucM0t/7eO6Mp12B20p/6wAnlvLXAtPKs39Gs2dTBpsiIiIiIiIiIlpq2GV0ZcBo60HKT6PZ0HuwNlcDOw1xb+NByqYAUwYp/xXw+uEyRkREREREREREO9RuEB4RERERERERETGsqsEmSatLmiLpVkmzJb1R0l9JulLS7eX3GqXuyyV9X9IMSbdIOqSjn1dJuqL0MUvShqVckk6U9Nty72MDnr+9pGck7bf4Xj0iIiIiIiIiIha32plNpwGX296cZkndbOBY4CrbmwBXlWuAw4BZtrem2YvpS5LGlnvnAifbfi2wA/BgKT8YWB/YvNz7v43FJS0PfAH48Qt5wYiIiIiIiIiIWHpqTqNbjWbD7zMBbPfafhjYGzinVDsHeHf5bGBVSQJWAf4A9EnaAhhj+8rSz6O2Hy9tPgr8q+2F5V7/IBTAEcBFPDswFRERERERERERLTXsBuHAxsBDwNmStgauBz4OrGP7PgDb90lau9T/CnApzQl1qwL7214oaVPgYUkXAxsBPwGOtf0M8Gpgf0n7lGd9zPbtksYD+wC7A9sPFVBSN9ANMHny5BF9AREREREREREv1hPzrxntCM+RTPXamKuNmWrVDDaNAbYDjrA9VdJpPLtkbjBvA6bTDBC9GrhS0jWlnwnAtsA9wAU0y+fOBFYEnrTdJek9wFml7peBY2w/00yUGpztHqCn//LQw0+oeK2IiIiIiIiIxWOldSeMdoRF9PXOS6ZKbczV1ky1avZsmgvMtT21XE+hGXx6QNIrAcrv/mVuhwAXu3EH8Dtg89LPjbbn2O4Dvlv66X/GReXzJcBW5XMXcL6ku4D9gP+R1L9cLyIiIiIiIiIiWmbYmU2275d0r6TNbN8GTARmlZ+DgJPK7++VJveUOtdIWgfYDJgD/BFYQ9IrbD9EM/NpWmnz3XJ9FrAL8Nvy7I36c0j6OvAD2999UW8cEUtMG6d5tjETtDdX27Txe2pjprZq43eVTHWSqV4bcyVTnWSq18ZcyVQnmeq1MVcbM9WqWUYHzSbd55VT5ebQzF5aDviOpA/RDDC9t9T9HPB1STcDolkGtwBA0tHAVWXz8OuBr5U2J5X+jwIeBf7hRb9ZREREREREREQsdbI92hkWN48ZO360Myyir3ceyVSnjbmSqU4y1WtjrmSqk0z12pgrmeokU7025kqmOslUr425kqlOMtVrY66WZhp6M+0BavZsioiIiIiIiIiIqFI12CRpdUlTJN0qabakN0p6r6RbJC2U1NVRd6yksyXdLGmGpF077l0t6TZJ08vP2qX8I6X+dEm/lLRFKd+ho+4MSfss5vePiIiIiIiIiIjFqHbPptOAy23vV/ZtGgc8DLwHmDyg7j8C2H59GUy6TNL2theW+++3PW1Am2/Z/iqApL2A/wDeDswEumz3lRPvZkj6fjnNLiIiIiIiIiIiWmbYwSZJqwE7AwcD2O4FemkGm2j2+l7EFsBVpe6Dkh4GuoDrhnqG7Uc6LlcGXMof7yh/WX95RERERERERES0U83Mpo2Bh4CzJW1Nc4rcx20/NkT9GcDeks4H1gfeUH73DzadLekZ4CLg31x2KJd0GPBPwFhg9/7OJO0InAVsABw42KwmSd1AN8DkyQMnWkVERMRoWJaP642IiIiIF65mz6YxwHbA6ba3BR4Djn2e+mcBc4FpwJeBXwH9A0Tvt/16YEL5ObC/ke3/tv1q4Bjg/3WUT7X9OmB74DhJLxv4QNs9trtsd3V3d1e8UkRERERERERELAk1M5vmAnNtTy3XU3iewaYy8+io/mtJvwJuL/fmld9/lvQtYAfg3AFdnA+cPki/syU9BmxJM5AVERERLbbSuhNGO8Ii+nrnjXaEiIiIiJeEYWc22b4fuFfSZqVoIjBrqPqSxklauXzeA+izPUvSGElrlfIVgHfRbACOpE06ungnZXBK0kaSxpTPGwCbAXeN6A0jIiIiIiIiImKpqT2N7gjgvHIS3RzgEEn7AP8FvAL4oaTptt8GrA38WNJCYB7PLpVbsZSvACwP/AT4Wrl3uKS3AE8DfwQOKuVvBo6V9DSwEDjU9oIX/roREREREREREbEkVQ022Z5Oc6Jcp0vKz8C6d9HMQBpY/hjNZuGD9f/xIcq/AXyjJmNERERERERERIy+mg3CIyIiIiIiIiIiqlQNNklaXdIUSbdKmi3pjZI+J+kmSdMlXSFp3VJXkv5T0h3l/nYD+lpN0jxJX+koe4Okm0ub/5SkUn5yeeZNki6RtPrifPmIiIiIiIiIiFi8amc2nQZcbntzYGtgNnCy7a1sbwP8APh0qbsnsEn56ea5J8t9Dvj5gLLTS93+dm8v5VcCW9reCvgtcFxl3oiIiIiIiIiIGAXD7tkkaTVgZ+BgANu9QO+AaisDLp/3Bs61beDaMivqlbbvk/QGYB3gcsoeUJJeCaxm+9fl+lzg3cBltq/oeMa1wH4v6C0jIiJiqXti/jWjHSEiIiIiRkHNBuEbAw8BZ0vaGrge+LjtxySdCPw98Cdgt1J/PHBvR/u5wHhJDwBfojmdbmLH/fGlziL1B8nxQeCCwQJK6qaZGcXkyZMrXikiIiKWtJXWnTDaERbR1ztvtCNEREREvCTUDDaNAbYDjrA9VdJpwLHAp2wfDxwv6TjgcOAzgAbpw8ChwI9s31u2ZOo3VP1nK0jHA33AeYMFtN0D9PRfHnr4CRWvFRGLWxtnMbQxE7Q3V9u08XtqY6a2auN3lUx1kqleG3MlU51kqtfGXMlUJ5nqtTFXGzPVqhlsmgvMtT21XE+hGWzq9C3ghzSDTXOB9TvurQfMB94ITJB0KLAKMFbSozT7Qa03SH0AJB0EvAuYWJbmRURLtXEWQ9syQTtztXXGRxu/pzZminr5+y272va3g/b+b0IyDS+Z6rUxVzLVSaZ6bczV1ky1hh1ssn2/pHslbWb7NpolcLMkbWL79lJtL+DW8vlS4HBJ5wM7An+yfR/w/v4+JR0MdNk+tlz/WdJOwFSaZXn/VcrfDhwD7GL78eq3iohR0caR9zZmgvbmaps2fk9tzBT18vdbdrX1b9fGXMlUJ5nqtTFXMtVJpnptzNXGTLVUM1lI0jbAGcBYYA5wSLneDFgI3A18xPY8NWvkvkJzotzjwCG2pw3o72CawabDy3UX8HVgJeAymiV7lnQHsCLw+9L0WtsfGSaux4wdbMun0dPXO49kqtPGXMlUp693Hk8vmDPaMRaxwlobt+57gnxXtdr67zyZ6uTfeZ02/v2SqV4bcyVTnWSq18ZcyVQnmeq1MVdLMw22DdKgapbRYXs65fS4DvsOUdfAYcP093WawaX+62nAloPUe01Nvohoh2V5mufSlu8qXgry7zwiIiLipWm50Q4QERERERERERF/OaoGmyStLmmKpFslzZb0xo57R0uypLXK9eaSfi3pKUlHd9RbX9LPSvtbJH28494FkqaXn7skTS/la5Y2j0r6yuJ77YiIiIiIiIiIWBKqltHRnBh3ue39JI0FxkEzgATsAdzTUfcPwMeAdw/oow/4hO0bJK0KXC/pStuzbO/fX0nSl4A/lcsngU/RLLF7zjK7iGiXZXkDu6Ut31VERERERPylGnawSdJqwM7AwQC2e4HecvtU4JPA9/rr234QeFDSOzv7KSfS3Vc+/1nSbGA8MKvjWQLeB+xe6j0G/FJS9m6KWAZkf5Z6+a4iIiIiIuIvVc0yuo2Bh4CzJd0o6QxJK0vaC5hne8ZIHyppQ2BbYOqAWxOAB2zfPsL+uiVNkzStp6dnpHEiIiIiIiIiImIxqRlsGgNsB5xue1vgMeCzwPHAp0f6QEmrABcBR9p+ZMDtA4Bvj7RP2z22u2x3dXd3j7R5REREREREREQsJjWDTXOBubb7ZyFNoRl82giYIekuYD3gBkl//XwdSVqBZqDpPNsXD7g3BngPcMGI3iAiIiIiIiIiIlpj2MEm2/cD90rarBRNBG6wvbbtDW1vSDMgtV2pO6iyH9OZwGzb/zFIlbcAt9qeO9KXiIiIiIiIiIiIdqg9je4I4LxyEt0c4JChKpbZTdOA1YCFko4EtgC2Ag4EbpY0vVT/F9s/Kp8nMcgSujJzajVgrKR3A2+1PWtgvYiIiGiXnLoYERER8dJUNdhkezrQ9Tz3N+z4fD/NsrqBfgnoefo4eLi+IyIiYtmRUxcjIiIiXppq9myKiIiIiIiIiIioUjXYJGl1SVMk3SpptqQ3SvqspHmSppefd5S6e0i6XtLN5ffuHf2cKOleSY8O8Zz9JFlSV0fZcZLukHSbpLe92BeOiIiIiIiIiIglp3bPptOAy23vV/ZtGge8DTjV9ikD6i4A/tb2fElbAj8Gxpd73we+Atw+8AGSVgU+BkztKNuCZi+n1wHrAj+RtKntZ2pfMCIiIiIiIiIilp5hZzZJWg3YmeYkOWz32n54qPq2b7Q9v1zeArxM0orl3rW27xui6eeALwJPdpTtDZxv+ynbvwPuAHYYLnNERERERERERIyOmmV0GwMPAWdLulHSGZJWLvcOl3STpLMkrTFI232BG20/9XwPkLQtsL7tHwy4NR64t+N6Ls/Okups3y1pmqRpPT09Fa8UERERERERERFLQs1g0xhgO+B029sCjwHHAqcDrwa2Ae4DvtTZSNLrgC8AH36+ziUtB5wKfGKw24OU+TkFdo/tLttd3d3dw75QREREREREREQsGTWDTXOBubb791KaAmxn+wHbz9heCHyNjuVtktYDLgH+3vadw/S/KrAlcLWku4CdgEvLJuFzgfU76q4HzH9ODxERERERERER0QrDDjbZvh+4V9JmpWgiMEvSKzuq7QPMhObkOuCHwHG2/7ei/z/ZXsv2hrY3BK4F9rI9DbgUmCRpRUkbAZsA19W/XkRERERERERELE01M5sAjgDOk3QTzbK5fwe+KOnmUrYbcFSpezjwGuBTkqaXn7UBJH1R0lxgnKS5kj77fA+1fQvwHWAWcDlwWE6ii4iIiIiIiIhorzE1lWxPB7oGFB84RN1/A/5tiHufBD45zLN2HXB9InBiTc6IGF1PzL9mtCM8RxszQXtztU0bv6c2ZmqrNn5XyVQnmeq1MVcy1Ummem3MlUx1kqleG3O1MVMt2c/Zb3tZ5zFjn3Ng3ajq651HMtVpY65kqpNM9dqYK5nqJFO9NuZKpjrJVK+NuZKpTjLVa2OuZKqTTPXamKulmQY7xG1QVcvoJK0uaYqkWyXNlvTGUn6EpNsk3SLpi6Vsh47lczMk7dPRz9tL/TskHdtRvpGkqZJul3SBpLGlfANJV0m6SdLVZePxiIiIiIiIiIhoqdo9m04DLre9ObA1MFvSbsDewFa2XwecUurOBLpsbwO8HZgsaYyk5YH/BvYEtgAOkLRFafMF4FTbmwB/BD5Uyk8BzrW9FfCvwOdfxLtGRERERERERMQSNuxgk6TVgJ2BMwFs99p+GPgocJLtp0r5g+X347b7SvOXAf3r9HYA7rA9x3YvcD6wtyQBuwNTSr1zgHeXz1sAV5XPP6MZ3IqIiIiIiIiIiJaqmdm0MfAQcLakGyWdIWllYFNgQln+9nNJ2/c3kLSjpFuAm4GPlMGn8cC9Hf3OLWVrAg93DFD1lwPMAPYtn/cBVpW05sCAkrolTZM0raenp/LVIyIiIiIiIiJicasZbBoDbAecbntb4DHg2FK+BrAT8M/Ad8osJWxPLUvrtgeOk/QyYLCNpPw85QBHA7tIuhHYBZgH9D2nst1ju8t2V3d3d8UrRURERERERETEklAz2DQXmGt7armeQjP4NBe42I3rgIXAWp0Nbc+mGZzastRfv+P2esB8YAGwuqQxA8qxPd/2e8og1/Gl7E8jfsuIiIiIiIiIiFgqhh1ssn0/cK+kzUrRRGAW8F2avZaQtCkwFlhQTpYbU8o3ADYD7gJ+A2xS7o8FJgGX2jbNfkz7lf4PAr5X2q8lqT/jccBZL+51IyIiIiIiIiJiSRozfBUAjgDOK4NEc4BDaGYsnSVpJtALHGTbkt4MHCvpaZrZTofaXgAg6XDgx8DywFm2byn9HwOcL+nfgBspm5EDuwKfl2TgF8BhL+ptIyIiIiIiIiJiiaoabLI9Hega5NYHBqn7DeAbQ/TzI+BHg5TPoTmtbmD5FJ49pS4iIiIiIiIiIlquZs+miIiIiIiIiIiIKlUzmyStDpxBs9G3gQ8CR9LsxwSwOvCw7W0k7QD09DcFPmv7ktLPUcA/lD5uBg6x/aSka4BVS5u1getsv1vSy4FvAq8qWU+xffaLeeGIiIhYOp6Yf81oR4iIiIiIUVC7Z9NpwOW29yv7No2zvX//TUlfAvpPiZsJdNnuk/RKYIak7wPrAB8DtrD9hKTv0GwS/nXbEzr6uoiyQTjNHk2zbP+tpFcAt0k6z3bvC3/liIiIWBpWWnfC8JWWor7eeaMdISIiIuIlYdjBJkmrATsDBwOUgZ7ejvsC3kc5mc724x3NX0Yzi6nzeSuVzcPHAfMHPGvV0s8hpcjAquUZqwB/APqq3y4iIiIiIiIiIpaqmplNGwMPAWdL2hq4Hvi47cfK/QnAA7Zv728gaUfgLGAD4EDbfcA8SacA9wBPAFfYvmLAs/YBrrL9SLn+CnApzaDUqsD+thcODCipG+gGmDx5csUrRcSS0MYlM23MBO3N1TZt/J7amKmt2vhdJVOdZKrXxlzJVCeZ6rUxVzLVSaZ6bczVxky1ZPv5K0hdwLXAm2xPlXQa8IjtT5X7pwN32P7SIG1fC5xDMzNqJeAiYH/gYeBCYIrtb3bUvww4w/ZF5Xo/4E3APwGvBq4Etu4YjBqMx4wdX/PuS01f7zySqU4bcyVTnWSq18ZcyVQnmeq1MVcy1Ummem3MlUx1kqleG3MlU51kqtfGXC3NpNq6NafRzQXm2p5arqcA2wFIGgO8B7hgsIa2ZwOP0Wws/hbgd7Yfsv00cDHwN/11Ja0J7AD8sKOLQ4CL3bgD+B2wee3LRURERERERETE0jXsYJPt+4F7JfWfPDcRmFU+vwW41fbc/vqSNiqDUEjagObEurtols/tJGlc2YNpIjC741HvBX5g+8mOsntKPSStU/qaM9KXjIiIiIiIiIiIpaP2NLojgPPKSXRzeHYD70nAtwfUfTNwbNkEfCFwqO0FwAJJU4AbaDb5vhHo6Wg3CThpQF+fA74u6WZAwDGlr4iIiIiIiIiIaKGqwSbb04GuQcoPHqTsG8A3hujnM8Bnhri36yBl84G31mSMiIiIiIiIiIjRVzuzKSIiIiIiIiKG0MaTw5KpXhtztTFTrarBJkmrA2fQbPRt4IPAE8BXgZfRLIs71PZ1HW22pznFbn/bUyTtBpza0e3mwCTb3+1o81/AIbZXKdenAruV2+OAtW2v/kJeNCIiIiIiImJJWWndCaMdYRF9vfOSqVIbc7U1U63amU2nAZfb3q/s2zQO+A5wgu3LJL0D+CKwK4Ck5YEvAD/u78D2z4Btyv2/Au4Arui/L6kLWGQgyfZRHfePALatfrOIiIiIiIiIpaSNs1CSqV4bc7UxU61hB5skrQbsDBwMYLsX6JVkYLVS7eXA/I5mRwAXAdsP0e1+wGW2Hy/PWB44Gfg7YJ8h2hzAEPs9RURERERERIymNs5CSaY6bczV1ky1amY2bQw8BJwtaWvgeuDjwJHAjyWdAiwH/A2ApPE0A0a7M/Rg0yTgPzquDwcutX2fpOdUlrQBsBHw08E6k9QNdANMnjy54pUiIiJiSVuW/2vc0tTG76mNmSIiImLZUTPYNAbYDjjC9lRJpwHH0sxmOsr2RZLeB5wJvAX4MnCM7WeGGDh6JfB6yhI7SesC76UswRvCJGCK7WcGu2m7B+jpvzz08BMqXisiIiKWpGX5v8YtTW38ntqYKSIiIpYdNYNNc4G5tqeW6yk0g01vppnhBHAhzQbiAF3A+WWgaS3gHZL6OjYCfx9wie2ny/W2wGuAO0qbcZLusP2ajgyTgMNG+nIRERERbZdZRBEREfGXZtjBJtv3S7pX0ma2bwMmArNoltftAlxNs2Tu9lJ/o/62kr4O/KDzxDmavZeO6+j/h8Bfd7R5tHOgSdJmwBrAr1/A+0VERES0WmYRRURExF+a2tPojgDOKyfRzQEOAb4HnCZpDPAkZc+k5yNpQ2B94OcjyHgAcL5tj6BNRERERERExFLTxpmqyVSvjbnamKlW1WCT7ek0y+M6/RJ4wzDtDh5wfRcwfpg2qwy4/mxNxoiIiIiIiIjR0saZqslUp4252pqp1nJLMEdERERERERERLzEVA02SVpd0hRJt0qaLemNkraW9GtJN0v6vqTVSt0NJT0haXr5+WpHP2Ml9Uj6belr31K+s6QbJPVJ2m/As18l6Yry3FllKV5ERERERERERLRQ7Z5NpwGX296v7Ns0DrgSONr2zyV9EPhn4FOl/p22txmkn+OBB21vKmk54K9K+T3AwcDRg7Q5FzjR9pWSVgEWVmaOiIiIiIiIiIilbNjBpjJjaWeawSBs9wK95ZS4X5RqVwI/5tnBpqF8ENi89LMQWFA+31WetchAkqQtgDG2ryz1Hq14p4iIiIiIiIiIGCU1y+g2Bh4CzpZ0o6QzJK0MzAT2KnXeS3PKXL+NSt2fS5oAzVK8cu9zZcnchZLWGebZmwIPS7q49HeypOUHVpLULWmapGk9PT0VrxQREREREREREUtCzTK6McB2wBG2p0o6DTiWZpbSf0r6NHAp0Fvq3we8yvbvJb0B+K6k15V+1gP+1/Y/Sfon4BTgwGGePQHYlmap3QU0M6zO7KxkuwfoH2XyoYefUPFaEbG4tfFozjZmgvbmaps2fk9tzNRWbfyukqlOMtVrY65kqpNM9dqYK5nqJFO9NuZqY6Zasv38FaS/Bq61vWG5ngAca/udHXU2Bb5pe4dB2l9NsxfT9cCjwKq2F0pan2YfqNd11P068APbU8r1TsBJtnct1wcCO9k+7Hkie8zY8cO89tLV1zuPZKrTxlzJVCeZ6rUxVzLVSaZ6bcyVTHWSqV4bcyVTnWSq18ZcyVQnmeq1MVdLM6m27rDL6GzfD9xb9mgCmAjMkrQ2QNno+/8BXy3Xr+hf6iZpY2ATYI6bUa3vVj4lNAAAIABJREFUA7t29jPM438DrCHpFeV694o2ERERERERERExSmr2bAI4AjhP0k3ANsC/AwdI+i1wKzAfOLvU3Rm4SdIMYArwEdt/KPeOAT5b+jkQ+ASApO0lzaXZ+2mypFsAbD9DMyvqKkk3AwK+9mJeOCIiIiIiIiIilpyaPZuwPR3oGlB8WvkZWPci4KIh+rmbZjBqYPlvaPZzGqzNlcBWNTkjIiJeipbl9fzRzr9fMi3b2vhdJVOdNmaCduZKpjrJVK+NudqYqVbVYFNERI02/o9hGzNBe3O1TRu/pzZmWmndCaMd4Tn6eue18rtqY6ZYtuXfVERExHPVbBC+Gc0pcP02Bj4NnFvKNwTuAt5n+4+lza7Al4EVgAW2d+nob3lgGjDP9rtK2UTgZJplfY8CB9u+Q9LBpXxeaf4V22cM807ZILxCGzNBO3MlU51kqtfGXMlUJ5nq9fXO4+kFc0Y7xiJWWGvj1n1Xbfz7JVO9NuZKpjrJVK+NuZKpTjLVa2Oulmaq3iB82JlNtm+j2aepf6BoHnAJcCxwle2TJB1bro+RtDrwP8Dbbd/Tv5F4h48Ds4HVOspOB/a2PVvSoTQbjh9c7l1g+/DaF4qIiIh2aNuMq77eecNXioiIiIgXrXaD8H4TgTvL3kt7A+eU8nOAd5fPfwdcbPseANsP9jeWtB7wTmDg7CTz7ODTy2k2HI+IiIiIiIiIiGXMSPdsmgR8u3xex/Z9ALbv65jBtCmwgqSrgVWB02yfW+59GfhkKe/0D8CPJD0BPALs1HFvX0k7A78FjrJ978BQkrqBboDJkyeP8JUiIiIiIiIiImJxqZ7ZJGkssBdw4TBVxwBvoJnB9DbgU5I2lfQu4EHb1w/S5ijgHbbXA84G/qOUfx/Y0PZWwE94dibVImz32O6y3dXd3V37ShERERERERERsZiNZBndnsANth8o1w9IeiVA+d2/XG4ucLntx2wvAH4BbA28CdhL0l3A+cDukr4p6RXA1ranlvYXAH8DYPv3tp8q5V+jGcSKiIiIiIiIiIiWGslg0wE8u4QO4FLgoPL5IOB75fP3gAmSxkgaB+wIzLZ9nO31bG9Isxzvp7Y/APwReLmkTUv7PWg2EO8fxOq3V395RERERERERES0U9WeTWXQaA/gwx3FJwHfkfQh4B7gvQDlRLnLgZuAhcAZtmcO1bftPkn/CFwkaSHN4NMHy+2PSdoL6AP+wLMn1EVERERERERERAtVDTbZfhxYc0DZ72lOpxus/snAyc/T39XA1R3XlwCXDFLvOOC4mowRERERERERETH6RrKMLiIiIiIiIiIi4nkNO9gkaTNJ0zt+HpF0pKT3SrpF0kJJXR313z+g/kJJ25R7l0uaUdp9VdLypfyzkuZ1tHnHgAyvkvSopKMX9xcQERERERERERGLz7DL6GzfBvQPFi0PzKNZ8jYOeA8weUD984DzSv3XA9+zPb3cfp/tRyQJmEKzz9P55d6ptk8ZIsapwGUjeK+IiIiIiIiIiBgFVXs2dZgI3Gn77v6CZtxoSIucYGf7kY7njgU83AMlvRuYAzw2wqwRERExip6Yf81oR4iIiIiIUTDSwaZJdAweVdgf2LuzQNKPgR1oZipN6bh1uKS/B6YBn7D9R0krA8fQnIQ35BI6Sd1AN8DkyZOHqhYRERFL0UrrThjtCIvo65032hEiIiIiXhKqNwiXNBbYC7iwsv6OwOO2Z3aW234b8EpgRWD3Unw68Gqa5Xr3AV8q5SfQLK979PmeZbvHdpftru7u7so3ioiIiIiIiIiIxW0kM5v2BG6w/UBl/SFnQdl+UtKlNLOeruzsU9LXgB+Uyx2B/SR9EVgdWCjpSdtfGUHuiIiIiIiIiIhYSkYy2LTI/kvPR9JyNJt/79xRtgqwqu37JI0B3gFcU+690vZ9peo+wEwA2xM62n8WeDQDTREREREREdE2bdyrMJnqtTFXGzPVqhpskjSOZt+kD3eU7QP8F/AK4IeSppclctAMMs21Paejm5WBSyWtCCwP/BT4arn3RUnb0GwYflfncyIiIiIiIiLaro17FSZTnTbmamumWlWDTbYfB9YcUHYJcMkQ9a8GdhpQ9gCw/RD1D6zI8NmarBERERERERERMXqGHWyStBlwQUfRxsCngfHA3wK9wJ3AIbYflrQCcAawXen/XNufl7Q+cC7w18BCoMf2aeUZJw/R1w5AT38U4LNlkCsiIiJablme+h0RERERL9ywg022b6M5JQ5JywPzaGY0bQYcZ7tP0heA44BjaPZqWtH268vyu1mSvg08BXzC9g2SVgWul3Sl7VnAlUP0NRPoKuWvBGZI+r7tvsX7NURERMTitixP/Y6IiIiIF24kG4QDTATutH03cHdH+bXAfuWzgZXLJuAr0cxWesT2H4D7AGz/WdJsmtlRs2xfMVhfZflev5eVviMiImIZkJlNERHxUtLG/99LpnptzNXGTLVGOtg0icFPpPsgzy61mwLsTTOwNA44qgw0/R9JGwLbAlOH6QtJOwJnARsAB2ZWU0RExLIhM5siIuKlpI3/v5dMddqYq62ZalUPNkkaC+xFs8Sts/x4oA84rxTtADwDrAusAVwj6Sf9J9NJWgW4CDjS9iPD9IXtqcDrJL0WOEfSZbafHNCuG+gGmDx5cu0rRURExBK0LP/XuIiIiIh44UYys2lP4IZyqhwAkg4C3gVMtN2/xO3vgMttPw08KOl/gS5gTtk8/CLgPNsXd3Y+RF//x/ZsSY8BWwLTBtzr4dmNxH3o4SeM4LUiIiJiSViW/2tcRERERLxwy42g7gF0LKGT9HaaTbz3GrC30j3A7mqsDOwE3CpJwJnAbNv/0dnxUH1J2qjs/YSkDWg2Jb9rBJkjIiIiIiIiImIpqprZVE6V2wP4cEfxV4AVgSubcSSutf0R4L+Bs2lOkhNwtu2bJL0ZOBC4WdL00se/2P7R8/T1ZuBYSU8DC4FDbS94MS8cEUtOG5fMtDETtDdX27Txe2pjprZq43eVTHWSqV4bcyVTnWSq18ZcyVQnmeq1MVcbM9XSICvWlnUeM3b8aGdYRF/vPJKpThtzJVOdZKrXxlzJVCeZ6rUxVzLVSaZ6bcyVTHWSqV4bc7U109ML5ox2jEWssNbGyVSpjblamkm1dUd6Gl1EREREREREDNDGvQqTqU4bc7U1U61h92yStJmk6R0/j0g6UtLnJN1Uyq6QtG6pv4akS8q96yRt2dHX2yXdJukOScd2lO8u6QZJMyWd07FP0/tLPzdJ+pWkrUf0TURERERERERExFI17GCT7dtsb2N7G+ANwOPAJcDJtrcq5T8APl2a/Asw3fZWwN8DpwFIWp5mP6c9gS2AAyRtIWk54Bxgku0tgbuBg0pfvwN2KX19jmdPnIuIiIiIiIiIiBYayWl0ABOBO23fbfuRjvKVgf7Nn7YArgKwfSuwoaR1gB2AO2zPsd0LnA/sDawJPGX7t6X9lcC+pf2vbP+xlF8LrDfCvBERERERERERsRSNdLBpEvDt/gtJJ0q6F3g/z85smgG8p9zfAdiAZpBoPHBvR19zS9kCYAVJXaV8P2D9QZ79IeCyEeaNiIiIiIiIiIilqHqwSdJYYC/gwv4y28fbXh84Dzi8FJ8ErCFpOnAEcCPQBwy2a7ndHIc3CThV0nXAn0v9zmfvRjPYdMwQ2bolTZM0racnK+0iIiIiIiIiIkbLSE6j2xO4wfYDg9z7FvBD4DNled0hAJJEs+/S74BxLDpjaT1gPoDtXwMTSpu3Apv2V5K0FXAGsKft3w8WzHYPz+7n5EMPP2EErxUREREREREREYvLSJbRHcCiS+g26bi3F3BrKV+9zIIC+AfgF2UA6jfAJpI2KvcnAZeWNmuX3yvSzF76arl+FXAxcGDHnk4REREREREREdFSVTObJI0D9gA+3FF8kqTNgIU0J8h9pJS/FjhX0jPALJrlb9juk3Q48GNgeeAs27eUNv8s6V00g1+n2/5pKf80zQbi/9NMkqLPdv/eThHRMk/Mv2a0IzxHGzNBe3O1TRu/pzZmaqs2flfJVCeZ6rUxVzLVSaZ6bcyVTHWSqV4bc7UxUy01Wyb9RfGYseNHO8Mi+nrnkUx12pgrmeokU7025kqmOslUr425kqlOMtVrY65kqpNM9dqYK5nqJFO9NuZqaabB9uIe1EhPo4uIiIiIiIiIiBjSsMvoylK5CzqKNgY+bfvL5f7RwMnAK2wvkLQGcBbwauBJ4IO2Z5a6Hwf+keZkuq/191HuHUFzol0f8EPbn5S0JjAF2B74uu3+E+8iooXaOM2zjZmgvbnapo3fUxsztVUbv6tkqpNM9dqYK5nqJFO9NuZKpjrJVK+NudqYqdaIltFJWh6YB+xo+25J69OcFLc58IYy2HQy8KjtEyRtDvy37YmStgTOB3YAeoHLgY/avl3SbsDxwDttPyVpbdsPSloZ2BbYEtiycrApy+gqtDETtDNXMtVJpnptzJVMdZKpXhtzJVOdZKrXxlzJVCeZ6rUxVzLVSaZ6bczV0kxLbBndROBO23eX61OBTwKdI1ZbAFcB2L4V2FDSOjQbh19r+3HbfcDPgX1Km48CJ9l+qrR7sPx+zPYvaWZIRUREREREREREy410sGkS8G0ASXsB82zPGFBnBvCeUmcHYANgPWAmsLOkNcvpdu8A1i9tNgUmSJoq6eeStn9BbxMREREREREREaNq2D2b+kkaC+wFHFcGi44H3jpI1ZOA0yRNB24GbgT6bM+W9AXgSuBRmkGpvo4cawA70ezP9B1JG7tyjZ+kbqAbYPLkybWvFBEREREREbFYtHF/nWSq18ZcbcxUq3qwCdgTuMH2A5JeD2wEzJAEzcylGyTtYPt+4BAANTd/V36wfSZwZrn378Dc0vdc4OIyuHSdpIXAWsBDNcFs9wA9/ZeHHn7CCF4rIiIiIiIi4sVZad0Jox1hEX2985KpUhtztTVTrZEMNh1AWUJn+2Zg7f4bku4CusoG4asDj9vuBf4B+IXtR0q9/o2/X0Wz1O6NpYvvArsDV0vaFBgLLBhBtoiIiIiIiIiIaIGqwaaybG4P4MMV1V8LnCvpGWAW8KGOexdJWhN4GjjM9h9L+VnAWZJm0pxUd1D/EroykLUaMFbSu4G32p5VkzsiIiIiIiIiIpauqsEm248Daz7P/Q07Pv8a2GSIeoPOASuzoD4wXN8REREREREREdFuIz2NLiIiIiIiIiIiYkhVg02SNpM0vePnEUlHlntHSLpN0i2SvtjR5jhJd5R7b+soP6rUnSnp25JeVsrPlDRD0k2SpkhapZSvKOmC0tdUSRsuzi8gIiIiIiIiIiIWn6rBJtu32d7G9jbAG4DHgUsk7QbsDWxl+3XAKQCStgAmAa8D3g78j6TlJY0HPkazmfiWwPKlHsBRtre2vRVwD3B4Kf8Q8EfbrwFOBb7wot86IiIiIiIiIiKWiBeyjG4icKftu4GPAifZfgrA9oOlzt7A+bafsv074A5gh3JvDLCSpDHAOGB+adt/Yp2AlQB39HVO+TwFmFjqREREREREREREy1RtED7AJODb5fOmwARJJwJPAkfb/g0wHri2o81cYLztX0s6hWbm0hPAFbav6K8k6WzgHTSn2H2iFI8H7gWw3SfpTzSblS94AdkjIiL+4jwx/5rRjhAvQhv/fsm0bGvjd5VMddqYCdqZK5nqJFO9NuZqY6ZaIxpskjQW2As4rqP9GsBOwPbAdyRtDAw288iS1qCZqbQR8DBwoaQP2P4mgO1DJC0P/BewP3D2UH0NyNUNdANMnjx5JK8UERGxzFtp3UEPex1Vfb3zRjvCMqNtf7++3nnJVKmt/87b9l218e+XTPXamCuZ6iRTvTbmamumWiNdRrcncIPtB8r1XOBiN64DFgJrlfL1O9qtR7Nc7i3A72w/ZPtp4GLgbzofYPsZ4AJg345nrA9Qlt69HPjDgDY9trtsd3V3d4/wlSIiIiIiIiIiYnEZ6WDTATy7hA7gu8DuAJI2BcbSLG+7FJhUTpLbCNgEuI5m+dxOksaVfZcmArPVeE3pR8DfAreWZ1wKHFQ+7wf81PYiM5siIiIiIiIiIqIdqpfRSRoH7AF8uKP4LOAsSTOBXuCgMhB0i6Tv0Oy91AccVmYsTZU0BbihlN8I9NAslTtH0mrl8wyazccBzgS+IekOmhlNk4iIiIiIiIiIiFaqHmyy/TjNxtydZb3AB4aofyJw4iDlnwE+M0iTNw3Rz5PAe2tzRsToaeMGdm3MBO3N1TZt/J7amKmt2vhdJVOdZKrXxlzJVCeZ6rUxVzLVSaZ6bczVxky19Be4Is1jxo4f7QyL6OudRzLVaWOuZKqTTPXamCuZ6iRTvTbmSqY6yVSvjbmSqU4y1WtjrmSqk0z12pirpZkGO8BtUMPu2SRpM0nTO34ekXSkpAs6yu6SNL3UX1PSzyQ9KukrA/oaK6lH0m8l3Spp31K+gaSrJN0k6WpJ63W0+YKkmeVn//qvISIiIiIiIiIilrZhl9HZvg3YBkDS8sA84BLbX+6vI+lLwJ/K5ZPAp4Aty0+n44EHbW8qaTngr0r5KcC5ts+RtDvweeBASe8EtivPXxH4uaTLbD/ygt42IiIiIiIiIiKWqJGeRjcRuNP23f0F5fS491FOqbP9mO1f0gw6DfRBmoEkbC+0vaCUbwFcVT7/DNi7o/zntvtsP0azcfjbR5g5IiIiIiIiIiKWkpEONk2iDCp1mAA8YPv252soafXy8XOSbpB0oaR1StkMYN/yeR9gVUlrlvI9JY2TtBawG7D+CDNHRERERERERMRSUj3YJGkssBdw4YBbB/DcAajBjAHWA/7X9nbAr2mWzwEcDewi6UZgF5qlen22rwB+BPyqPOPXQN8g2bolTZM0raenp/aVIiIiIiIiIiJiMRt2z6YOewI32H6gv0DSGOA9wBsq2v8eeBy4pFxfCHwIwPb80g+SVgH2tf2ncu9E4MRy71vAc2ZQ2e4B+keZfOjhJ4zgtSIiIiIiIiJenDYeU59M9dqYq42Zao1ksGmwGUxvAW61PXe4xrYt6fvArsBPafZ/mgVQlsj9wfZC4DjgrFK+PLC67d9L2grYCrhiBJkjIiIiIiIilriV1p0w2hEW0dc7L5kqtTFXWzPVqhpskjQO2AP48IBbg+3hhKS7gNWAsZLeDbzV9izgGOAbkr4MPAQcUprsCnxekoFfAIeV8hWAa5o9yHkE+IDt5yyji4iIiIiIiIiIdqgabLL9OLDmIOUHD1F/wyHK7wZ2HqR8CjBlkPInaU6ki4iIiIiIiIiIZcBIT6OLiIiIiIiIiIgY0rCDTZI2kzS94+cRSUdK2kbStaVsmqQdSv33S7qp/PxK0tYdfd0l6eb+NgOec4Sk2yTdIumLpWwFSeeUNrMlHbe4v4CIiIiIiIiIiFh8hl1GZ/s2YBv4vw2759GcKPc14ATbl0l6B/BFmr2XfgfsYvuPkvakOSVux44ud7O9oPMZknYD9ga2sv2UpLXLrfcCK9p+fdk3apakb9u+6wW/cURERERERERELDEjOY0OmhPk7rR9d9nMe7VS/nJgPoDtX3XUvxZYr6LfjwIn2X6q9PFgKTewsqQxwEpAL81G4RERERERERGt0cZj6pOpXhtztTFTrZEONnWePnck8GNJp9Asx/ubQep/CLis49rAFWWgarLtnlK+KTBB0onAk8DRtn9Ds2n43sB9wDjgKNt/GGHmiIiIiIiIiCWqjcfUJ1OdNuZqa6Za1YNNksYCewH9+yZ9lGbw5yJJ7wPOBN7SUX83msGmN3d08ybb88syuSsl3Wr7FyXHGsBOwPbAdyRtDOwAPAOsW+5fI+kntucMyNYNdANMnjy5+uUjIiIiIiIiImLxGslpdHsCN9h+oFwfBFxcPl9IMzAEgKStgDOAvW3/vr/cdv9Suwdp9n3qbzMXuNiN64CFwFrA3wGX2366tPlfoGtgMNs9trtsd3V3d4/glSIiIiIiIiIiYnEayTK6A3h2CR00ezTtAlwN7A7cDiDpVTSDUAfa/m1/ZUkrA8vZ/nP5/FbgX8vt75Y+rpa0KTAWWADcA+wu6Zs0y+h2Ar48wneMiIiIUbAs7zMQERERES9c1WBTOQluD+DDHcX/CJxWNu9+krKMDfg0sCbwP5IA+mx3AesAl5SyMcC3bF9e2pwFnCVpJs0m4AfZtqT/Bs4GZgICzrZ90wt92YiIiFh6luV9BiIiIiLihasabLL9OM0AUmfZ/2fv3uMvK+f+j7/enU9KKOlAKZW4VYxEcqpuIXKIDkLIICm5HUpuiTuHuwjl0KAidJBSuYv6oQMqpsN0PpcxFeVQSaOaev/+uNae2bNnf7/fNczsdU29n4/H9zF7r7X2Xu99mL3XvtZ1fa5fAc8Zsu3uwO5Dlt8EbDzG/T8A7Dpk+b3AG9tkjIiIiIiIiIiI7s1PzaaIiIiIiIiIiIhxTdjYJGkDSZf2/d0j6QOSNpZ0vqTLJZ0macVm+836tp0m6XUD97e4pEsk/aRv2bebbS+TdKKkFZrlh/bd13WS7lrQT0BERERERERERCw4EzY22b7W9ia2N6EMm7uPMpPct4B9bf9Hc/3DzU2uACY1228LHNHUderZG7h6YDf72N7Y9rMoRcH3bPa9T9++D2PO7HcREREREREREVGh+R1GtxVwo+3fAxsA5zbLzwLeAKW+k+1ZzfJlAPduLGlN4FWUhqrZbN/TrBewbP9t+gzOhhcREREREREREZWZ38amnZjT4HMF8Jrm8huBtXobSXqepCuBy4H39DU+fQn4CPDw4B1LOgr4I7AhpRdT/7qnAOsAvxgWStJkSVMlTZ0yZcp8PqSIiIiIiIiIiFhQWjc2SVqK0rj0w2bRO4D3SboIeAzwQG9b2xfafgbwXGA/SctI2g64w/ZFw+7f9tuB1SlD7HYcWL0TcKLth8a47RTbk2xPmjx5ctuHFBERERERERERC9j89Gx6BXCx7T8B2L7G9n/afg6lt9ONgzewfTXwD+CZwBbAayTdAhwHvEzS9wa2fwg4nmZIXp/+HlUREREREREREVGpJSbeZLa5aiZJWtX2HZIWAz4OfKNZvg7wB9uzmuFvGwC32N4P2K/Z5iXAh2zv2tRpWtf2Dc3lVwPX9O1nA2Bl4Px/43FGRETEiM287byuI0REREREB1o1NklaDtgGeHff4p0lva+5fBJwVHP5hcC+kh6k1Gbaw/afx7t74DuSVmwuTwPe278f4Djbw4qGR0RERKWWXX3LriPMZdYDt3YdISIiIuJRoVVjk+37gMcPLPsy8OUh2x4DHDPB/Z0NnN1cfpgyxG6sbT/ZJmNERERERERERHRvfobRRURERERERMQQNQ4fT6b2asxVY6a2WhUIl7SPpCslXSHp2GZ2uXUkXSjpeknHN7PV9d9mB0mWNKm5vpmkS5u/aZJe17fttpKulXSDpH37lkvSQZKuk3S1pL0W1AOPiIiIiIiIiIgFb8KeTZLWAPYCNrI9U9IJlNnhXgkcavs4Sd8A3gl8vbnNY5rbXNh3V1cAk5rC4U8Cpkk6DTDwVUpNqBnA7ySdavsqYDdgLWBD2w9LWnWBPOqIWChqbHmvMRPUm6s2NT5PNWaqVY3PVTK1k0zt1ZgrmdpJpvZqzFVjpoiYQxPV3W4amy4ANgbuAX4MHAZ8H1itaTx6PvBJ2y9vbvMl4P8BH6LMOjd14D7Xae5zDeC5A7fdD8D2ZyX9FtjF9g3z8Zi8xFJrzMfmC9+sB24lmdqpMVcytZNM7dWYK5naSab2asyVTO0kU3s15kqmdpKpvRpzJVM7ydRejbkqzaS22044jM72rcAhwHTgduBu4CLgLtuzms1mUBqOkLQpsJbtnwzel6TnSboSuBx4T3P7NYA/9G02+76AdYEdJU2VdIakpw3LKGlys83UKVOmTPigIyIiIiIiIiJi4WgzjG5lYHtgHeAu4IfAK4ZsakmLAYdShr/Nu4F9IfAMSU8HviPpDGBYy1ivu9XSwD9tT5L0euBIYJ55lG1PAXqtTN5jzwMnelgRsRDU2J25xkxQb67a1Pg81ZipVjU+V8nUTjK1V2OuZGonmdqrMVcytZNM7dWYq8ZMbbUZRvdGYFvb72yuvxV4PvBGBobRAW8CbgTubW6+GvBX4DVDhtL9EvgwsCRjD6O7ptn3LZJE6U210gSPKcPoWqgxE9SZK5naSab2asyVTO0kU3s15kqmdpKpvRpzJVM7ydRejbmSqZ1kaq/GXJVmaj2MbsKeTZThc5tLWg6YCWwFTAV+CewAHAe8DTjF9t3AE3o3lHQ2Tc2mpk7TH5rGqacAGwC3UHpLPa1Zfyul+PguzV38GHgZpUfTi4Hr2j6wiBi9Glvea8wE9eaqTY3PU42ZalXjc5VM7SRTezXmSqZ2kqm9GnMlUzvJ1F6NuWrM1NaEPZsAJB0I7AjMAi4BdqfUVToOeFyzbFfb9w/c7mzmNDa9BdgXeBB4GPiU7R83270S+BKwOHCk7YOa5Y+lFCJ/MqW31HtsT5sgbno2tVBjJqgzVzK1k0zt1ZgrmdpJpvZqzJVM7SRTezXmSqZ2kqm9GnMlUzvJ1F6NuSrNtEB7NmH7AOCAgcU3AZtNcLuX9F0+BjhmjO1OB04fsvwu4FVtMkZERERERERERPcmnI0uIiIiIiIiIiKirVaNTZL2kXSlpCskHStpGUl7SrpBkiX112l6iaS7JV3a/H2ib92Rku6QdMXA/R/ft/0tki5tlq8taWbfum8sqAceEREREREREREL3oTD6CStAewFbGR7pqQTKEW8fw38BDh7yM3Os73dkOVHA4cD3+1faHvHvv19Abi7b/WNtjeZKGdERERERERERHSvVc2mZrtlJT0ILAfcZvsSAKl1fShsnytp7bHWq9zZmygz0EVERERERERExCJmwmF0tm9STKXbAAAgAElEQVQFDgGmA7cDd9s+c4KbPV/SNElnSHrGfOTZEviT7ev7lq0j6RJJ50jactiNJE2WNFXS1ClTpszH7iIiIiIiIiIiYkGasLFJ0srA9sA6wOrA8pJ2HecmFwNPsb0xcBjw4/nIszNwbN/124En294U+CDwA0krDt7I9hTbk2xPmjx58nzsLiIiIiIiIiIiFqQ2BcK3Bm62faftB4GTgBeMtbHte2zf21w+HViyv4D4WCQtAbweOL7vvu63/Zfm8kXAjcD6LTJHREREREREREQH2jQ2TQc2l7RcU1NpK+DqsTaWtFqzHZI2a/bxlxb72Rq4xvaMvvtaRdLizeWnAk8DbmpxXxERERERERER0YE2NZsuBE6kDI+7vLnNFEl7SZoBrAlcJulbzU12AK6QNA34CrCTbQNIOhY4H9hA0gxJ7+zb1U7MPYQO4EXNfU9rMrzH9l//xccaERERERERERELWavZ6GwfABwwsPgrzd/gtocDh49xPzuPs4/dhiz7EfCjNhkjIiIiIiIiIqJ7bYbRRUREREREREREtNKqsUnSPpKulHSFpGMlLSPp+5KubZYdKWnJvu1fIunS5jbn9C3ftrnNDZL2HbKfwyTdO2T5DpIsadK/+kAjIiIiIiIiImLhm3AYnaQ1gL2AjWzPlHQCpb7S94Fdm81+AOwOfF3SY4GvAdvani5p1eZ+Fge+CmwDzAB+J+lU21c16ycBjx2y/8c0+7/w33qkERERMVIzbzuv6wgRERER0YFWNZua7ZaV9CCwHHCb7TN7KyX9llIoHGAX4CTb0wFs39Es3wy4wfZNzW2OA7YHrmoaog5ubvu6gX1/Gvhf4EPz+dgiIiKiQ8uuvmXXEeYy64Fbu44QERER8agwYWOT7VslHQJMB2YCZw40NC0JvAXYu1m0PrCkpLOBxwBftv1dYA3gD313PQN4XnN5T+BU27dLmr2BpE2BtWz/RNKYjU2SJgOTAY444oiJHlJERESMQHo2RURERDw6TVizSdLKlB5I6wCrA8tL2rVvk68B59ruHVEuATwHeBXwcuC/Ja0PiHlZ0urAG4HDBva7GHAo8F8TZbQ9xfYk25MmT5480eYREREREREREbGQtBlGtzVws+07ASSdBLwA+J6kA4BVgHf3bT8D+LPtfwD/kHQusHGzfK2+7dYEbgM2BdYDbmh6NS0n6QZKg9UzgbOb5asBp0p6je2p/+LjjYiIiBHJMLqIiIiIR6c2jU3Tgc0lLUcZRrcVMFXS7pSeS1vZfrhv+1OAwyUtASxFGSp3KHAN8DRJ6wC3UoqM72L7SkpDEgCS7rW9XnP1CX3LzwY+lIamiIiIeCTJcMOIiIh4pGlTs+lCSScCFwOzgEuAKcA/gN8D5zc9j06y/SnbV0v6KXAZ8DDwLdtXAEjaE/gZsDhwZNPQFBEREfGolR5gERER8UjTajY62wcAB7S9re2DKbPLDS4/HTh9gn2tMMbyl0wYNCIiIiIiIiIiOtWqsSkiIiIiIiIixlbjsOhkaq/GXDVmaqtVY5OkfYDdAQOXA28HvgpMoswydx2wm+17m+3fBHyy2X6a7V2a5Z+nzFIH8GnbxzfL9wQ+AKwLrGL7z83y7YFPU4bjzQI+YPtX/95DjoiFZVH+MBy1PFcRERERjyw1DotOpnZqzFVrprYmbGyStAawF7CR7ZmSTqAU997H9j3NNl8E9gQ+J+lpwH7AFrb/JmnVZptXAc8GNgGWBs6RdEZzH78GfgKcPbD7nwOn2rakZwEnABu2fnQRMVKL8ofhqOW5ioiIiIiIR6rFWm63BLBsM8PccsBtfQ1NApal9GICeBfwVdt/A7B9R7N8I+Ac27Ns/wOYBmzbbHOJ7VsGd2r7Xtu9+12+bx8REREREREREVGhNrPR3SrpEGA6MBM40/aZAJKOAl4JXAX8V3OT9Zt1v6bMOvdJ2z+lNC4d0PSCWg54aXO7cUl6HfBZYFXmDMEb3GYyMBngiCOOmOguI2IhqXFoWI2ZoN5ctanxeaoxU61qfK6SqZ1kaq/GXMnUTjK1V2OuZGonmdqrMVeNmdrSnI5DY2wgrQz8CNgRuAv4IXCi7e816xcHDgN+Z/soST8BHgTeBKwJnAc80/ZdkvYH3gjcCdwB/Nb2l/v2dQswqVezaSDHi4BP2N56gsfkJZZaY8IHPkqzHriVZGqnxlzJ1E4ytVdjrmRqJ5naqzFXMrWTTO3VmCuZ2kmm9mrMlUztJFN7NeaqNJPabttmGN3WwM2277T9IHAS8ILeStsPAccDb2gWzQBOsf2g7ZuBa4GnNdseZHsT29tQCotf3zao7XOBdSU9oe1tIiIiIiIiIiJitNrMRjcd2FzScpRhdFsBUyWtZ/uGpmbTq4Frmu1/DOwMHN00DK0P3NT0gHqs7b80xb6fBZw53o4lrQfc2BQIfzawFPCX+X+YETEKNXbzrDET1JurNjU+TzVmqlWNz1UytZNM7dWYK5naSab2asyVTO0kU3s15qoxU1sTDqMDkHQgZRjdLOASYHfgF8CKlB5K04D32r6naXz6AqX490PAQbaPk7QMcHFzl/cA77F9aXP/ewEfAVajDK873fbukj4KvJUyLG8m8GHbv5ogbobRtVBjJqgzVzK1k0zt1ZgrmdpJpvZqzJVM7SRTezXmSqZ2kqm9GnMlUzvJ1F6NuSrN1HoYXZueTdg+ADhgYPEWY2xr4IPNX//yf1JmpBt2m68AXxmy/PPA59tkjIjuLcot76OW5yoeDfI+j4iIiHh0atXYFBHRxrKrb9l1hLnMeuDWriOMKc9VPBrkfR4RERHx6NSmQDiS9pF0paQrJB3bDInrrTtM0r191w+VdGnzd52ku5rlL+1bfqmkf0p6bbNuK0kXN8t/1dRqQtIHJV0l6TJJP5f0lAX78CMiIiIiIiIiYkGasLFJ0hrAXsAk288EFgd2atZNAh7bv73tfZoZ5zYBDqPMXoftX/YtfxlwH3MKhH8deHOz7gfAx5vllzT7fRZwIvC//86DjYiIiIiIiIiIhavtMLolgGUlPQgsB9zWzC53MLAL8Loxbrcz89Z6AtgBOMP2fc11U4qNA6wE3AalgarvNhcAu7bMGxERERERETEyNdYqTKb2asxVY6a2Jmxssn2rpEOA6ZQZ4c60faakvYFTbd9eJqCbWzPkbR3KrHWDdgK+2Hd9d+B0STMpM9VtPuQ27wTOGJZR0mRgMsARRxwx0UOKiIh4RKn1QKTWXLWp8XlKpkVbjc9VMrVTYyaoM1eNmSJiDpXJ48bZQFoZ+BGwI3AX8EPK0LjJwEtsz5J0r+0VBm73UWBN2+8fWP4k4DJgddsPNstOAj5v+0JJHwY2sL173212BfYEXmz7/gkekyucHrDGKQurywR15kqmdpKpvRpzJVM7ydRejbmSqZ1kaq/GXMnUTjK1V2OuZGonmdqrMVelmebtaTSGNsPotgZutn0nzG4YOhBYFrih6dW0nKQbbK/Xd7udgPcNub83ASf3NTStAmxs+8Jm/fHAT3sbS9oa2J92DU0R0aGcYWovz1VERERERDxStWlsmg5sLmk5yjC6rYAv2j6st0HTs2m9vusbACsD5w+5v52B/fqu/w1YSdL6tq8DtgGubu5nU+AIYFvbd8zXI4uIkcs05+3luYqIiIiIiEeqNjWbLpR0InAxMIsyQ9yUCW62M3CcB8boSVobWAs4p+/+Z0l6F/AjSQ9TGp/e0aw+GFgB+GHTg2q67ddM/LAiIiIiIiIiIqILrWajs30Aw2eV661fYeD6J8fY7hZgnkGHtk8GTh6yfOs2+SIiIiIiIiIiog6LdR0gIiIiIiIiIiIeOVo1NknaR9KVkq6QdKykZSQdLelmSZc2f5s0264k6TRJ05rbvL3vfp4s6UxJV0u6qhlWxzj3taGk8yXdL+lDC/7hR0RERERERETEgjThMDpJawB7ARvZninpBMpMcwAftn3iwE3eB1xl+9XNTHPXSvq+7QeA7wIH2T5L0grAw323G3Zff232/dr5f2gRERERERERETFqbYfRLQEsK2kJYDngtnG2NfAYlYreK1AajGZJ2ghYwvZZALbvtX3feDu1fYft3wEPtswZEREREREREREdmrCxyfatwCHAdOB24G7bZzarD5J0maRDJS3dLDsceDqlQepyYG/bDwPrA3dJOknSJZIOlrR4366G3VcrkiZLmipp6pQpE02UFxERERERERERC0ubYXQrA9sD6wB3AT+UtCuwH/BHYClgCvBR4FPAy4FLgZcB6wJnSTqv2deWwKaUhqvjgd2Ab49zX63YntLcDsB77Hlg25tGxAI087bzuo4wjxozQb25alPj81RjplrV+FwlUzvJ1F6NuZKpnWRqr8ZcydROMrVXY64aM7U1YWMTsDVws+07ASSdBLzA9vea9fdLOgroFfB+O/A52wZukHQzsCEwA7jE9k3N/fwY2Bz4tu3bx7iviFiELLv6ll1HmMusB26tLhPUmWvWA7d2HWGoGp+nGjNFezW+fsk0sRozQZ25kqmdZGqvxlzJ1E4ytVdjrloztdWmsWk6sLmk5YCZwFbAVElPsn17U5vptcAVfdtvBZwn6YnABsBNwN+AlSWt0jRcvQyYCjDOfUVERMQialE+QIqIiIiIf92EjU22L5R0InAxMAu4hDJk7YxmtjlRhs29p7nJp4GjJV3erPuo7T8DSPoQ8POmUeki4JvNbb4/7L4krUZpkFoReFjSByiz4t3zbz/yiIiIR4hau1jXmqs2NT5PybRoq/G5SqZ2aswEdeZKpnaSqb0ac9WYqS2V0W6PKF5iqTW6zjCXWQ/cSjK1U2OuZGonmdqrMVcytZNM7dWYK5naSab2asyVTO0kU3s15kqmdpKpvRpzVZpJbbdtM4wuIiIiIiIiIsZRYy+UZGqvxlw1ZmqrVWOTpH2A3QEDl1OKgN8P/A/wRuAh4Ou2v9LMXnckZSa6fwLvsH1Fcz+3AH9vtp9le1Kz/GDg1cADwI3A223f1azbD3hnc5u9bP/s33/YEREREREREQtOjbUKk6mdGnPVmqmtCRubJK0B7EWplTRT0gnATpT6SmsBG9p+WNKqzU0+Blxq+3WSNgS+SikY3vPSXg2nPmcB+9meJenzwH7ARyVt1OzrGcDqwP+TtL7th1o/woiIiEe4RfmsV9T5+iXToq3G5yqZ2qkxE9SZK5naSab2asxVY6a22g6jWwJYVtKDwHLAbZReTbvYfhjA9h3NthsBn22WXSNpbUlPtP2nse7c9pl9Vy8Admgubw8cZ/t+4GZJNwCbAee3zB0REfGIV9tZL8jMb/Ojttev1jOptWWCet/ntT1XNb5+ydRejbmSqZ1kaq/GXLVmamuxiTawfStwCDAduB24u2kcWhfYUdJUSWdIelpzk2nA6wEkbQY8BVizd3fAmZIukjR5jF2+AzijubwG8Ie+dTOaZXORNLnJMXXKlCkTPaSIiIiIiIiIiFhIJmxsamowbQ+sQxnKtrykXYGlgX82dZe+SanTBPA5YGVJlwLvBy4BZjXrtrD9bOAVwPskvWhgX/s3236/t2hIpHmmz7M9xfYk25MmTx6rDSsiIiIiIiIiIha2NsPotgZutn0ngKSTgBdQehn9qNnmZOAoANv3UAqII0nAzc0ftm9r/r1D0smUIXHnNtu+DdgO2Mp2r0FpBqUuVM+alCF8ERERERERjyi11mepMVeNmSJijjaNTdOBzSUtB8ykFPueCtwDvIzSo+nFwHUAkh4L3Gf7AcoMdufavkfS8sBitv/eXP5P4FPNbbYFPgq82PZ9ffs+FfiBpC9SelU9Dfjtv/mYIyIiIiIiqlNbfRaot25MjZlqbABLpvZqzFVjprYmbGyyfaGkE4GLKUPcLgGmAMsC35e0D3AvpWEJ4OnAdyU9BFwFvLNZ/kTg5NLZiSWAH9j+abPucMqwvLOa9RfYfo/tK5vZ765q9v2+zEQXERERERERtamxASyZ2qkxV62Z2mo1G53tA4ADBhbfD7xqyLbnU3ogDS6/Cdh4jPtfb5x9HwQc1CZnRERERERERER0a8IC4REREREREREREW216tnUDJXbnTIT3OWUAuBbAAdTGqzuBXazfYOkpYHvAs8B/gLsaPsWSZtRht9BmWXuk7ZPHuv+bf9T0suAQ4ClgIuAd9ruzWwXEZWpcUxxjZmg3ly1qfF5qjFTrWp8rpKpnWRqr8ZcydROMrVXY65kaieZ2qsxV42Z2pqwsUnSGsBewEa2ZzY1lHYCPgZsb/tqSXsAHwd2o9Ro+pvt9STtBHwe2BG4Aphke5akJwHTJJ1GqeU0z/1L+i7wHcrsdNdJ+hTwNuDbC/QZiIgFpsYxxbVlgjpzzc/461Gq8XmqMdOifCAyajW+frFoy3sqIiJiXq16NjXbLSvpQWA54DZKL6QVm/UrNcsAtgc+2Vw+EThckgZmmVumuf149/944H7b1zXbnAXsRxqbIiIi5lLbj12ot2GuRjU+T8nUTt5T7dT4+iVTezXmSqZ2kqm9GnPVmqmtCWs22b6VMpRtOnA7cLftMynD3k6XNAN4C/C55iZrAH9objsLuJvScISk50m6kjJU7j22Z41z/38GlpQ0qbnfHYC1hmWUNFnSVElTp0yZMmyTiIiIiIiIiIgYgQkbmyStTOmttA6wOrC8pF2BfYBX2l4TOAr4Yu8mQ+7GALYvtP0M4LnAfpKWGev+bZsyXO9QSb8F/g4Mrddke4rtSbYnTZ48ue1jj4iIiIiIiIiIBazNbHRbAzfbvtP2g8BJlOLgG9u+sNnmeOAFzeUZND2QJC1BGWL31/47tH018A/gmWPc/wua7c63vaXtzYBzgev/5UcaERERERERERELXZvGpunA5pKWkyRgK+AqYCVJ6zfbbANc3Vw+lVLIG8rQt1/YtqR1msYnJD0F2AC4ZYz7v7rZbtXm36WBjwLf+HcebERERERERERELFwTFgi3faGkE4GLKcPYLgGmUHow/UjSw8DfgHc0N/k2cIykGyg9mnZqlr8Q2LcpAv4wsIftPwN/HuP+AT4saTtKo9jXbf/i333AEbHwZEas9vJcxaNB3ucRERERj06tZqOzfQBwwMDik5u/wW3/CbxxyPJjgGPm4/6x/WHgw20yRkT3FuXZEkYtz1U8GuR9HhEREfHo1GYYXURERERERERERCtpbIqIiIiIiIiIiAWm1TC6iIiIiPmVmk0RERERj05pbIqIiIiFIjWbIiIiIh6dZLvrDNWSNNn2lIm3HJ1kaq/GXMnUTjK1V2OuZGonmdqrMVcytZNM7dWYK5naSab2asyVTO0kU3s15uoiU2o2jW9y1wGGSKb2asyVTO0kU3s15kqmdpKpvRpzJVM7ydRejbmSqZ1kaq/GXMnUTjK1V2OukWdKY1NERERERERERCwwaWyKiIiIiIiIiIgFJo1N46tqnGUjmdqrMVcytZNM7dWYK5naSab2asyVTO0kU3s15kqmdpKpvRpzJVM7ydRejblGnikFwiMiIiIiIiIiYoFJz6aIiIiIiIiIiFhg0tgUERERERERERELTBqbIiIiIiIiIiJigUljU0PSnl1nGCRpia4zxL9O0uZdZ1hUSFpF0iRJj+06S4+k5cZZt84os9SsxtduUSPp1x3ue8O+y0sPrMtnWJ/+72RJKzTv+8d1mGeTrvb9r+jyfR7/PknLd7TfDcZZt8Uos0RExPxJY9Mc7+g6wBC/7TrAMJL+Lumevr+/9//bUabHjffXRSbgax3td0ySrpK0v6R1u87SI2l34ErgMOAaSa/pOFLP3ZIOlDTsc/JHow4j6WmSTpF0haRjJa0x6gxDMlX52kk6StKRY/x9u+t8Qzy5w33/oO/y+QPrRv4ZJunZ4/2NOk9frt2AP0m6TtIrgMuAzwPTJO3cUaxjJF0t6ROS1u8ow/zo5H0u6XmSpkm6V9L5kjbqIscgSV/qu7z3wLqjRx5ozr7XaBpSl2quryrpM8D1HUW6WtJ3JK0wZN1hI08DSHpZ3+V1Bta9fvSJQNI7+i6vKennku6S9JuaPh+ahvpnd3mCStKz+i4vKenjkk6V9JnxTjR2SdLbO9z3hpK2Gvw/KGnbDjNtJum5zeWNJH1Q0iu7yjOMpO92vP/z+z+rBtb9fGQ5MhtdIeli250dyA4j6RLbm3adY5CkHwOrAScBx9me3nEkJD0MzABm9Rb1rbbtp3aQqcb31MbATsCbgD8DxwIn2L6tw0xXAC+1faekpwLft/38rvL05boW+B2wLrCL7Zv71o38/6ak84DvAucCrwGeb7uTg9q+TLW+dm8YsvjJwAeAxW2vOeJI45I03XZXP8Rnv5cH39cdvc9/2Xf1OcBU5nye2/bQA6eFTdLlwEuBxwDTgE1t3yjpicBZtp817h0svFwbATsDOwL3UD7Tj7c9o4s84+nqfS5pKrAfcz47d7f98lHnGNR/jDB4vNDV8YOkDwD7AzcASwNfBr5I+e75X9u3d5DpcuBU4I3AW21f0Leuk+PkSl+7/kwnAD8HvglsD+xpe6tRZ2qyfM32Hs3lF1JOcNwIrAe82/bpHWTqf66+ADweOAp4LfB4228ddaaJdPj5uRfwPuBqYBNgb9unNOu6eq8fALwCWAI4C3gecDawNfAz2wd1kOnUwUWUY4ZfANge+clYSbcCdwOnA/vZfrBv3cg+OzNMa45naXivHFEOcFccdSBgFUkfHGul7S+OMkzffl8raSXg9cA3JS0DHE9pePprF5koZ7deAvyacrD9K3ffkvrUIR8+s3XxwWN7GuWH0n4qQ2R2BC6QdANwrO1vjjoT8IDtO5t8N2lgKE+H/mF7V0m7AudK2t927yxFF++tx/S9PgdLuriDDIOqfO1sz+551jSCfQx4EfA5oJOeTeOc7Raw7CizDPAYl4ddX+hsv7R3uTkY6qRxaYiHbP8Z+LOke23fCGD7T5ImuOnCY/sq4L+B/5b0HMrJhPOaHyYvHnWeSt/ni9k+q7n8Q0n7dZRjkMa43KXJwAa2/yrpyZRGpxf1N/B04EHb+0v6GfC9prfA/9h+mG6+i2H8166G13J9229qLp8s6RMdZukfjv1p4LW2L26+m0+g/BAetf7XaCvgubYflHQu5Ri5E5IuG2sV8MRRZunzLuA5tu+VtDZwoqS1bX+Z7t7rO1AavpYG/gisafseSQcDFwIjb2wC1gSuAr5F+VwSMAn4QgdZev4EvBD4CnChpJ1tX9usG9lnZxqb5ri8wl5EiwMrUMcX11xs3w0cJek7lAaLw4BlKGfAusizt8oR/0uAtwCHSToT+Hp/j5QRu5NuP2TG1Rw8XiDpFOBQ4HDKWbBRW1PSV8a6bnuvDjLNZvt7kn5FGbLySuDdHUVZRtKmzPk8WLb/uu0uGp+qfe0kPZ1yhn5T4GDgPbZnjX+rherV46z7ychSzKv3mom5Xz8BXQ/V7PqEQb/pkj5L6dl0TXM2/CTKmdSR9/YY1Hz/rQisRPku7mRIO3W+zx870Ag213XbJ3WQCWAxSStTSlr0Lvc+3xfvKNM/eycNbU+XdF3HDU2z2T5X0iTK8N7zJL25yzhjXB52fVT6P8tXkbRkX0+GJTvKNGjF3rFKc4Kqq/f5SpJeR/m/t3TvebJtSV1+7zwReDnwt4HlAn4z+jhA6Q1+L4DtWyS9hNLg9BS6+306y/ZDwH2SbrR9T5NvZjPSpQuTgL0px50ftn2ppJm2z+koDwC27wN2b97vZ0n6jO1vMMLXLo1Ndbvd9qe6DjGMpBdQuu5vCfwKeJ3t87rM1PRk+qWkSyhndz9NqTHQRQMKwL1df8iMpRnnvDPwBuAWYArww47ifHjg+kWdpJjX7A/i5gv2xZQeBJfQzRn6PzJ3Y27/dQNd9ACp8rWT9EPKF/8hwD7AQ8CKvR4oXfTAtN1ZvYUJ9L+GUwfWDV5/NNuVMpTgbmBfYFvK0KzpwG5dhZL0fOZ8ll9L6dm7b1e9jCt9n5/D3I1g/ddNaTTswkqUz8zed03/CYOuGyx6Vq3gBEL/d/FdwC6S3gacB3RVX6fXc13M3YtdQFcTiAx+lq8A/E3SapRhiF3ZsOmxI2BtSSvb/ptKPcyuGsHOoQyphXLS9YlNL9XVKCUmuvITYAXblw6ukHT26OMA8EdJm/QyNT2ctgOOBP6jo0wPSFquaUh5Tm9hM+qmk8ampqfloc3x56GS/kRF7Sy2T5b0W+Do5sT5sBp4C0VqNjUkfcz2Z8ZY91zbv+sgU601m24B7gKOo4xFnau3QBc9LFRmSdme0stqFcrB4/G2/zDqLH2ZTnLHNXUGqRT53JFy1uQ4ytDHTmt7SHqT7RO6zDCMpP+x/fEhyzcHPml7pIURJa3YO3tTi4pfu1uY82Ot929/3Z8uarh9yfYHmst7N13Qe+uOtr3bqDNNRNJTbP9+xPs8jDmv2U6Uz6nZuu7pWJPmff4nynN0vDusvddT4/u8i/fxoqppxBmT7e+MKkuPpD1szzNZQTMMa1/bkzvINO4Q1VpPNHah6QHT77ZmyNoTKEM0u2rsjRYkrUnpSfTHIeu2sD3yWUYlLW37/iHLnwA8yfblo840JMurgC1sf6zDDD8d9ltF0oeBT9teZiQ50tg0nErRzZ0oZwzvtj2pgwyrUM7ID9XVmcumdX2sN467qLEh6R+UXkzHUmoMzJWviy8zlSLFY/4H6yjTAZTaTNeNet9jkfQTSuv/HrZv6jpPj6Rt+up8DK77vO2PjjjPjcD+to+bcOMRqfW1q5EqLCjbt//nU4bMnWv7DpWZevYFtrS91oizVPdjF2afMd2PUkB2Vcpn+x3AKcDnmh4Xo860bq92VC1qfJ+r1CT8FnBIx0Np56IJZlfsaGh0dSS9bdj/e0lLAMfY7mo2yEWGpE/UOlKiNuMd+42ayqzDvaGGt9Xw+ZVM7dSYqStpbMiakl0AACAASURBVOrTtL7v3PzNAp4CTLJ9S0d5bmZOkbFBnZydr5XKNMHjNYC9Y4x1C42ko/quvho4re96J5kAJD0e2AXYsFl0NaUB6i9d5GkyvRb4LGWWkq/T1w22w0bV64B9bP9f37LFKF2HV+ugZ9NTgC9Rur6+1/YNo9z/WCp97Xa1/b3m8lxn3iTtafvwDjKNN+tbZ41NKgU1twMupcwO9BNgD+AzwBG2/9lFrtqoFCf+BfCd3hneZsjFbsBWtrfpINPJjH9CY+Q9a2t8n0t6DPApylDj99s+d9QZhtG8My/2D0Pu6sTdaYz/nupiRqWLgW/YntK3bHngx8B02+/sINP2lKLEX22uX0jpVQ/wEdsnjjrTeNThjKfjkXSG7Vd0naNfl8+VyuQFS/YaBiVNp4wkWYry3fPZyjIdbftzyTQ00+8pw+67fO2WYc5oltOAj1DK39xI6dk0kiGjaWxqSPoNZfx8b2jR9ZJutt3V2OuqSVqVUr/iGZQDk6uAr9q+o9NglaplSKRK0eRfAD+j1B4SpYDyNsDLbF/TYbaNKVNT/42+IVBdNaqqzLrxU+Bjtk9qPrRPpBTefZv7phAdca5tge8Av2Puhp2R/wjoy1Tba1dj74pplAkMFqP8H3wJc04k/NL2xqPO1OS6Cni27X+qFCi+DXiW7es7ylPdj10ASdfa3mB+1y3kTONOZW7756PK0lPr+xxAZba+nwMzKJ+dvdmGn9VVpp6KjhF6w8NEqXe5e//6LoaHSXoc5bv4e7a/0vT6Px34ue19R52nyfRrYCc3pRokXUqZ1Wx54Cjb4/7fXEiZxhpmL2BZ253UjxmnB5+An9h+0ijzAGjsmaJFORZefpR5Zu+8NKxuafsfzfVLbG+qUkj9HNsvTKZkmo9MJwAPUj6XVgauoDQ6vRDYxPZ2o8hRTeGqCtxJmbbwiZSzE9dT10w4s0naAPiQ7Xd1tP8tKL0Yjga+S/lwfjbwW0lvdjfjd6urEzGglvfSp4G9PVBnpxnydxClyOxISVoa+DhlKtM32+5yZq7ZXIqCbw38rGlcfQtwoe0PdpWp+b//EUph1K/SUSHEvjxVvnbM3Ru0lmmpaywGDDCz13vJpWjrtV01NDUOaf4d+mO3Q7+X9BHKGco/AUh6IqVnU1e1AXfpolfHBKp8n0t6GfBlynC6zj87h6jiGKG/MUlSFZOc2P5r8118hqTVKfU5v277KxPcdGFaynPXBP1V0zv8L02vqy7cBTy39/nUT1Jn9UspJ8bOYfh372NHnKVnS8qkD/cOLBew2ejjzNFrrGh8uVn2kKQuJqah2X8ytVBhpo1sP7MZcjzDdu9kwk+bE0Mjkcamhu3tVWoyvAE4UNJ6lOlxN7P92y4yqdTNOARYndJd+DDKlK/PA77QRabGF4DX2r6kb9kpTZf+Iyj5Ru1FfZffRvOfvNH5WcuK/IftHQYX2v6RSvHwLlwG/IjSu2JmRxnm0Xc27iOURtWzgO/1lnvE9TQkfY4ye8p/2T5jlPseR5WvHXVOS/1i11mkeF3NPZPS2v1nfUfdk6jGH7uNHSl1rM5pGpmgzAh5KvCmjjJ13hNmiOre55KOo9Qk28UVFI5dhFTRACapNxx0CmUG1p8DM3rL3U2B6ZX7r9jes+/qKnTju5TyH/M0NlFOEHflauDdw05idNgIdgFw37DvF0nXdpCnZwVJS/Z6zts+usm0NLBiMiXTfHqgyTJL0uAEImPWhF7Q0tjUx/bdlHosRzY9GXYEviRpLY+4SGrjm5QaKOdTplm+mPKF8WZ3W0djxYGGJgBsX9rURujCeD0ZOjEwHKR/alygs+Eg//gX1y1M09zhbA3j6G/QvYzS67G3zJT6H6M0iWa404j3O55aX7v+qZbXbS7TXO+q1t3JlB6gtdl+4PohQ7fqRhU/dqH0+gI+2vzVYjlJ/8EY33m2Lxu2fCGr8X1+ke2dug4xSHPPvLimpLl66riDmRebIWs9izdDa2e/v9xNHb5X910+dWCZKbMPj9qFkt5l+5v9CyW9G+jkBLWHzJ7bt67Lz61PUobVDvP+EeaYzePUibL9orHWjcCJwBEqtSXvg9n1yQ5v1iVTMs2P3veKmPs7RpQTMCORmk0tSFrbHRQJl3Sp7U36rv8BWNv2yFojh5F0NfCC5uC7f/njgN/Y3nD4LRdqpurqRKjCqXElzaCcGZxnFfCBLhpVu6qhs6BoRDOX1Pg81ZgJ6BVTH1MXPS9qqckyFpWaZOtRfrzd2FWj5sCP3V8y92d5Z0XnASS9nDIb3RqU5+k24BTbP+0oz9+ZU3tvkLv40VTj+7ziz6nqZl7UIjwxjcaYtW4h7WtVyoiD+5kzVPQ5wNKUnv/DeheNItdKlJPT/Z9RP3MHs2UuCppeqrOfq65et748i1NKWuwO9I5Tngx8G/i4O5jRLJkW6UxVfMeksamPKpr+uclzDWVmvN6X/vcps4gJupsWV9Jk4F3Ah5j7S/bzwJG2j+gg0y3MKfg5D3dQ6F2liOUqtq8aWP4M4A7bd3aQ6YDx1ts+cFRZevoaCsd67Tr7cdnGqH7I1PiDaVF/7UZJ0h2UCSiG6qIXA0Azlv8zwDsoB0iLUeoXHgXs7xEXwq/1x66kLwHrU4aqzGgWrwm8Fbje9t4dZKqxYae693mNn50TkbREFz9OFmVdvM5NLbBnNFevtP2LUe5/IMtbgQOAM4Fbm8VrUiaAOdD2dzvMVltD/aaUkSMrMfdzdRewR4e/rza3fUFT42e9ZvENXZYpSKZFN1Mt0tjUUIXTP0s6m7GHEdgdTIvbI2k7Si2b2V+ywMG2T+sqU22aOhFfH+zB1Hzpvs32Lt0kG07Sc23/roP93k/5sq/qx2Vbo/rBJ+kuyoxvQ3UxLLPW166vwWL2or7rtr1uB5l+D3xirPVd9GIAkHQo8BhgH9t/b5atSBlON7OLRpQ2JD3D9pUj3N91ttcfslzAdbafNqosffuusbGpuve5pPuAG4atosPZ6CT9ys0MRZKOsf2WvnXVNJBJWhfYCdjZ9jO7zjOWrv8/NENmXkupDfaqDvZ/LfC8wV5MzVDIC4d9fo0oV40N9ZdS6khdOLB8c8pvvq5mh63m/31PMrVTaaYXAk/tNTRLOhHo9R7/n1E1jqdm0xyvAjZ1JdM/N7YZ66yypJH31OnnMutULTNPDVXBAdJ/DBsqZ/tnkros8D6bpI1oniPgbkpdoFG7qrYfTPNpVC32d9LtxADD1PraDb6PF6MUcf4QZdhRF/7SVYPSBLYD1nffmSfb90h6L3ANUGVjE3AMo60N9E8NnzDkuUBXddT+e6wVkg6yvf8owzRqfJ/fzNx1f2rRP2vZMwbWdVp7UtKTKHVLd6FMsvJZynFCzUZ+9lzSUsArKc/TtpQJM74x6hy9OAx/Dsbs9T8irxyjof544Dq6+Y5ZfrChCaDpmdLVbIIRC9qBzF0XbQPKDLrLAx+jlJ1Z6NLYNEdt0z8DnCppe9sP9C9shvedCqzdSaqS4aXAnkCvPtPVwOG2z+4qE1R3gLTkv7huoWrq2ezc/M2izF4yyR3UJYv58vdhjZcxL5cpqJG0GPAW4MOUXquvGhzWOkIPTLxJJ9zf0NS38CFJNXd9HvWPp92Ar6tMgtE7O78WcE+zrguHSprVPxSl6Wn1TcrnehdqfJ8/4MpmyGuM9/+rk/97kt5FOTZYEziBUn/klC6G2P8LRvaZIGkbyvP0ckptuWOAzWy/fVQZhjgIuFjSmUBvlrcnU4bRfbqzVHU21J8h6f8ova16z9ValN5WnQzta8wzmVC/Lnqwk0xt1ZhpxYFj3uttXwQg6bOjCpHGpjnWHXiTrK0Op39uXET5QHy151S2fwnwPaCzLzRJr6JU1/9U8yfKGeYjVarwn95BphoPkK6X9MrB50PSK4Cbuggk6TeUMerHATvYvl7SzR03NH25zUaSDrPdycwlE7ilpv1oRAXLG7NfO0krUBouuprVcDZJS1JqEO0D/ArY3vaN3abifZLG7InTVY0I4CpJbx2s5yFpV0rPplqN9Md48/o8T9JqlLojAmbY/uMocwzYFjhd0kdsn6IyxfIJwExKb4su1Pg+/3UH+2zjsZJeR+l5+VhJr2+Wi/I93YWvUmZA3sX2VICuG50lvd52mxnnRvk6/ww4D3ih7ZsBJLU6lllYbH+n+d3ycuZ8Rp0N7OeBCX1GbDcqa6i3vVdzLL49fZ/nwFe7+A3Tp8Ye7MnUTo2ZHtt/xfbr+64+cVQhUrOpoQpnDgOQtD/lgPIVlC+QQ4HX9w4COsp0NrC37WkDy58FHGZ73OdyIWV6gHKA9F99B0g3dVnvR9L6lKGGv6E0HEIZ3vN8YDvb13WQ6RRgU0rPuB/Y/k3Xz1NbHRX/XBV4H2WIg4GrgK+54xlLxjPq50nSHpSJFJanHLD9Hfi87a+NKsOQTDMovfa+BEwfXN/yh8uCzvTLcVZ3VoNP0hqUqcNnUj6nTDnjvCzwOtu3jnPzznRVH0HSkoPD2yU9wfafR52l2feTKT98v0A5K38p5fu5q54x1b3PJX3J9geay3vb7m8kP9r2bqPO1Oz7qPHWd9FLRtITgDdSTt49kdJ4uZs7mCSnL1ONtVA2pZQg2IFy8vA44BO2u+pRWL3KGuqr1HXdsWGSqZ1KM50GfMP2/w0s3w5476hqy6WxaT5J+pHtN4x4nx8E3k35gH6l7WGFLkeZ5xrbG87vuoWcqboDpCbX0pQhfb2aUVdSGnm66jqMytS4b6A8V+tRWr5fPqSLc1U6aETZAvgBcDTlR3ivB9/bgDfbrvJs+Si/8JrG8C2APW3f1Cx7KqXH04W2/2cUOYbkOprxJ1d4xwjjACDp+bbPH/V+29KcWZVEmVXp5x1HGpekC2xvPsL9vZQyVGZpSt2vyb0eoR02fPUKW69B6fF8FmVSEwBsX9ZBpure5/2vz+BrVWNDBoCkJ3Z9UkPSmsyp6bgccLLtj3WQo8rXqKc5VtiZclx1KeV5mtJBjrWAgymfB2dQJu15sFn3Y9uvHXWmgXzVNNSrTFO/O2U0xBm2f9O37uMdHrucNND7pHPJ1E6lmdYD/o/S6aF/9vgXMMJOD2lsmk8j/iF3GnOmgN6CMpvK7DMBHQ3tQ9JFtp8zv+tGpZYDpEVB03NnR8pztVbXjXPj6aCx6QJKy/8lA8s3ocxW8rxRZZkfo3yeVGa/2Xiw8VRl6tdp7mj2mxrV+oNJ0nOBJ9g+Y2D5q4HbeuP7R5xpCUpv3v6agD91h1PBS/od5QTGlZJ2oNQDfItLQdlOzmhKOm+c1bb9opGFadT4Pu9/fQZfq5ry9p0I2gV4uu01Oo40W9NTe2d3UJpAlc4mOEilRuA2lB72/9nB/s+iFCi/AHgn5Uflq23/pcteF5U21H+L8vvgt5S6jufY/mCXmZp9v5hxhojbHnNG4oUlmdqpMRPM7vTwZuaePX6knR5Ss2n+jbJ17pAxLndtsL5Vj4CupjqffcbE9gzK83WIpA0oFfe7yPR3hr9fegdIK4440jxs3wEcBhwmae1u00xo1AWBVxxsaAKwfWlTeyCAYV9YtmdKeriLPD2SnkkpDN4/BPIQ25d3Famj/U7kYIbXzbgamAKMdNiTpNUpBXdvp/wwEWXGvC9Ieqnt20aZp89Stq8EsH2ipKuBkyTtS0fFnG1vOda65sx9F2p8ny+mMsvwYn2Xezm7ep6A2Q3zr6E0MD0beAzwWqCrHybjnZmfKunptq8eWaCi1tkE52L7YeBnkr7ZUYRVbPdmwnu/St29cyW9ho4+oxr/S+k932uoP0vSW2xfQHefF5v1GiklHQ58TdJJlBOvXX6GfWjIMgMbU3phdfF5lUzt1JgJ2/cDR463jaTzbT9/YWVIY1PF3LJOVAdD+7YfZ11XjWJDZ+4DlgFe0kEebFfZICHp+ZRu1ufavqMZirEvsCWlaGM1JD3Fc2YRGnXxTUla2QOFNSU9jvKjpVa3jHBfMyRtNTjkqhmSdfsIc8xF0vaUz6LPUmrZiHKW9yRJH7J9Sgex1hmjkR7orqcq8HgPmSDA9g2SHt9Bns8AX7f9pf6FkvaivJ5v6yATwIOSVuvVGWl+OG1Fqcu3bkeZ5iHpRZSGi9cCq3UQocb3+UrMGQoNc4YTQIc/wiV9H3gRcCZl0pVfADe421l9x2vUWQJ4uqTf2N5rVIGodzbB2iwpaRnPmVn7e5L+SKnptnyHuaprqAeW6l1oesxOlvQJyv/BFTrKhO25/v9JeiGwP+V4as9kSqaFZJmFeedpbJp/NZ61G2lvokobwcaaue8YOpy5byySptt+cgf7PZjSS+BS4KOSfgLsQfmBN/I6Nn25JmwAs330iGMdCpwp6UPMPdb58826kWqGO/2h92NX0lspQy5+D3zS9l9hntkmFra9gFMk/Yq5i0tvwfiN0gvbp4BtBhpRpkn6BXBK8zdqNc5UAqUQ+Fi6+IGyuYcUbLb9lWbYZlf2pdQD7B/KPqPpOt/pgaSk51AamN4ArEL5f/nxjuJU9z63vXbXGcbwTOBvlF6E19h+SB3P/OYJipI3Q8VG3Tu0yvqIFfoW8Dxg9jG67f8n6Y2U3kVdqbGhfqqkbW3/tLfA9qck3QZ8vaNMszXPz39Tjqk+49HNMDymZGqnxkwtLNTvndRsGiBpGUrRZAM3DqlF8p+2z+wk3BhqqjnQb9RjxFXhzH1jkfSHLuojSboKeLbtfzZDCW4DnmX7+lFn6cvU3wC2HuUApNcAdsQoxxUPybYd8BHmHut8sO3TOshyMbC17b82vReOA94PbEKp77HDqDM1uZah/NCdXVwa+H7Hr9tVtjea33ULOVOtn9PfAP4CfNx9BwSSDgSeZHvyiPOM+b3RZd2RtkZ5kqV5jXYE/gQcS6nX8lvb64xi/2NkqvV9PlgH7CrgZ13WAQOQtCHl83NH4A5Kvv9wRzN1qcXMfZKeZHtkPVdV6sdd1uvd1PRA6Z1o2dv2zaPK0pfpMMYuk/C2GsokjEXSfrY/O8L9bQ3c6XlnsF6JMrnIQaPKMr8kbTPKxgJJr6L0hrkb+B9XMBFNMrVTY6a2Fvb3dhqbGs2BSK93x+8pw2TWBI4C9vfADAo1qfjgroup6quauW8sHfZsmquAu6RLbW8y6hwDmaprAKuRpGm2N24uf5Vy8PbJ5nonr6OkDW1f01xeuhkb3lu3eVOTYeQkTaMURp0+sPwpwGnuoKCsWs5U0sHB7fKUM+KbURp8oTRg/g7Y3fa9o8rS5LmJ4bUPBPyv7WqGrA0zygYxSX+hNO5+ETjd9gOSbrLdSe3EJlN173MNrwO2KWWYYZd1wOYiaRKl4WkHytTwL+ggQ3Uz90m6jNLj8b7mBNAXKbV1NgXeaPvlHWQadziv7e+MKsv8qvg3w8hn+57IqJ8rlVqXM4BpDGnM7GIYcjItupnaWtjHLRlGN8fBlMKM69j+O4CkFWkKTQN7d5htIjUO7RspzT1z3yqUmUu+KJWnpqMPng+OtYruxoQPFndfu/96Rx+GM/tqDPxN0rU1NDSNc+YSAI+2ZgXA4pKWaM7EbwX09zjp6rP8B5SitgDn910G+NrA9VE6APh/kj7D3MP79gU+2kWg+Rje+HnKFPYjYfsfwM6SnkpfDz7bN40qw4BzGLtuTCdFk+fTKM/grUbpzbszcLjKbFTLSlrMpVjxyFX6Pq+1Dthcml7YUyX9F6WWUxc0xuUuuVceAXg98G2XWTIvkrRHR4GqbUxqoZbXdVBnjeTjGPVz9dIR76+NZGqnxkxtvWVh3nkam+bYDli/fxiB7XskvRe4hg4bmyYa2kdHP55aGOWHdI0z941XIHzUxa57Buvo1FBbo8YGMID+4ZcHUhowunQscI6kPwMzgfMAJK1H6bbbhfF+mHR2QGv7x5JuBv6LMtRQwBXAmwa78ldopM9b09vrrqZx6SaVaar3lvR74HDPO+nCQjVRzZiYo+lxfRpwmqTlKLOaPQ64VdJZtt/aacDxjfJ9XmUdsGY42Hha1cdcwGqcuU+SVgDuo5xo+VrfuoVa2HacQEcxdsOybb9zlHnmU61DWmrMNdJMHqMmrqS1gJ3o4DMhmdqpMZOkd9g+srm8JvAdSu3Zq4DdbF8HYPuKhZkjjU1zuL+hqW9hZwUbxxra13zJzR7a545qSNXUCDbWf/JBo+yma/vAUexnPr192EF3x2psAJvrzKWkD3R9JtP2QZJ+DjwJ+P/tnXncbnO5/98fMmUWGmwqycmQMSU6QuEQSWUeMpymo4SUoVknDSQlOXEiISFjg4azUYdQCpEhyhCRIcqJSnx+f1zr3s967n3f9352P3t9v89+rvfr9bystb77ea2P5173Wut7fa/rc/2gdb+ahwioFJE1ZHvQfqc0QaUZk+1m0vRIOUUTpuu/21nAdsCfJK0FnE1ke6xJTOr+vUsxCuP7Ydj2qZ2J+ecoEmRtMj++AXyjudZnZBhJ2s32aSV0jaDL6/zxEWOPjRib0/xlwLGFgX2AZxGNDrqmxs59xxAlvn8GbmoywJC0NuW6nn57wLEVgP0pF5SbKLVmNiUtJC0NbE9kri4HnFdWUWqaKBVpehdwUrN9NPG+txkx7zqeCN7PcTLYNMaNkvaw/bX2QUm7EZlNJaiytK/2INgs6CxNV9IPbG/ebHdqyDiCzr1qJsA1tv88aEBS575WQ6hixW2IB9L9xEPtFwPG5jTTJH2BeHntbdPsL1dAT5w8MgbOsn2zpAWAiwgfon9I2sX2/5TSViELtTxrdgNOsv1ZRdepa0f83pxivQHHRJTWLUd0GK0KSRu2zECLZxrbfhj4SuvQgUBtwaYuWVzSoPI+AcWMnG3PWFiRtCjxTrcXETQssujiCjv32T5J0veBZQk/lB73UajbsO1zettNCfJhROnjpxj/3auRs0sLGEIVQTBJr7B9VbN7R8fnXpRY/NkFWJkIUqxoe1qXOlLT3KGpj5Vt79BsnzeBzNqnjQw2jbEvcK6kvRnv8bEQcfGUoNbSviqDYBOky6DBMq3t7YlsgdI8s1kNHPhQt10iYHEpjbePpOm225H28ynn+1MVTSruB4kJ9/mEX9LHiVrrMwrJel9ru7/rY8kukDsSfxsIP5Z5iO/jykQacc3Bpjs6Pl/7XrApcCiA7ad6nnddYntGlp5CwK5EAOdKoFjXIknzAjsQ37/v2b6hMSs+jHhPWBuqXWSpYhLXxx0dnqtaHzBJSxHBwF2Je9M6TbCwpKaqOve1MvPukbQhcDmA7XslvQv4YiFdqxDdp9Ym3ovfUepv1OhZDXiR7Qub/c8RmWoQJdG/ALB9RCGJs6J4oL7hbCJLbXY86J4u7gd+SrzrXWbbkkrNQVPT5NfUXhBeRtJ8Hmt4Nl9XIjLY1GD7HuAVkjZlrIX3Rbanl5VVV2lfQ61BsNqoIhumj+WIFdNBkw8Tk82uaWtZasRYp0h6lDHT+YUk9bKvRHw3u14R/xoxaTqXMAW+kuhEtYYLtckuXVo4gr+37k9bAGfYfhK4qZlIdY6kM4DDbd80YOxU27tDkZfbiyWdRZSjLAlc3Gh6LtCpX1OP5jPak/Dcugp4s+1i3joNXwGWJ14mv9B4Wr0SOMT2+UWVzZrOnkVDMojGhNjnNv/t7Dqv1QdM0pFEueMJwEvdcefHQWhw576tiYYrpTr3tTPzjmX8AtTeFAg2STobeBmxwHoA8CSwWKspzR+71kRkVbUXNbcAPgQ8E/gw8IYCmpB0PTOX3D9IXGdHeaxBTC2B+pLB+cMIf5/jga9LOrOglh6paWLUqKl/QXgR4GFJzwEuHPwrTz8aEMuYkjSrS0Mp8eCQdD5w7pDSvh1KGSdL+rXtlWd3rAbUbVvqR4hVUwH/St8KaonPr8v//4miClst14ik62yv2dr/A7CC7b8V1LQ0kRX6MFEXfiRxrf8GeK/t2wrpupLwGvoDcAuwru3bm7Gbbb9k1O/PIU0PEP4wn7F9XN9Yseu8yR7akfACO6tZeOn5oSxr+/sd69mXWLCYDnzK9p1dnn8Ykm4gArtPNX6FDwIrlQr0zg4dP/dObu1uQxiY97DtvbvQ0UYzd4btTXYv690XSqBolf034B+Mn4yXWtBA0leBaz24c9+6tjvv3Ne+fvuv5VLvNJLuYOwz6y1K9bDtzjurSbra9sta+1faXr/Zvsz2q7rW1Jz7+QMOL0VkHS9s+60dSxqJpLtsF7VwaEozdyaCFy8mGtSc58bQOTWlpslEBpsaFJ2Leg+M3h+l9/Ao9eBYjshieJwBpX29SUEBXVUGwRoNI03LJW3e1eqJpFePGvcETc2fTioNNt1NGNeJWCE8ujcE7G97+VLaABTduVYjrqlf2b60kI7rgI0Zuy9d0t4vFBD/AbFasihhNHgyMbn8V2BX2xt3ranR9QqiJGUZ4BjbH2+ObwXsbnvnApquIUpTTgGeIDqBPNiMVR9UlXSF7Vd2cJ6niHT0Bxg8AS/iOzeZA+GSjrf9zgLnreJ5I2lQJ9GliMyPj9r+RseSqmVUMF7SLbb/pYCmXJCaAKM+n1oXggsGC7/F4IxPAZvaXrhjSUOR9FIieLGj7ReV1gOpaaKU1tRkie9DZDUuR1zzvwcuAL7SKqmbszoy2FQ/faV9vypc2ldlEExDTMuJye8HuvpCDdC1NvAi4nObqXymgJ4JBdvUYde+IROBGbhQV7/Wdf5XxrrzrEOh67xZSX2KISWQhQLi19les8mOubO9GijpWttrda2pVvomTAcC+wHvtH1RLZPyUXSlccgq+AxKZTpJegzoZeqJuK/fRsEgmKTP2n5vs/0u219sjX3Fhduv1x4IaDLa/6dgVmGNGfVDv+cFAwO97177e0ezv2KJwICkkdeMC/hfSrqEKOu9qu/4+kSW6MZda5oV/RnbHZ63usXg2aGrxZ/ZITVNjC41KewbHiEWOe9uDk8jlz/gGAAAIABJREFUsgqXsr1jFzrSs6mh0gdH70XkWlpdgXrHS7yINOet0d+qOtNyhdP/bkSg4jOSPmn7xK51tJmNrK7OAhe9YJKkpXuZHpXwReB4219tH1S0Zv8S0Tq0M1xhlyDCpwLbltT/2T1VQM8MFIbOS7ayh+YnfIAOsL1KSW22j5Y0HTitybaav6SeCdLJylQtZXMDKHrNDGGT1na/d03VwcsasP3HJlBeigeJCUDPVHpcKRYdPodb1Ni5r8bvXrtb4LrEe16PUv6XBwNnNqWQvTnLusTEspNJ5SCGzK+WJN6PSxn072V7z0LnfjpYsLSAAaSmidGlpnUGZDveDVwpqbOyvgw2jXE1Ybb7QLPf/9Av8eDoZQ0NLO2jzItIrUGwGk3LdwTWsv2YpGcB3wOKBptmgy4NZbcmMtCeaEpodrD9k67OP4JVbc/UScL21yR9oGsxGuvIg8a3Wp8pq6FDVpR0Ic0Kc7NNs//CAnri5NJOwJeBv0i6FfgocCrwM6LrUxFZ7R3b10laj5i01DiZKoLGjPlnGqKQj03DQrZvBpC0gFteaU3mQIkgmYZsF6OvPKV9TwDKeBUOo1kwK9n57ViiFPpyoqPoZe13mELU2LlvO+JvdI0LdntrY3tGoLfJ+Npk1L/vAts/be5F+xILKxDzmvVt/6GYsPGBOYj7w0NEJ+ITOlcTFCnHfhopfZ8YRGqaGF1qeljS9sA5tp8CkDQP0SG9s2dfBpvGeC/wJqI07BuEmVfRziC2i03WZkGNQTAPeklz2c59f7X9WKPjoeYLnszMEcC/2r658dr5DDAyxbkj5h10sPkcB47NYarryMP47K6j+sb697vkg4SZ7W3NquoVwE62zyuoad3+Aw5PuX0l/WcBPbNLJ8EM24sOFSAt0IWGIXydse/cFYz//n2pb78r5pG0KFE23tvufU4l7lEw/nvfP8ksgmbuhgXh2fR7IuujCLbf02RWbQzsDhzb+OAd70LG5a6zc9804PPASyT9EvgJEXy6olSGfx/VTGiboNKHS+toU0MgbgDPbGwuBj7XSlSzJMkcYCfg08CXJPWCS0sQnq87dSUig00Ntj8HfE7SCwkzr+mK1sZH2L529G/PGWos7WvOW2MQ7EZJe3iwafnNhTS9qC/To71f1QrvALpcJf9HL2PA9lXNhKkGvi3pRMKk/C8AkhYGPgd8t4CeUVkMRbIahvkaSFqeeJCV8j34u5tOeLZ/Ien2woEmgN1GVOyYyLyqmd27OImkD7kxdO87vhjRqnfjLnQMoLrvH/AsInOhd/4bmXkhqFMq9TrZum/fwEO9+3pJmkWySxQNBHYCPg7cSqEsaFXYuc/2QTCjFPplwAbEAsuJkh6xvWoJXbUxIKja++wuAY5yX8OcDnUdY3v/Zvs9tj/fGvtqoXK25Yhg+EAPTMpUs8wOVWSy9pGaJkZnmmzfQVNC21TYqGUtMV9XOjLY1Ift2yVdQJgA7w6sTKtUrGNqLO2rNQi2L3CupL0ZYFpeQA/M7OlTMtNjHJpF1z6i9r8rlu17wR23b/voAb/TBe8jsq7ubALPBp5PGO0dVkBP/0vksLEiSFqaSM3dmXiRKxnc6b+mFqngmlpvwDERJSvLUSjYpLFOrG1NM1p6u+mgYvuGjiT9q6RP2J5RqirpOcD3CcP+UtT4/Vvf9t2z/mfdMSSLaAYljNSBF9m+GEDSC9tBE0lvtF3kumoWL7YlJgPLENf3OrZ/V0JPw6DFnhcAH5BUunPfQoRv1OLNz++B60sIkXQsY9f5NElfaI/b3q97VTMFVSEy+N5CZEO/tVs5M9iotf0WIkutR6lyttts1x5QGkUniz+zSWqaGEU0NRU2asrHdyHePZ/dxbmzG12DpBWJVaVtgd8RpXTfLrUS0Gg6gCjt+xOVlPYBvdbUQ4NgJW/gqqxz30RQt53fquvap3q70a1HGOk9QgTmNiFe5m4m2mV3mr6vOjvyLEoEc3chAvPnES1ep3WtpU9XlddUj6Z0ZlciqHsj8Anbvyyk5Vl9h+YBdgAOAn7R1b2ppWdB4JvAr20fKOnFwEXAkba/3KWWPl33E89hEcGB3qRbhM9cJy9tfZqq6/amsW6CAr4DbNUeL2EAr/GdIMf9zUr+DSX9hchiOoO4n497IS8VBBuECnbuk3QC8V73KHAVcCVwpe1ifluSRpZf2j6lKy0TQQU7nrbP3a+j1Pev5N9jFJL2tn1Ssz2NWNxcl3hP2NN2Z6bOqWnya2ppewXxnr4dEYDeF7iwq3toBpsamgDKL4ELgD8z80O/VHYFrdK+bYkAQbHSvkZPdUEwVdhCeKJ0+dCT9Dli5fIAz9y173HbJYzUe9qq6kYn6RfAax0dizYirvV3A2sBq9h+c8d6vkMECu9hQOZAoUnc48BPCY+ky2xb0m9tF2leUDtNsHdPwiPwKuCTtm8pKqqh8SLbncjou5Z4ztxYSMt8xPftCeCVRClr0TLIGieXtU6YetQSDJvFZLfkJPyrDM8Cs+29O5QzS0r9rSR9D1gauIHwa7oCuMGVTGAkLUJ8XsXLMoch6Trba5Y6N1H+PA9wcbPdW6S+pIQuSZvZ/mHX550VfYHxs4DpREnttsC7bL8mNaWm2dD0CWLx8C5iUeM84Oqu7XAy2NQg6aOMTv0uvRK+GpF5tTvwfttnldQDdQXBWqUgA03La578dvlCrujMtXL/S5qiTfzNtl/chY6+c8/oRgdU042u/XIm6TjgAdsfbfavtb1Wx3reQ9wDngucCZxRMujcaDqg0bQwYaB8JvDD0t83SWfZ3qHZ/rTtg1tjP7C9eQFN+xJdMacDnyoRHBxEE9jZGzgAuIwIgP2moJ5eueN8wPuB/6XVBavkwk9tNNlWpw0bt93vv9MpFQWbqsxsmkw0WeMfLJW53mSDrkb4NW0ArA78kTAJH5nJOgc1vRM4lHj+Afwf8GnbXyqkZ9B1vCSwG/B/tt/dsSQAJN1BvNsN9Ecq8b4g6RJGB3o7DwzATPeqce+ZBYO9qWnyanoAuAU4hqZaq8SCcHo2NfQmkTUxpLTvEy5Y2tfGFflbdR2lncR40Gqgy3btq7YbnaRnOFotvwZ4W2us83unw1Tz802Zyk7AyU3J0RnAN0qk6HqsscKKROD5fOB5kg4mMh5LpQ23g6abMd6DbJmOtfQ4FrgfeBXwLY2ZhQt4qtSqM3A78A/iZeQuYE1JM7QUKOVpe8Z8YcCxIkj6FkPMd20PDfjMYR4nStqroW/Cu5D6Oj65jKfjiormHGpt0+wXe3dQhWbcqrdzn4EbJD1CZNX/iShrfznQebBJ0geJoNfGtn/bHFuReEYvZbtEh9H+7o8GHgIuBU7oXE1PhP2CUucewUEDjq1PLHDc37GWNj3/LwHLSJrPY/YWnRk6p6a5RtNzgM2J9/NjmiDrQq25TSdkZlNDpSvhVZb2DQmClfa3qtG0fEJ0XEZ3PnCuB3ft28EFOuTVutIs6QOE38iDwAqEcaslrQScYnvDogKBZiJ3ErCG7c5bnUvawvb3+469lHiw7ejGXLqAruoyGTTmZTPuMOGZdpjtrQaMz3EmWylPD0mH2v5kh+cbFABfisgauNX2IV1p6VHLvbJN8zI7DJfIjBny2c3AhTroabC33FLAFoQvYOdm3APuU8U790najwjsbEhkQF9OlNJdDlxv+6kCmm4B1ux/75W0EHCd7ZW71lQzihLyLYGXNIduBL7f5YR3GM394UPAAkSFxkUFtfQHdC+0/bCiScZ+tjtvTpOaJq+mNs3i9NbE+/mrgOm2d+nk3BlsCjS+pr9/clIq/e2jVFjaV2MQTHWblo/s/CZpc9s/6EjLckTHm8cZ0LXP9j1d6OjTdDfQvmYObO+XLJuRtD5RtvaD3su2pJWBRUoFMJuyp38jAr6vAX5ElNSdX0DLk0SJ0279106p+2Zz7puJB+o8RJnRLsQ9QcBptlcpoauHpLUaTTsQmUXn2P5iSU2TjVoCLYoS5J+747La5tw/sz2oyyGSnmf7911rmiiqwDNF0vLATraPLKmjH5U1497UlXXuk3Q04dV0ue17R/y7Jd2V4a10i+1/GTJ2s+2XDBqbw5qOsb1/s/2eJhu6N/ZV23t2rak59/OAS4B7gWuI5/DaRNbFJqXuU5K2IIJMfyWqRkYFypNkrkHR3OeN7shrMsvoxhgVdSsSkauxtK/hcMb+JouUFNLivYRp+ePUY1o+sPObpHGd37oKNDXnugd4hcZ37bvIZbv2ncj4Mpn+/WLYvnLAsSKlYZI2IwIoryNMub8BvK3kijMRdP46cKWkA22f3RoruZJxH2MBy/Z2b79zmiDlTsRn+BDhbyXbm5TQ09JV5QRlAgzy/+icpgS51LkHBpoariQyMmvl00DnwSZJSwPbE9/D5QjD1KpwNKUodX0fBfSCXOe0tiEaQXQebPLEvcemM17vnORuSa/pf3dq3q2GBsTmMBu1tt8CfL61v0bHWtocARxv+5j2wSZj7ZMUKM+U9DOipP5IIktuXIVEwcXEZwD7AG8g7k8mSlgvAL7iMh2jU9Mk1dToejXwsO1fStqBuE/8BujMWy6DTWM8sylJmYeoZ+zddERkfXROjaV9UGcQzGPeMT3T8umSSnfuO5IImrzQM3d+O4owC+4UjXXtu5aWv1bvuAt07SuVoTcJOYwI7BxU4nMagm2fKOlHwOmStgL2tf0YBYMBtjcude4R3EyYXW9j+zYAhcF6aWqdoMyKToOZGtzxdElgDyrzTWqoIhg3gs70Nau42xHZhCsTAaYVbU/rSsPs0AQsOsnQGXT6IduD9mujS33vBi6UdBnjs8Q3JCwmSjDqsyvJ+oMWLWx/oSlHLMFfCEP3Nzc/bQyUqoY4FXgE+Bhwd3NsGvFsPg3YMTWlpomiaG60BrCApF8TCSLfI8qSTwJ27UJHBpvGuJcw1xOx8n1Ua6zISjh1mtxWGwSDukzLidrYcZ3fbP9Z0cHkZgoEmxh7KRrYtQ8o0kVM0pZEV5dVGx03El1dvltCT42UzoAZhe1fS3ol8J/ANZL2oGBmk6QXE8HelYDriQBd5yWifbyJyGy6RNHK+xvUMSGodYIyK7rW2r53wnjz3Xd2rGUi1O6R0KW++4ls0A8S5tuWtF2H5x+IRptx79G9ImBmE/xhYzXSpb7Ngb2AVYj3TBEl5W/vt0rokHkkLUksmve2e/erzj0dWzw+YuyxzlS0qHRBCsIbtL88824ie7xUw5XUNDFq1LSJ7VUbO5d7gGWbbOwvE5UJnZDBpjEOBn7XqwdvjL7eBNwBfLSQpupK+xqqC4Kpzs59bgeaWgeLdX5zhV37JL0VeDvRBeTq5vDLgE9Jmma7WBeVZJa0u0z9AzikCaScQcGAOLFi8zXi5f/1RCe4NxbUg+3zgPMkLUykWR8APFvS8UTZb2fltH1UNUGR9K4J+ledPet/8vQx6t7Z+Kh1jqRjGfwuIGCJjuXUzGHE+8HxwNclnVlYT4+t+/aLm3FTaee+CplGeO6tAlxHeErdBzyT8AAqweJEULx3/26XgpWcMywuadDzV8BiXYuB8B8bNV7Cm6zhYUnbEz6OTwFImoco/S2V7ZiaJq+mvwLY/qukO20/2exbUmdlfWkQ3iDpF8Brm1r5jYhgxbuBtYBVbPenWXahqd/ktpfuVtTkVnV2eqrRtLzGzm/Vde2TdCPwqv7SMEnPIlahi5o5J8OR9IZBxuRNwOLttj9VQBaSrm0bNtdiJt1PU5q1PdG5r0javqQ7gKcYnClk251mO9b6WfXTeOpsQpRmbWP72QU0jPQ66cr8859B0rm2Ow0AN4tSOxOBpxcDHyECvaV8+J4JPNHz8pD0L0QH1Dua4HQJTdV17tME23SrQFMKSfMTi2MbAK9sfh6xvWqXOmqm8Skdiu29utLSYxaa7EJdWCW9gPCza5fSLkEYrB/ilmF/akpNE9DUa8AkYoGzNxcWsL/t5TvRkcGmQNJ1ttdsto8DHuh5E/VPXDrUdAkzp+3PGC5VVlNjEEwVdu5TnZ3fquvaJ+mmYdfMqLEkGUbrHtW7vk9nrCNdMfPPZNbUHmyS9AriWtqOKHnal6bFcVFhLZqU+W083rC/q3OfARxu+6YBY6fa3r1rTYOQ9FKajpC2X1RIw4+BfWzfKmklotTvdKKc/Ke2Dy2haxAq2LlvovcESUt17WcoaXEiwLRh898lgOtLBFAaPc8AtgR63fBuBL4/kWBdaSS9pbYAeUlNzYKrbD/Y7M/nQibTqWlyapL0kVHjXc2NM9jUIOkGYC3b/2gmKm+z/ePemO3VC2h6OSNK+7p+qLZ0VRkEqxWN7/z2Kxfs/KYwJH4T8Cfq6dp3FfF9u67v+JrAibZfXkZZMllp7lHDKBJUrZXash0l/YPBPh4KOS5VdvEJomzmLqJM9Dzg6lpKkyXNS/jI7AxsAfxvoYzsB4jP7zO2j+sbqyaQqOhK99CgUvcONVxv+6XN9seBpWzv22TL/Lw3VlDfTJ37bB9UQEfnGUuzQtIJxHvdo8BVRPfHK0sGnSU9j8iiuBe4hrhnrg08h/Bu+X0pbROhpvtDj9Kaasig7Sc1TYwaNCmsSO4eMraN7W91oSM9m8Y4A/iRpAeJTJT/BWhWm/5USNN/Aa9tdGxEtAjtlfadwMwdFLqiOn8rVWharjo7v9XYte+9RFeXkxmfAfYWYLdCmpJJzEQD3pI2s915+/XKuJoR2Y5035Xn+tomlg1vA24hfH++7fBAKL5a17wb7AK8jsiM2RB4oaMjZAnuJjIrTlE0ftizt7pbCknrA58C/gh8nOgatDThUbaH7e8Vkta+fjYlmhpg++9NFnLnqM7OfctIOnDYYAmbBGAFYAHgVsJ4926iE1VJjgCOt31M+6Ck/Yj5w8iy2wqosUFFEU1DMmjfV0JLaprUmqZL2sL2He2DkvYiGmZ0EmzKzKYWzQvJc4EfuDFolLQysEghL5vqSvuac9fobzVj5at/JaLUqpik2xnR+a1rL5R+JK1GeFfsDrzf9lkFtTwH+A9aGWDAcbZLdYJMpgClVy1roLZsxxqzGGCmzKFNiQyC1wLLlypRafwY7iICYOfbflTS7SWzrTTe0/FAYD/gnbYvKvgsvpowCV+cWKjb0vaVkl4CnFHqepN0GmEqfQ9wCE2QUNISwI96738da3qcmTv3/bbk+4qke4lrfODEv4RNAszIXFiN8GvaAFidCGheYXtk+coc0nOz7ZcMGbvFM3fKqooan8dda6oxgzY1TWpNWwGfB7ayfWtz7FAiGLblsKynp5vMbGph+8oBx0q1KwSYV2PGiK8hVlZ7lPzs5m1l5ewInGD7HOAcSaWyY6rr3FdLeUUb1dm1jyao9OGSGpIpSY0rqZ1SYbZj5z5DE8HRxeUi4CKFJ9LWROepeyRNt71LAVnnEJ0NdwSelHQBFbWnt320pOnAac1L7/yFpDzDTbdHSYf33vVs3xzxgmK8FXgP8AJg81Y22qrAUYU01di5717bh5cW0U9TgnmDpEeIYP2fiPvCywnz+a55fMRYqUzH2aHG53HXmmrMoE1Nk1ST7e9K+hvx3vIG4N+JypGNuiz5zWBT3dRY2gd1BsGeKWltwrR8oZYPiQhD7s6pzQul4TbGd+1bAfiP3gt3iXR0SdczvH23ba/RsaRk6lD65aQabN/eBCsWIrIdV6ZV/tshz5X0hWGDtvfrUswQDX8Fvgl8U9JiRLp8CR3vkbQ/4QuxM1GGtZikHYDvFspQGzc5s32dpPWAzxJt4kvQLknrn5AXuwfYfpwo7+s//hPgJ90rGhd87nXuOx94nqSDKde5r7ogRFOatgFRtvoEcDlwBXAScH0hWYtLGtThUUARr7vZ5PLSAgbQtabnMJZBe4zCf3IhTbAjY2pKTf3Yni5pT+BS4rnymq4TDLKMrnJqK+1rzv8Boj3vg0SwYp0m1Xol4BTbGxbQVJ1puers/PZR6uva9/zeJvAd4tpqa7qza03J1KDGtP2uGZLt+O1S2Y6NB+BQXLBbkaI1/dsY6/R0E5HZWzIDegaS5iP8knYiMmWWLqBhHtsD/YYkPbfn9dixpieBvzC2+NTL8hCwoO35utbU6Oq9twzCtl/TpZ5hqHDnPkkrENlNTzT7/0K8J9xp+9yu9TQajiYmbpeXuKYH0fheDsWFOuQBSFodeD+RtWeiS95nbf8yNQ2mlUG7M/AqoFQGbWqapJokPcrY3HgBIjD+JHTbcCWDTck/RW1BMFXYua82L5TJQE7+ky6RdK7tQSvBU4YmKN7Odhz3UlAi23EYJVcIJb0SOBf4MuM7Pb0VeOOgMvySSFqoyZzp+rx7jBi27VM7E1M5ktYdcHh9YgJ8v+31OpY0EBXu3Cfpx8A+tm9tFjV/CpxOBAl+avvQEromK5Le0mXQXtK2RFnoJ4mGFALWBQ4FDrJ9QVdaatY0CoVx/xtLLrb0k5omRo2auiaDTclcgSo0LW9p63mhbAsU7fymCrv2tclgU/J0IOkM4HDbNw0YO9X27gVkVUlt2Y6SLrP9qmZ73GdV8v4g6SLg07Yv7Tv+auAQ21sW0DSsBBmAEiXIko4ddBjYBljOduel9pI2tX1xs/1C27e3xt5YKjumTXMdfYhYfT7C9kWFdAzt3AcU6dwn6XrbL222Pw4sZXtfSfMDP++NJROj6/uopOuAbT1zR6wXABe4jBF+dZpaGl4NPGz7l01J9EbAb4Av2f5bakpNk430bErmFmo0LQeq8kIBeHFrezPg4Nb+Mh1rAWbytlqob7+Ut1UyuXktsIGkz9g+rm9stRKCasVNh9OKWLi13f9ZlfRueVF/oAnA9o8knVBAD0SaPgwpQS6B7Xf3thVmgLsSz5krgU8UknUU0HuunNPahui6VizYJGkLIsj0V6JZxyWltDR8kbHOfRfT17kP6DzYxPiA6qaENxm2/95kZiazR9f30fn6gzoAtu9oSn9LUKOmXufxNYAFJP0aWIT4zm1A+IHtmppS02Qjg03J3EJ1puVDvFBKd36rrmsfYRzbqym+j5m78HTubZVMeu4mvGtOkbQlsKftBwtrqhKNMOOGIobcNd6jAB4dMfaXzlS0aPvZSfpbLf52kp4B7Am8F7gKeLPtW0pKGrI9aL8zJP2MWOQ5kjCXHrf4UmihpcbOfb+UdBTwe2AloKdviVKCJjld30efkLSC7bvaBxu/zlLGyTVqAtjE9qqN5889wLK2n5T0ZaLcPTWlpklHBpuSuYUaO/dV1/mNCrv2EaveQ/22CmlKJje2fR+whaQDgaslvbMpTamus1Fh3gHcAJxFTOZK/32WkLQdcY9aQmPdlURkW5Ri+SGBOQHLdS2mViTtC7wHmA78WyUBMA/ZHrTfJX8B/g94c/PTxpRZaKmxc99biWtqZeLd4IWSfkN4NvUvTiWzput7/EeA/5F0BPBz4jpaDziE8dn1U10TRIYjtv8q6U7bTzb7lvREakpNk5EMNiVzBbY/IWk6Y6blvZeieQjvphIcztjL2SKFNPRzL5FJNCiL6L4iiuC/iLInGr+tTzLmt3UCM7+EJ8mEsX10c284TdJWwPylNVXGc4HtifLjfwBnAufYfriQnh8Br29tb9Ma+3H3cmbwvhFjV3emosWAEuS1aU0kC2XGHAvcT3Tg+VYrG0bAU4W8UFaUdGGjobfd0/TCAnoAsL1xqXOPYE1Jf6ZZgGq2afYXLKTpCWAp4l1gPeK9bhrwVaLkL5k9Lu/yZLbPl3Q7ken4buJauoHobnhdl1pq1tSwbLNAptY2zX4Rq4vUNKk1VUEahCfJFEJ1du27rjcBaWqeH+j5yEi61vZaXWtKJjeSrrG9dt+xBYlA6zttz1NGWd1IWo5oZnAgcLALdA6TtLjtgdmoktaz/bOuNdWKpFH+PrbdeWZMU4Yy02EiOHCY7c59pRrT1n56L7+y/aMu9bSRtCywL+FP1mu/fpzt+0tpqg1JnyMW7A60/WhzbDFisewx2/uX1FcTklYnuhmuytj19FnbVZbxqGCH0WGU1CTpI6PGu27YAalpotSoqRYy2JQkcwhV2PlNFXbtk3QDsJbtf0i6GXib7R/3xmyv3rWmZHIjaR7bA41jJT23F2xNxmiyZHYmGgf8nJig3FhAx9XAZv2ZVZI2A06yvXzXmprzn8zwMiLb3qdLPZMBSWsBuwA7ALcTGXNfLKBjW2Bar1mApJ8SK80mgqpnd62p0bEh8HUiQ+fnRFBuHeAtwK62O81AaTRV17lP0q3Ayu6bsEiaF7jZ9osH/+bUornOjyKyw68mrqd1gUOBg2xfUEhXdR1Ga9TUnHua7buHjG1j+1upKTVNNrKMLknmHNV1fqPOrn01+m0lk5vdRpjZmmjnnQCSPkZ0NbuJCD4fWnil+cvAJZI2s/1Ao3EXopPZ6wrq+vaAYysA+wPzdqwFiEwvIlP1vmZ/DyJT9U7KZaquTDTG2Bl4iCjLlO1NutbS4v2Nph7zAy8jOh+eDBQJNhGZlm+wfU3r2AWSziO+B68ooKnGzn3uDzQ1B5+UlCvmYxxOBOrvaB27TtLFhHdokWAT4zuM9i8elvIIrFETwHRJW/R9hkjai/j+lQhYpKbJq6kKMtiUJHOOGrsqVde1r1K/rWRys96AYyL8f5Yjg01tPgT8Fliz+TmiCdSJmOSt0aUY2ydK+itwsaTNiaD4O4hOL3d0qaVP1zm9bUWn0cOAjYBPAV8pJOvLjPe7+xTl/e5uJhYMtrF9W6PtgAI62sxv+3et/ctsPwQ8JGnhYb/UAYv1BZoAsH2tpEVLCKLOzn03StrD9tfGiZF2I663JJhv0D3S9h2S5iugZ4aEIduD9ruiRk0ABwA/lLSV7VsBJB1KZIgOKgdOTampejLYlCRzjho7v1WZReSmvXLfsV+X0JJMfmzPCFIqIie7EpmFVxIZMskYxQySh2H71CarGwNPAAAQxElEQVTgdA1wF7BhExwoiqRVgA8AaxPt6t9ROAusxkzVNxFZRJdI+h6RLVe6w+GS7R3b72rtljRulaQlB5SMLkW8N5Sgxkn4vsC5kvZmfOewhYDtCmmqkSckrWD7rvbBxket5H2qxg6jNWrC9ncl/Q24SNIbgH8nrvWNSjXtSE2TV1MtpGdTkswhGvNWM/ai3f6yFSsrkLQ+Y1lEf2mOrQws4jLdi5LkaUfSM4A9iW4zVwGftH1LUVEVI+mFjJkU32T7t4V0XM/YffP5wANEi/gimVYtXWcTpVdHAWcBT7bHC5WsVet312QMvYEop9sUOAU4z/YPCmg5HbjU9ol9x98ObGx75641Ned/G/BW4CCg9+xdF/g0cLLt/yqg6RGi66OAf2WsA6SAV9lectjvdqBtU+IeJeBXtqeX0lIjzQT3M8ARjA/KHUJ4k51fSNfJo8Zt79WVlh41amoj6VXA+cBPiA55fy2pB1LTRKlRU2ky2JQkcwhV2PktSaYCkvYF3gNMBz5l+87CkqpF0dXpv4lAyrXERG5NYrKyj+0/j/j1OaFnUDezGZT6LCXdwdiCQXsRASIItmIBTR8AtgIeJPyj1rHtJlP1FNsbdq1pEE2mzvbAji7TIW9Z4uX/b4wP6ixAeCb9oWtNLW1bE55S7W50R5Yyk9Xgzn0zcMHOfcmskbQmscDSC8rdQDR7uK6osGRCSHqUsefLAsATxMJGb7FlsdSUmiYbGWxKkjmEKuz8liRTAUlPAfcTWTHjMgqBp2yvWURYhUj6KhEAP9xNB7+m9PBDwEq29yinbjiSrrD9ytI6SpOZqhOnlRkDkRlzcWE92b0o6YSWV2eJcx84atz20V1p6VGjpiSZW8lgU5LMISRd15vUSjoOeMD2R5v9a22vVVJfksytDMmOETANOMz2Vh1LqhZJt3pI6/BRY6WRdI3ttTs838hW2CUCO03G0DgZwCODOncl9SHpFmBQ96K9gQ/YflEBTdsC02wf1+xfxZiv1fttf7NrTcnEkHSZ7Vc126fa3r019gvbI+9hc1DXU0TW7EVEduE4DzfbH0tNSTL3kgbhSTLnqK7zW5JMBdqlVpLWIrqB7ADcTrTzTsYobd78z9J1QOWzre11iTLDtpbOy8MY82WBsc9xEUnXAf9esntfMiFq7F70fsLgvccChO/PwsDJQAab6qXdWbHfr63kfX4d4pp6HXHPOgOYXjgoXqOmJJkryQlvksw5quz8liRzO00Z0U6EOfFDwJkUNOWvnMslfRj4ePtFW9KHiO59CdC+dpqsquLXku2BnQSbzkr/Bfxbt4qS2aHS7kXz2/5da/+yphPkQ43pe1IvNXYSxPa1RBbRIZI2IJ7Lx0o62PaFqSlJ5m4y2JQkcwjbn5A0nTE/jd7Dfh7CuylJkjnDzURwdxvbtwFIOqCspGp5N/AV4DZJ1xKTkrWBa4jJb6dI2h+4HLhmFh4jJVfqq179tn2upA+W1pHMGtvTJe0JXEp0L3pN4e5F47rN2X5Xa3cZkppZQtJ2xDvmEk3QGeJeuXg5WY0IaRni2fJS4G7CV7EoNWpKkrmN9GxKkiRJ5iqaF+6dgA2A7xHm/P89LBMkAUkvAlZlrK34byQt2XWGhaSjiM/tJcAviQn45cAV7Q6ekla3fUOX2lrnLuZ/MhEkLUJkpKQvYMXU2L1I0unApbZP7Dv+dmBj2zt3rSmZGJJOHjVue6+utLSRtBewI7AgUYZ5lu2iQZ0aNSXJ3EoGm5IkSZK5kqbs4w1EivymwCnAebZ/UFRYRUj6b9szZTBJmgZ8z3a/90cnSJofeBkReHpl8/OI7VUL6TmWsYymnYgA5gxs71dA06COSksCrwe+2B8wSJJZIWlZ4HzCNLlner8uEQx7g+0/lNKWTE4aM+7rgbuaQ+MmnrZfn5qSZO4ly+iSJEmSuZKmFfzpwOlN567tgUOADDaN8QxJpwF72H4KQNIqwHeBkh15FgIWI8o/Fgd+T0wOSnF1a/vnQ/9Vtyzat2/gPmA32yX/Vskkpcnu2EDSpsBqzeHv2L64/e9KZD0moxkSfJ6B7aO70tJHcX+7AdSoKUnmSjKzKUmSJEmmKJIEfJnIiNkJeAVhqP4O298poOcEYpL7KHAVYVJ+ZU0T26ZMzU0wszokLUj4lZ1dWksyd1J7KelUpMnWuRa4iMhMG+drZ7vk4sFMSFoe2Mn2kaW19KhRU5JMduYpLSBJkiRJkjI4eBuROXQpUR62fYlAU8MKRMnOfcA9hGnrI4W0jEPSOyXdBdwJ3CXpTkn/UVoXgKR5JW0p6WuEvh1La0rmakoa9CeDWYfI2n0d8HzC6+5w2x+rJdAkaenmPvpj4nnz7MKSqtSUJHMTmdmUJEmSJFOUlheRgF0In5abeuOFvIhEZDdt0PysDvyRMAn/SNd6Gk0fbLS8y/Zvm2MrAp8HrrL9n4V0bUR8bq8DfgpsCKxo+7ESepKpQWY21Y2kDQivwtcCB9u+sKCWRYHtiPvUysB5wI62p6WmJJn7Sc+mJEmSJJm6XD1kuxiOVbAbJD0C/Kn52Rp4OVAk2ATsDqzZbktv+7eSdgCuAzoPNkm6mzC4PR54n+1HJd2egaYkmbpIWgZYG3gpkRlausva/UQg/INEl0w3HWNTU5JMATLYlCRJkiRTFNunlNbQRtJ+RAbRhkQr+MuBK4CTKGsQTjvQ1Dr2eOOVUoJziG6LOwJPSrqAvq5KSTKHyDK6ypC0F3EvWBD4JrBDY/hemsMIP8Djga9LOrOwHqhTU5LMlWQZXZIkSZJMUSSdzPAAhW3v07Geo4GfAJfbvrfLc49C0nTgCNvT+45vCnzIdpHuRk3J4SZEycxWRAe/fYDv2v6/EpqSuR9JS9n+Y2kdyRhN0Pt6ItsR+u7rtl/fuagWTdnxzkSQ58XAh4Hzbf86NSXJ3EsGm5IkSZJkiiLpTQMOrwDsD8ybHhaBpFWBC4HLgJ8TE7n1iAysbW3/qqA8ACTNB2xJTJw2t710YUnJJEPSo4wFKXrZSyYqIea3nRURlSLp1aPGbf+oKy1tJK0EPNv25a1jawDHAK+2PW9qSpK5lww2JUmSJEnSW+U9DNgI+BzwFdt/L6uqDiTtTwSZViEMZQXcCJw+qLyuNJIWsv14aR3J5KYxUv4P4O3AebbfW1hSMptIWh7YyfaRhc7/beAw27/sO74e8BHbW6emJJl7yRWKJEmSJJnCSFoF+ABhKnsk8A7b/yirqjqmATsQwabriFK/+4BnAkWCTZKuZ7RH0xpdaUnmLiQtQWQ37gF8HVjP9kNlVSUTRdLSwPZEidhyRLe1UrygP6gDYPtnkp5fQhB1akqSuZIMNiVJkiTJFEXS2cDLgKOAA4AngcXCCgjSlyWwfRCApPmJv9cGwN7AiZIesb1qAVm91XcB3yE8m5Lkn6YJUryXMJo+CVjb9p/KqkomQpOFth2wC5F9eR6wYgWl0AuOGFuoMxXjqVFTksyVZLApSZIkSaYu6xHZMQcRk8x2lykDK5YQVTELESbcizc/v6dQlzzbd/a2Jf2tvZ8k/yR3Ag8AJwOPAfv0As8Ato8upCuZNfcDPwU+CFxm25K2K6wJ4GeS3mr7xPZBSfsQpcmpKUnmYtKzKUmSJEmSZASSTgBWAx4FrgKuBK60/XBRYQ2SfmF7ndI6ksmNpI8yojTT9se6U5PMDpIOIJoDLEyUPp4J/NB20QUDSc8msqz+zlgg52XA/MB2tu9LTUky95LBpiRJkiSZokgaGaCw/YuutNSMpO8BSwM3EH5NVwA3uOBLVN9ndzpRPjMjDSU/uySZejSNHnYmAk8vBj4MnG/714V1bQKs3uz+yvbFJfVAnZqSZG4jg01JkiRJMkWRdMmIYdvetDMxlaOoJ1qN8GvagJik/BG4wvZHCujJzy55WpH0hVHjtvfrSksye0haCXi27ctbx9YAjgFebXveYuKSJJmyZLApSZIkSZJkgkiaBmxIBJy2Bp5le4myqoYjaTPbPyytI6kfSW8ZNW77lK60JLOHpG8Dh/V3WZO0HvAR21sP/s0kSZI5RwabkiRJkmSKIun9tj/TbG9v++zW2BG2Dyunrh4k7UcElzYEngAuJ0rpLgeut/1UQXkjST+nJJn7kXSD7dWHjF1v+6Vda0qSJMlgU5IkSZJMUdqBiP6gRAYpxpB0NOHVdLnte0vrmR0kXWN77dI6kvqRdOGocduv70pLMntIus32SrM7liRJMid5RmkBSZIkSZIUQ0O2B+1PWWwfWFrD/we5qphMlFcCvwPOILou5j1g8vAzSW+1fWL7oKR9GOu4liRJ0ikZbEqSJEmSqYuHbA/aT5Jk7uY5wGZEN7NdgO8AZ9j+VVFVyUTYHzhP0q6MBZdeBswPbFdMVZIkU5oso0uSJEmSKYqkJ4G/EBkMCwGP9YaABW3PV0pb8vQg6VzbbyytI5lcSFqACDodCRxu+9jCkpIJIGkTolMmwK9sX1xST5IkU5sMNiVJkiRJMhJJS9p+uLSOZAxJZxBBgJsGjJ1qe/cCspJJThNkeh0RaHoBcCFwku17SupKkiRJJh8ZbEqSJEmSZCRpFl4fkh4gMtE+Y/u4vrH8vJLZRtIpRFbMRcA3bN9QWFKSJEkyiclgU5IkSZIkI8mOZvUh6RpgS+AU4AlgT9sPNmMZbEpmG0lPEWW1MN6zTYBtL9a9qiRJkmSyMk9pAUmSJEmSVE+uTNWHbd9newvgYuBqSVs2Y9lFLJltbM9je9HmZ7HWz6IZaEqSJElml+xGlyRJkiRJMomxfbSk6cBpkrYiOlAlSZIkSZIUIzObkiRJkiSZFZkpUx/jPhPb1wHrEe92qxRRlCRJkiRJ0pCeTUmSJEkyRZG01Khx23/s/bvedlIHkuax/dSQsefavrdrTUmSJEmSJD0y2JQkSZIkUxRJtxN+TAKeC/yesYwZ216xlLZkNJL2GDFs26d2JiZJkiRJkqSPDDYlSZIkSZId5yYZko4ddBjYBljOdvpyJkmSJElSjHwRSZIkSZIEsuPcpML2u3vbkgTsChwMXAl8opSuJEmSJEkSyGBTkiRJkiTJpETSM4A9gfcCVwFvtn1LUVFJkiRJkiRksClJkiRJpiySDmztLtu3j+2jO5aUTBBJ+wLvAaYD/2b7zsKSkiRJkiRJZpCeTUmSJEkyRZH0kVHjtj/WlZZk9pD0FHA/8ADjSyAFPGV7zSLCkiRJkiRJyGBTkiRJkiTJpEPS8wcdBqYBh9neqmNJSZIkSZIkM8gyuiRJkiSZokj6wqhx2/t1pSWZPdplc5LWAnYBdgBuB84ppStJkiRJkgQy2JQkSZIkU5mft7Y/Bowsq0vqQdLKwE7AzsBDwJlExvomRYUlSZIkSZKQZXRJkiRJkgCSrrG9dmkdycRoPJv+F9jH9m3Nsd/aXrGssiRJkiRJEpintIAkSZIkSaogV58mF28C7gMukXSipNcQnk1JkiRJkiTFyWBTkiRJkiTJJMP2ebZ3BF4CXAocADxb0vGSNi8qLkmSJEmSKU+W0SVJkiTJFEXSo4xlND0TeKw3BNj2YkWEJf8UkpYCtgd2tL1paT1JkiRJkkxdMtiUJEmSJEmSJEmSJEmSPG1kGV2SJEmSJEmSJEmSJEnytJHBpiRJkiRJkiRJkiRJkuRpI4NNSZIkSZIkSZIkSZIkydNGBpuSJEmSJEmSJEmSJEmSp40MNiVJkiRJkiRJkiRJkiRPG/8PSvTGu/4uHjcAAAAASUVORK5CYII=\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.subplots(figsize=(20,15))\n", + "sns.heatmap(azdias.iloc[:,30:60].isnull(), cbar=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABJsAAAO+CAYAAACjMRQWAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4wLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvpW3flQAAIABJREFUeJzs3XuUnVVh/vHvAyFcBAoaoBBigcpVilEC0lIogqClKkVEQKuCl6mFKFChQK2llNKC4oWWtmaQq8V4AYLcFBDloj8uBkgkISCIFJJQAnhBLhKGPL8/3j16HE7IYc5MJjn7+aw1a86737332c86Z4XFnr33K9tERERERERERESMhFXGegAREREREREREdE7MtkUEREREREREREjJpNNERERERERERExYjLZFBERERERERERIyaTTRERERERERERMWIy2RQRERERERERESNmpZhskvRWSfdKul/S8WM9noiIiIiIiIiIaE+2x3oML0nSqsCPgb2B+cAPgUNs3z2mA4uIiIiIiIiIiBdZGVY27Qzcb/sB24uBrwL7jfGYIiIiIiIiIiKijZVhsmki8HDL9fxSFhERERERERERK5hxYz2ADqhN2e/s/ZPUB/QBTJs2bcfDp560PMY15gYWL2Dc+N6fd6slJyRrr6olay05IVl7VS1Za8kJydqraslaS05I1l5US06oLmu7+Zm2VoaVTfOBSS3XmwILWyvY7rc9xfaUvr6+5Tq4iIiIiIiIiIj4rZVhZdMPgS0lbQ4sAA4G3jO2Q4qIeHmeXXjTWA8hIiIiIiJiuVjhJ5tsD0iaClwNrAqcY3vuGA8rIuJlWXOT3cZ6CKNuYPGCsR5CRERExAqvlj9C1pIT6sraqRV+sgnA9lXAVWM9joiIiIiIiIhu1PJHyBpyQn1ZO7UynNkUEREREREREREria4mmySdI2mRpDktZa+UdK2k+8rv9Uv570m6XNJsSXMlHdbS5tWSrpE0T9LdkjYr5XtKukPSHEnnS1opVmJFRERERERERNSq25VN5wFvHVJ2PHCd7S2B68o1wBHA3bZfB+wBfFbS+HLvAuAztrcFdgYWSVoFOB842Pb2wP8CH+hyvBERERERERERMYq6Wilk+8bBVUgt9qOZTIJmsuh64DjAwDqSBKwN/AwYkLQdMM72taXPpwAkbQA8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miR6B/D6YZecBGwAfKuZ2+Ie23sD2wBTJT1BMzF2Ys84ERERERERERGxiuk72VROltMSPnvvEtonLmW8543QtucS+v4EeEm/ZxyupqKttWStJScka1fVlLUWNX2nydo9teSEZO2qWrLWkhOStYtqyQl1ZW1LIx8It1rzmLXGrexnWCEWLbyPGrLWkhOStatqyVpLTkjWrqolay05IVm7qpasteSEZO2iWnJCdVlHXIg0kjY1myZI+qGkOZJulXREaZ8k6XpJMyVNlzSltP+tpJvLz09KQfChse6WNHvomp72HSRdVz77jqSNhj3DcyQtkHR022AREREREREREbHitTmNbhHwYdvbADsDh0naFvgMcILtScA/l/cAdwG72d4e+BdgcNh4r7I9yfbknravAh+1/RLgIuCYYdecAlw+ilwREREREREREbES9J1ssj3P9k3l9cPAHGAcYJoi4ABPA+aWPj+x/dvSfj0wvsVzvAi4uryeBrxt6INSYPxO4NYW40RERERERERExErUZmXTH0maCOwI3AAcCZwk6VfAZ4HjRrjk/fzpiiQD35c0Q9JAT/stwN7l9b7AhHK/9YFjgRP6PNdA2co3fXBw+EKqiIiIiIiIiIhYUVpPNknaALgAONL2Q8AhwFG2JwBHAacP6/8qmsmmY3uad7H9UuB1NNvx/rq0v6+8nwFsCCws7ScAp9hesLRnsz1oe7LtyQMDA0vrGhERERERERERy9GYNp0kjaWZaDrX9oWl+T3AEeX1t2jqLg313768f53t3wy12x7aajdf0kXAFOBq27cDrynXvhB4Q7lkJ+Dtkj4DbAw8IelR26c9lbAREREREREREbF8tTmNTjSrlubYPrnno7nAbuX1HsAdpf9zgAuBA2z/omec9SVtOPSaZnLplvJ+8/LnGsA/Al8BsL2r7Ym2JwKfA/41E00REREREREREauuNiubdgEOAGZLmlnajgc+AJwqaQzwKDC0f+2fgWcAX2rmqVhUTp57JnBRaRsDfM32FeWa/SUdVl5fCJz5F6WKiIiIiIiIiIiVou9kk+1rAS3h45eN0P9g4OAR2u8EdljCPU4FTu3zHJ/o96wREREREREREbFyjeo0uoiIiIiIiIiIiKVpU7NpgqQfSpoj6VZJR5T2HSRdJ2m2pO9I2qi0T5E0s/zMkrTPsPHWlPQzSZf2tEnSpyT9otzng6X9zZJuLmNNl/TKZRs/IiIiIiIiIiKWpTY1mxYBH7Z9UynwPUPSNJrT5o62/SNJ7wOOAf6Jpuj3ZNuLJG0BzJL0HduLynhHAHOAjXru8V5gArC17SeGCoYDVwKX2HY54e48YOu/KHFERERERERERCw3fVc22Z5n+6by+mGaiaJxwIuAq0u3acDbSp9HeiaW1gE8NJak8cAbaCaqeh0CfNL2E2WM+eXPBbaHrl+/d6yIiIiIiIiIiFj1tFnZ9EeSJgI7AjfQrGDaG7gY2JdmZdJQv52AM4DnAgf0TD59DvgIsOGwoZ8PvLNsuftf4IO27yhj7QP8G7A5zUTVSM81QDkNb+rUqfxh7jWjibVaqyVrLTkhWbuqpqy1qOk7TdbuqSUnJGtX1ZK1lpyQrF1US06oK2tbrQuES9oAuAA40vZDwPuAwyTNoJk8WjjU1/YNtl8MvBw4TtI6kt4IzLc9Y4Th1wYetT0Z+HeaiaqhsS6yvTXwFuBfRno224O2J9uePDAw0DZSREREREREREQsY3pyl9pSOkljgUuB79k+eYTPXwj8h+0pI3z2Q5p6Tm8DDqCpAbUOTc2mC22/W9LtwF6275Yk4EHbTxthrLuAl9u+fymP6zFrjeubqQsWLbyPGrLWkhOStatqyVpLTkjWrqolay05IVm7qpasteSEZO2iWnJCdVnVtm/fbXRl8ud0YE7vRJOkzW3Pl7QG8I/AV0r7lsCvSoHw59LUdrrb9nHAcaXP7jTFxd9dhvs2sAfNiqbdgF+Ufi8A/qsUCH8psBbwm37PXNMStlqy1pITkrWraspai5q+02TtnlpyQrJ2VS1Za8kJydpFteSEurK21aZm0y40K5JmS5pZ2o4HtpJ0WHl/IXBmef1K4KOSHgeeAA7tsxIJ4ETgXElHAQuAg0v724ADy1h/AN7pNkuxIiIiIiIiIiJipWi1jW41k210HVNLTkjWrqolay05IVm7qpasteSEZO2qWrLWkhOStYtqyQnVZW29ja51gfCIiIiIiIiIiIh+Wk02ldPkbpQ0S9Ktkk4o7VtKukHSHZK+KWmtYde9XZIlTS7vp0iaWX5mSdpnaeOXz86V9HNJt0g6oxQrj4iIiIiIiIiIVVCbmk0AjwF72F5QJnuulXQ58CHgFNvfkPQV4P3AlwEkbQh8ELihZ5xbgMmlePgWwCxJ31nS+LavB84FhgqJf42mntOXl/awNRXnqiVrLTkhWbuqpqy1qOk7TdbuqSUnJGtX1ZK1lpyQrF1US06oK2tbo67ZJGk94FrgEOC7wLPK5NErgE/Yfm3p9zngP4GjaU6emz5snC2B64FxtheNNL7tG4ZdcxSwqe2PLeURU7OpY2rJCcnaVbVkrSUnJGtX1ZK1lpyQrF1VS9ZackKydlEtOaG6rMu+ZpOkNctpdPOBacB/AQ/2TBTdC4wrfXcEJti+dIRxdpJ0KzAb+Puh64ePP8JE01iaU/GuGGHMAUnTJU0fHBxsGykiIiIiIiIiIpax1pNNthfbngSMB6YA24zUTdIawCnAh5cwzg22Xwy8HDhO0jojjS9pu2GXfgm42vafrU+zPWh7su3JAwMDbSNFRERERERERMQyNurT6Gw/CFwF7AxsLGmo7tN4YC6wIbAdcJWku0u/S4aKhPeMMwf4fek70vh7DbVJ+jiwGU2NqIiIiIiIiIiIWEW1PY1uM0kbl9frAnsCc4AfAm8v3d4DXGz7d7Y3tT3R9kSaukx7255eTq8bU8Z5LvAi4O4ljH97eX8w8Fpgf9tPLJPUERERERERERGxXLQ9jW4L4GxJa9JMUJ1n+1JJtwHfkPR/gJ8Bp/cZ55XARyU9DjwBHGr7fknbjzR+ueYrwH8D10kCuND2J0eRMSIiIiIiIiIiVpBRn0a3GvDj99+5sp9hhRi76fOoIWstOSFZu6qWrGM3fV5NJ3FU8Z1CPb+/UE/WWnJCsnZVLVlryQnJ2kW15ITqsrY+ja7tyqbVyrrP3nVlP8IKsWjhfVVkrSUnJGtX1ZJ10cL7VvYjrFA1fKdQ3/caERGxvNXwzxC1/PMv1Je1rb6TTeW0uKuBtUv/821/XNLhwJHA84HNbN9f+u8OXAzcVYa40PYnJU0AzgGeRbOFbtD2qeWapwPfBCYCdwPvsP1bSVsDZwIvBT5m+7Otk0XEKu8Pc//scMmI1UZNv781/QNUDVlryQnJ2lW1ZK0lJ9SXNaIGbVY2PQbsYXuBpLHAtZIuB34MXEpzctxw19h+47C2RcCHbd8kaUNghqRptm8DPgpcaftESR8t748FHgA+CLxlNKFq+j8AtWStJSfUlbUm+V5jdVbT728tWWvJCcnaVbVkrSUnJGsX1ZIT6sra1qhqNklaD7gWOMT2DaXtbmDysJVNR48w2TR8rIuB02xPk/RzYHfb8yRtAVxl+0U9fT8BLGi5ssk11QypIWstOSFZu6qWrLXkhGTtqlqy1pITkrWraslaS05I1i6qJSdUl7V1zaY12nSStKakmcB8YNrQRNNSvELSLEmXS3rxCONNBHYEhsZ5pu15AOXPzVs+/9B4A5KmS5o+ODg4mksjIiIiIiIiImIZajXZZHux7UnAeGCKpO2W0v0m4Lm2dwC+AHy790NJGwAXAEfafuipPfafPd+g7cm2Jw8MDCyLISMiIiIiIiIi4ikY1Wl0th+UdBWwF3DLEvo81PP6MklfkrSp7ftLzacLgHNtX9hz2a8lbdGzjW7+qJNERKzCso87YvVQy39Xa8kJydpVtWStJSfUlTWiBm1Oo9sMeLxMNK0L7Al8ein9nwX82rYlTaFZPfUbSQJOB+bYPnnYZZcA7wFOLH9e/JTSFDX9RVVL1lpyQrJGrC5q+v2tKWtERMTyVsv/rtaSE+rK2lbfAuGStgfOBtakmTg6z/YnJX0Q+AjwLJqVSJfZPljS4cAhNKfP/QH4kO2fSHolcA0wG3iiDH98Wf30DOA84DnAPcC+th8oE1fTgY3KNQuAbftsv0uB8I6pJScka1fVkrWWnJCsXVVL1lpyQrJ2VS1Za8kJydpFteSE6rK2LhDed2WT7ZtpinkPb/888PkR2k8DThuh/VpgxAez/Rvg1SO0/w9NnaiIiIiIiIiIiFgNjKpmU0REREREREQ8dbVsuaolJ9SVta2+p9FJWkfSjZJmSbpV0gml/VxJP5d0i6QzSvHvoWt2lzSz9P9RT/te5ZpfSvpoT/s1pf9MSXMlfbu0S9LnS/+bJb102caPiIiIiIiIiIhlqc3KpseAPWwvKBNK10q6HDgXeHfp8zXgYODLkjYGvgTsZfseSZsDSFoT+CLwN8C9wE8lXWL7Ntu7Dt1M0gU8WSD8dcBW5Wcn4Mvlz4iIiIiIiIjVzrrP3rV/p9XcooX3VZET6svaVt+VTW4sKG/Hlh/bvqx8ZuBGnqyt9C7gQtv3lOvnl/YpwC9t32l7IfAN4M2995K0IbAH8O3S9GbgnHKb64GNJW3ROl1ERERERERERKxQfSeboFmVJGkmzalz02zf0PPZWOAA4IrS9EJgE0lXSZoh6cDSPg74Vc+w95a2XvsAV/acNtfmGiQNSJouafrg4GCbSBERERERERERsRy0KhBuezEwqWyRu0jSdrZvKR9/Cbja9lBFrDHAy2hOl1sXuE7S9Yx8Ep2Hvd8f+GrP+zbXYHsQGJpl8qGHn9AiVURERERERERELGujOo3O9oOSrgL2Am6R9HFgM+DverrdC9xv+/fA7yVdDexQ2if09BsPzB16I+kZNFvt9hk21hKviYiIiIiIiIiIVUub0+g2KyuakLQusCdwu6SDgdcC+9t+oueSi4FdJY2RtB5NQe85wE+BrSRtKWktYD/gkp7r9gUutf1oT9slwIHlVLqdgd/ZnveU00ZERERERERExHLVZmXTFsDZ5TS5NYDzbF8qaRHw3zTb5KApCv5J23MkXQHcDDwBfHVoy52kw4HvAWsCZ9i+tec++wEnDrv3ZcDrgV8CjwAHPcWcERERERERERGxAvSdbLJ9M7DjCO1LvNb2ScBJI7RfRjOBNNI1u4/QZuCwfs8YERERERERERGrhjbb6NaRdKOkWZJulXRCaT+9tN0s6XxJG/Rc8w5Jt5X+X+tp/7SkW8rPO3vaRxxL0nMlXVnar5I0ftnGj4iIiIiIiIiIZanvZBPwGLCH7R2AScBepX7SUbZ3sL09cA9wOICkrYDjgF1svxg4srS/AXhpGWMn4BhJG5V7jDgW8FngnNL+SeDf/uLEERERERERERGx3PSdbHJjQXk7tvzY9kMAago2rQu49PkA8EXbvy3Xzy/t2wI/sr2onFQ3i+ZUO5Yy1rbAleX1D4E3P8WcERERERERERGxArRZ2YSkNSXNBOYD02zfUNrPBP4H2Br4Qun+QuCFkn4s6XpJe5X2WcDrJK0naVPgVcCEnnuMNNYs4G3l9T7AhpKe8dSiRkRERERERETE8tZqssn2YtuTgPHAFEnblfaDgGcDc4ChGkxjgK2A3YH9ga9K2tj292mKg/8E+DpwHbCo5x4jjXU0sJuknwG7Aff1XjNE0oCk6ZKmDw4Otk8fERERERERERHLVKvJpiG2HwSuomx/K22LgW/y5Aqke4GLbT9u+y7g5zSTT9j+lO1Jtv8GEHDHsPH/ZCzbc22/1faOwMdK2+9GeK5B25NtTx4YGBhNpIiIiIiIiIiIWIbanEa3maSNy+t1gT2Bn0t6QWkT8Cbg9nLJt2m2yFG2y70QuLNsxXtGad8e2B74vhojjiVpU0lDz3gccMZfHjkiIiIiIiIiIpaXMS36bAGcLWlNmsmp84DvAteU0+REU1vpkNL/e8BrJN0GLAaOsf0bSeuUawAeAt5te1GZTDp7CWPtDvybJANXA4f9pYEjIiIiIiIiImL56TvZZPtmYMcRPtplCf0NfKj89LY/SnO63PD+TyxlrPOB8/s9Y0RERERERERErBpGVbMpIiIiIiIiIiJiaVpNNklaR9KNkmZJulXSCcM+/4KkBT3vT5E0s/z8QtKDPZ99powxR9LnS50mJL1M0mxJvxzWPknS9WWs6ZKmLJvoERERERERERGxrLVd2fQYsIftHYBJwF6SdgaQNBnYuLez7aPKqXOTgC8AF5a+f0WzZW57YDvg5cBu5bIvAwM0J9dtxZMn3n0GOKGM9c/lfURERERERERErIJaTTa5MbRyaWz5cSkafhLwkaVcvj/w9aGhgHWAtYC1yzi/lrQFsJHt60rNp3OAt/Rcs1F5/TRgbptnjoiIiIiIiIiIFa/NaXQAlImlGcALgC/avkHSEcAltueVXW/Dr3kusCXwAwDb10n6ITCP5uS502zPKauj7u259F5gXHl9JPA9SZ+lmRz7q1FmjIiIiIiIiIiIFaR1gXDbi8tWtvHAFEl/DexLs01uSfYDzre9GEDSC4BtyhjjgD3KOH8+U9WsaAI4BDjK9gTgKOD04R0lDZR6TtMHBwfbRoqIiIiIiIiIiGVs1KfR2X4QuAp4Fc0qp19KuhtYT9Ivh3Xfjye30AHsA1xve0HZlnc5sDPNSqbxPf3G8+R2ufdQaj4B3wL+rEC47UHbk21PHhgYGG2kiIiIiIiIiIhYRtqeRreZpI3L63WBPYEZtp9le6LticAjtl/Qc82LgE2A63qGugfYTdIYSWNpioPPsT0PeFjSzuUUugOBi8s1c3myiPgewB1PMWtERERERERERCxnbWs2bQGcXeo2rQGcZ/vSPtfsD3yjFPwecj7NhNFsmm1yV9j+TvnsEOAsYF2aFU+Xl/YPAKdKGgM8SnNiXURERERERERErIJaTTbZvhnYsU+fDYa9/8QIfRYDf7eE66cD243Qfi3wsjbPGRERERERERERK9eoazZFREREREREREQsSd/JJknrSLpR0ixJt0o6obSfJekuSTPLz6TS/jRJ3+npf1DPWM+R9H1JcyTdJmliab+mZ5y5kr5d2o/pab9F0mJJT18e/0FERERERERERMRfrs02useAPWwvKEW9r5U0VE/pGNvnD+t/GHCb7TdJ2gz4uaRzbS8EzgE+ZXuapA2AJwBs7zp0saQLKMXBbZ8EnFTa3wQcZfuBp5w2IiIiIiIiIiKWq76TTaXA94Lydmz58ZKvwMCG5VS5DYAHgEWStgXG2J5Wxl0w/EJJG9IUED9o+Gc0Bce/3u95Af4w95o23Tqhlqy15IRk7aqastaipu80WbunlpyQrF1VS9ZackKydlEtOaGurG3pTw+LW0Kn5hS6GcALgC/aPlbSWcAraFY+XQl81PZjZcLoEmBrYEPgnba/K+ktwMHAQmBL4D/LNYt77nMgsLfttw+7/3rAvcALWqxs8pi1xvVP3gGLFt5HDVlryQnJ2lW1ZK0lJyRrV9WStZackKxdVUvWWnJCsnZRLTmhuqxq27dVgXDbi21PAsYDUyRtBxxHM6H0cuDpwLGl+2uBmcCzgUnAaZI2ollFtStwdLnmecB7h91qSauX3gT8eEkTTZIGJE2XNH1wcLBNpIiIiIiIiIiIWA5GdRqd7QeBq4C9bM9z4zHgTGBK6XYQcGH57JfAXTSTUvcCP7N9p+1FwLeBlw6No5ak9wAAIABJREFULekZZYzvjnDr/VjKFjrbg7Yn2548MDAwmkgREREREREREbEMtTmNbjNJG5fX6wJ7ArdL2qK0CXgLcEu55B7g1eWzZwIvAu4EfgpsUoqGQ1Ob6baeW+0LXGr70WH3fxqwG6VoeERERERERERErLranEa3BXB2qdu0BnCe7Usl/aBMHIlm29zfl/7/ApwlaXb57Fjb9wNIOhq4skxQzQD+vec++wEnjnD/fYDv2/796ONFRERERERERMSK1KpA+GrGj99/58p+hhVi7KbPo4asteSEZO2qWrKO3fR5NRVHrOI7hXp+f6GerLXkhGTtqlqy1pITkrWLaskJ1WVtXSC8k5NNNf2fnRqy1pIT6sta0V/KVWTNZFM31fa91pC1lpyQrF1VS9ZackKydlEtOaG6rK0nm/puo5O0DnA1sHbpf77tj5etcP+HptbSYuDLtj8vaRPgDOD5wKPA+2zfUsa6G3i49F9ke/Kwex0NnARs1rP1bnfgc8BY4H7bu/V75j/MvaZ/8o6oJWstOaGurBGxeqjp76VastaSE5K1q2rJWktOSNYuqiUn1JW1rb4rm8qk0vq2F0gaC1wLHAFsA7wKeK/tJyRtbnu+pJOABbZPkLQ18EXbQwXD7wYmD00kDbvPBOCrNCfXvcz2/aUw+U9oTr+7Z+gefTJlZVPH1JITkrWraslaS05I1q6qJWstOSFZu6qWrLXkhGTtolpyQnVZl93KJjezUQvK27Hlx8AhwLtsP1H6DU0CbQv8W2m7XdJESc+0/es+tzoF+Ah/eurcu4ALbd8z7B5LVdOsYi1Za8kJydpVNWWtRU3fabJ2Ty05IVm7qpasteSEZO2iWnJCXVnbalWzqZxENwN4Ac1KpWMl/QY4mea0uP8FPmj7Dkn/Cqxj+0OSptCsTNrJ9gxJdwG/pZmsmmp7sIy/N/Bq20f0rn6SNLR97sXAhsCpts/p87hZ2dQxteSEZO2qWrLWkhOStatqyVpLTkjWrqolay05IVm7qJacUF3WZbeyCcD2YmBS2dZ2kaTtaGo4PWp7sqS30tRp2hU4EThV0kxgNvAzYFEZahfbcyVtDkyTdDswHfgY8JolPN/LgFcD6wLXSbre9i96O0kaAAYApk6dWtWsYi1Za8kJydpVNWWtRU3fabJ2Ty05IVm7qpasteSEZO2iWnJCXVnbajXZNMT2g5KuAvYC7gUuKB9dBJxZ+jwEHAR/rPd0V/nB9tzy53xJFwFTaFY6bQnMarozHriprIq6l6Yo+O+B30u6GtgB+JPJprJCanDobS0nBEVERERERERErGraFAjfDHi8TDStC3wf+DTwSuAXts8oJ8adZPvlZfXTI7YXSvoAsKvtAyWtD6xh++HyehrwSdtXDLvf3Ty5jW4b4DTgtcBawI3AfkOn2y1BttF1TC05IVm7qpasteSEZO2qWrLWkhOStatqyVpLTkjWLqolJ1SXdZluo9sCOLvUbVoDOM/2pZKuBc6VdBRNAfGDS/9tgHMkLQZuA95f2p9JswVv6L5fGz7RNJztOZKuAG4GngC+2meiKSJWI1luGquz/P5GRERERIyszWl0NwM7jtD+IPCGEdqvA7Yaof1Omi1w/e43cdj7k4CT+l0XEaufdZ+968p+hBVi0cL7VvYjxHKQ39+IiIiIiJGNqmZTRMSylJUh3VPTd1pT1oiIiIiI0eg72SRpHeBqmtPnxgDn2/64pFfTrDhag2Yb3Xtt/1LS2sA5NKfI/QZ4p+27e8Z7Ds32uk/Y/mxpOwN4IzDf9nY9fT8BfAD439J0vO3L/qLEEbHKyMqQ7qnpO60pa0RERETEaKzRos9jwB62dwAmAXtJ2hn4MvC3ticBXwP+sfR/P/Bb2y8ATqEpJt7rFODyYW1n0ZxwN5JTbE8qP5loioiIiIiIiIhYhfWdbHJjQXk7tvy4/GxU2p8GzC2v3wycXV6fD7xapSq4pLcAdwK3DrvH1cADTz1GRERERERERESsCtqsbELSmpJmAvOBabZvoDl97jJJ9wIHACeW7uOAXwHYXgT8DniGpPWBY4ETRvmMh0u6WdIZkjYZ5bUREREREREREbECtZpssr24bJcbD0yRtB1wFPB62+OBM4GTS3eNNATNJNMpPauk2vgy8Hya7XvzgP87UidJA5KmS5o+ODg4iuEjIiIiIiIiImJZGtVpdLYflHQV8Dpgh7LCCeCbwBXl9b3ABOBeSWNottg9AOwEvF3SZ4CNgSckPWr7tKXc79dDryX9O3DpEvoNAkOzTD708NEunoqIiIiIiIiIiGWh78omSZtJ2ri8XhfYE5gDPE3SC0u3vyltAJcA7ymv3w78oNR92tX2RNsTgc8B/7q0iaZyvy163u4D3NIuVkRERERERERErAxtVjZtAZwtaU2ayanzbF8q6QPABZKeAH4LvK/0Px34f5J+SbOiab9+N5D0dWB3YNNSA+rjtk8HPiNpEs02vLuBvxtNuIiIiIiIiIiIWLH6TjbZvhnYcYT2i4CLRmh/FNi3z5ifGPZ+/yX0O6Df80VERERERERExKqjVYHwiIiIiIiIiIiINtrUbFpH0o2SZkm6VdIJpX0PSTdJukXS2aUYOJK2lnSdpMckHd0zzgRJP5Q0p4xzRM9nkyRdL2lmOVVuyrBneLmkxZLevuyiR0RERERERETEstamZtNjwB62F0gaC1wr6XvA2cCrbf9C0idpioKfTlOn6YPAW4aNswj4sO2bJG0IzJA0zfZtwGeAE2xfLun15f3uAKVW1KeB77UN9Ye517TtutqrJWstOSFZu6qmrLWo6TtN1u6pJScka1fVkrWWnJCsXVRLTqgra1t9VzaVk+QWlLdjy89i4DHbvyjt04C3lf7zbf8UeHzYOPNs31ReP0xzet24oY+BjcrrpwFzey79B+ACYP7ookVERERERERExIom2/07NauLZgAvAL4IfJTmdLi32Z4u6VSa1U8v6bnmE8AC258dYbyJwNXAdrYfkrQNzcol0UyA/ZXt/5Y0DvgasAfNqqlLbZ/f53E9Zq1xfbp0w6KF91FD1lpyQrJ2VS1Za8kJydpVtWStJScka1fVkrWWnJCsXVRLTqguq9r2bbONDtuLgUmSNqY5ge7FwH7AKZLWBr5Ps02uL0kb0KxUOtL2Q6X5EOAo2xdIegfNxNKewOeAY20vlpacSdIAMAAwderUqpaw1ZK1lpyQrF1VU9Za1PSdJmv31JITkrWraslaS05I1i6qJSfUlbWtViub/uQC6ePA73tXLEl6DXCw7Xf0tH2CYSubSs2nS4Hv2T65p/13wMa2rWZW6Xe2N5J0F81qJ4BNgUeAAdvfXsojZmVTx9SSE5K1q2rJWktOSNauqiVrLTkhWbuqlqy15IRk7aJackJ1WVuvbGpzGt1mZUUTktalWXF0u6TNS9vawLHAV/qMI5oVS3N6J5qKucBu5fUewB0Atre0PdH2ROB84NA+E00REREREREREbEStdlGtwVwdqnbtAZwnu1LJZ0k6Y2l7cu2fwAg6VnAdJqC309IOhLYFtgeOACYLWlmGft425cBHwBOlTQGeJSyJS4iIiIiIiIiIlYvfSebbN8M7DhC+zHAMSO0/w8wfoShruXJLXHDr7kWeFmf53hvv2eNiNVL9jbH6iy/vxERERERI2tVIDwiYnlY99m7ruxHWCEWLbxvZT9CLAf5/Y2IiIiIGFnfmk1DJK0p6WeSLi3vt5R0g6Q7JH1T0lql/UOSbpN0s6QrJT23Z4wrJD04NEZP+1mS7pI0s/xMKu1vLuPMlDRd0iuXTeyIiIiIiIiIiFgeWk82AUcAc3refxo4xfZWwG+B95f2nwGTbW9PU9T7Mz3XnERTt2kkx9ieVH6GajpdCexgexLwPuCro3jeiIiIiIiIiIhYwVpNNkkaD7yBMtlTTpbbg2YyCeBs4C0Atn9o+5HSfj099ZtsXwk83PbhbC+w7fJ2fcBL6x8REREREREREStX25VNnwM+AjxR3j8DeND2ovL+XmDcCNe9H7i85T0+VbbMnSJp7aFGSftIuh34Ls3qpoiIiIiIiIiIWEX1nWyS9EZgvu0Zvc0jdP2TVUeS3g1Mptk6189xwNbAy4GnA8f+cVD7Ittb06yc+pclPONAqek0fXBwsMXtIiIiIiIiIiJieWizsmkXYG9JdwPfoNk+9zlgY0lDp9mNB+YOXSBpT+BjwN62H+t3A9vz3HgMOBOYMkKfq4HnS9p0hM8GbU+2PXlgYKBFpIiIiIiIiIiIWB7G9Otg+zialUdI2h042vbfSvoW8HaaCaj3ABeXPjsCU4G9bM9v8xCStvD/Z+/O4+0sCvuPf74QAshetgKBUlkKiBAxBi1lp6iICKICyg69RaEgFqFU+1OwVDYFLWpzBRFkVTQqgiyCEbBETCSEVUBMMQkaAygiS7jk+/vjmQuH60nuudlz5vt+ve4r55lnZp755h596WRmHvuJchbUvsB9pXxT4Fe2LWk7YDjw5GD9PT/99k4e2xVqyVpLTkjWblVT1lrU9DtN1u5TS05I1m5VS9ZackKydqNackJdWTulV8/f7qDyq5NNe0t6Pc1E01/RvIHuYNsvSvoR8EbgidLscdv7lPa302yXW5lm0ugo2zdKuhVYm2Z73iTgGNvPSjoFOBR4CXie5o11dwwyTA8b3u74qO7TN2saNWStJScka7eqJWstOSFZu1UtWWvJCcnarWrJWktOSNZuVEtOqC5ruyOV2hp0ZVMr2+OAceXzY7Tf7rbHXNrvOIfy3eZQfhZw1lDGGBERERERERERi8+QJpsiIhakmpab1pS1FvmdRkRERES01/Fkk6RlgQnAtLKN7jjgo8AmwNq2Z5Z676F5a9xsoA/4aP/WN0mHAZ8sXf6n7UskvQ74VunnZeBa2/9W6n8MOLr083vgSNv/N5+ZI2IJseL6bRc7dp2+WdOqyNo3a9riHsIiVcPvFOr7vUZERETE/OvkbXT9TgAebLn+KbAHMHDy5xZgW9sjgSOBCwEk/RXwKWB7mu13n5K0Rmlzru0tgDcBO0h6Zym/GxhlexvgGuDsIYw3IiIiIiIiIiIWsY4mmySNAN5FmTgCsH237SkD69p+1q+eOr4S0P/57cDNtp+y/TRwM80b656z/ePSdhbwC2BEuf6x7edK+/H95RERERERERERsWTqdGXT+cDJNFvjBiVpP0kPAdfRrG4C2AD4TUu1qaWstd3qwLtpVkcNdBTwww7HGxERERERERERi8Ggk02S9gZm2J7Yaae2x5ZtcfvSnN8E0O4Vef2rnpA0DLgS+GJ5013rGA4GRgHnzGGMPZImSJrQ29vb6TAjIiIiIiIiImIB62Rl0w7APpKmAFcBu0m6rJPObd8GbCJpLZqVTBu23B4BTG+57gUesX1+ax+S9gA+Aexj+8U5PKfX9ijbo3p6ejoZWkRERERERERELASDTjbZPtX2CNsbAwcCt9o+eE71JW0qSeXzdsBw4EngRmBPSWuUg8H3LGVI+k9gNZq327X29SZgDM1E04x5yBcREREREREREYvQUN5G9xqSjpc0lWaF0mRJ/YeH7w/cJ2kS8CXgADeeotlS9/Pyc7rtp8rh458AtgJ+IWmSpKNLX+cAKwPfKuXfn9fxRkRERERERETEwjdsKJVtjwPGlc9fBL7Yps5ZwFlzaP814GsDyqbS/jwnbO8xlPFFRERERERERMTiNc8rmyIiIiIiIiIiIgbqeLJJ0rKS7pb0g3J9uaRfSrpP0tckLVfK3yNpctn2NkHSP7T0cbak+yU9KOmLLWc7HVDa3C/p7Jb6O0n6haQ+Se9bcLEjIiIiIiIiImJhGMrKphOAB1uuLwe2AN4IrAj0n7N0C7Ct7ZHAkcCFAJL+nubNdtsAWwNvAXaWtCbN2Uy7234DsK6k3UtfjwOHA1cMOVlERERERERERCxyHU02lUO830WZOAKwfX05+NvAXTQHhWP72VIGsBLQ/9nACjRvp1seWA74HfB64GHbvy/1fkRzyDi2p9ieDMye54QREREREREREbHIdLqy6XzgZNpM+pTtc4cAN7SU7SfpIeA6mtVN2L4T+DHwRPm50faDwKPAFpI2ljQM2BfYcJ4TRURERERERETEYjPoZJOkvYEZtifOocqXgdts395fYHus7S1oJo4+U/rZFNiSZgXUBsBuknay/TTwYeBq4HZgCtA3lBCSesr5UBN6e3uH0jQiIiIiIiIiIhagTlY27QDsI2kKcBXNJNFlAJI+BawNfKxdQ9u3AZtIWgvYDxhfttk9C/wQeGupd63t7W2/Dfgl8MhQQtjutT3K9qienp6hNI2IiIiIiIiIiAVo0Mkm26faHmF7Y+BA4FbbB0s6Gng7cJDtV7bXSdq05S1z29Gc0fQkzWHfO0saVrbe7Uw5cFzSOuXPNYCP0HI2VERERERERERELD2GzUfb/wH+D7izzC19x/bpNId7HyrpJeB54ADblnQNsBtwL81h4TfYvrb09QVJ25bPp9t+GEDSW4CxwBrAuyWdVt5YFxFd4Pnptw9eKWIJle9vRERERER7Q5pssj0OGFc+t21r+yzgrDblLwP/PIc2B82h/OeUt9xFRPdZcf0dF/cQFom+WdMW9xBiIcj3NyIiIiKivU7fRhcRERERERERETGojiebJC0r6W5JPyjXF0m6R9JkSddIWnlA/fdJsqRR5fpDkia1/MyWNLLcGy6pV9LDkh6StH8pX17S1ZIelfQzSRsvqOAREREREREREbHgDWVl0wmUA72LE21va3sbmsO/j+u/IWkV4HjgZ/1lti+3PdL2SOAQYIrtSeX2J4AZtjcHtgJ+UsqPAp62vSlwHm2250VERERERERExJKjo8kmSSOAd9Hyljjbz5R7AlakOfS732eAs4EX5tDlQcCVLddHAp8t/c62PbOUvwe4pHy+Bti9/013ERERERERERGx5Ol0ZdP5wMnA7NZCSRcDvwW2AP67lL0J2ND2D+bS3wGUySZJq5eyz0j6haRvSVq3lG0A/AbAdh/wR2DNDsccERERERERERGL2KCTTZL2ptniNnHgPdtHAOvTbK87QNIyNNvd/nUu/W0PPGf7vlI0jOaNcz+1vR1wJ3Buf/U2XXhggaQeSRMkTejt7R0sUkRERERERERELCSdrGzaAdhH0hTgKmA3SZf137T9MnA1sD+wCrA1MK7Ufyvw/f5DwosDee0WuieB54Cx5fpbwHbl81RgQwBJw4DVgKcGDtB2r+1Rtkf19PR0ECkiIiIiIiIiIhaGQSebbJ9qe4TtjWkmim4FDpG0KbxyZtO7gYds/9H2WrY3LvXHA/vYnlDqLgO8n2bSqr9/A9cCu5Si3YEHyufvA4eVz+8Dbi31IyIiIiIiIiJiCTRsHtsJuETSquXzPcCHO2i3EzDV9mMDyk8BviHpfOD3wBGl/KJS/ijNiqYD53G8ERERERERERGxCAxpssn2OGBcudyhg/q7tGn/1jb1/o9mImpg+Qs0K6EiIiIiIiIiImIpMK8rm5Zoz0+/fXEPYZGpJWstOSFZu1VNWWtR0+80WbtPLTkhWbtVLVlryQnJ2o1qyQl1Ze2UOj0CSdKywARgmu29W8r/GzjC9srl+nDgHGBaqXKB7QvLvY2AC2kO/Tawl+0pki4HRgEvAXcB/2z7JUlrAF8DNgFeAI5seYvdnHjY8A06yrS065s1jRqy1pITkrVb1ZK1lpyQrN2qlqy15IRk7Va1ZK0lJyRrN6olJ1SXVZ3W7eRtdP1OAB5sLShvmVu9Td2rbY8sPxe2lF8KnGN7S2A0MKOUXw5sAbwRWBE4upT/OzDJ9jbAocAXhjDeiIiIiIiIiIhYxDraRidpBPAu4AzgY6VsWZoVTB8E9uugj62AYbZvBrD9bP8929e31LsLGFEutwI+W+o8JGljSeva/l0n446IJVuWm8bSLN/fiIiIiIj2Oj2z6XzgZGCVlrLjgO/bfkL6i5VU+0vaCXgYONH2b4DNgT9I+g7wt8CPgH+z/XJ/I0nLAYfQrKKC5i137wXukDQa+BuaiahMNkV0gRXX33FxD2GR6Js1bfBKsdTJ9zciIiIior1BJ5sk7Q3MsD1R0i6lbH2at8Tt0qbJtcCVtl+UdAxwCbBbedaOwJuAx4GrgcOBi1rafhm4zXb/PxefCXxB0iTgXuBuoK/NGHuAHoAxY8ZU9a/NtWStJScka7eqKWstavqdJmv3qSUnJGu3qiVrLTkhWbtRLTmhrqydGvSAcEmfpVlt1AesAKwKvFh+XijVNgIes73pgLbLAk/ZXk3SW4Ezbe9S7h0CvNX2seX6UzQTUe+1PbvNOAT8GtjG9jNzGXIOCO8yteSEZO1WtWStJScka7eqJWstOSFZu1UtWWvJCcnajWrJCdVlXXAHhNs+1fYI2xsDBwK32l7D9l/b3riUP9c/0SRpvZbm+/DqoeI/B9aQtHa53g14oLQ5Gng7cFDrRJOk1SUNL5dH06x6mttEU0RERERERERELEadntk0FMdL2odmJdRTNFvlsP2ypJOAW8oqpYnAV0ub/wH+D7iznP/0HdunA1sCl0p6mWZi6qhOBlDTErZastaSE5K1W9WUtRY1/U6TtfvUkhOStVvVkrWWnJCs3aiWnFBX1k4Nuo1uKZRtdF2mlpyQrN2qlqy15IRk7Va1ZK0lJyRrt6olay05IVm7US05obqsHW+jWxgrmxa7mmYVa8laS05I1m5VU9Za1PQ7TdbuU0tOSNZuVUvWWnJCsnajWnJCXVk71fHKpnLY9wRgmu29JX0d2Bn4Y6lyuO1Jpe4uwPnAcsBM2zvPqZ9SthtwLjCcZnvdUbb7JK0GXEZzAPkw4FzbFw8y1Kxs6jK15IRk7Va1ZK0lJyRrt6olay05IVm7VS1Za8kJydqNaskJ1WVdcAeEtziBVw/77vdx2yPLT/9E0+rAl4F9bL8BeP/c+pG0DHAJcKDtrWnObjqs3D4WeMD2tsAuwOdaDgyPiIiIiIiIiIglTEeTTZJGAO8CLuyg+gdpDvh+HMD2jEH6WRN40fbD5fpmYP/y2cAq5UDxlWkOHO/rZMwREREREREREbHodbqy6XzgZGD2gPIzJE2WdJ6k5UvZ5sAaksZJmijp0EH6mQksJ2lUuX4fsGH5fAHNG+mmA/cCJ9geOIaIiIiIiIiIiFhCDHpAuKS9gRm2J5azmPqdCvyW5pylXuAU4PTS55uB3YEVgTsljaeZhPqLfmxb0oFA/4TVTby6euntwCRgN2AT4GZJt9t+ZsAYe4AegDFjxgzpLyAiYlHIoYGxNKvp+1tL1lpyQrJ2q1qy1pIT6soaUYNO3ka3A7CPpL2AFYBVJV1m++By/0VJFwMnleupNIeC/xn4s6TbgG2B7ebUj+07gR0BJO1JMzEFcARwpptTzB+V9GtgC+Cu1gHa7qWZ8ALwR447bYh/DRERC9eK6++4uIew0PXNmra4hxALSQ3fX2i+wzVkrSUnJGu3qiVrLTmhvqwRNRh0ssn2qTSrmPrfMneS7YMlrWf7iXKe0r7AfaXJ94ALJA2jWfW0PXCe7W+166dcr2N7RlnZdApwRunrcZoVUrdLWhf4O+Cx+Y8dEUuC/AtWLM3y/Y2IiIiIaK+TlU1zcrmktQHRbHU7BsD2g5JuACbTnM10oe375twNAB8v2/WWAb5i+9ZS/hng65LuLc85xfbM+RhzRCxB8i9YsTTL9zciIiIior0hTTbZHgeMK593m0u9c4BzOumnXH8c+HibetOBPYcyxoiIiIiIiIiIWHw6fRtdRERERERERETEoDqebJK0rKS7Jf2gXEvSGZIelvSgpONL+cclTSo/90l6WdJfSVpB0l2S7pF0v6TTWvoeUl8L+i8hIiIiIiIiIiIWjKFsozsBeBBYtVwfDmwIbGF7tqR14LVb6CS9GzjR9lPlIPHdbD8raTngDkk/tD1+qH3NV+KIiIiIiIiIiFhoOppskjQCeBfNW+I+Voo/DHzQ9mwA2zPaND0IuLLcN/BsKV+u/Hhe+oqI7pC3ecXSLN/fiIiIiIj2Ol3ZdD5wMrBKS9kmwAGS9gN+Dxxv+5H+m5JeB7wDOK6lbFlgIrAp8CXbP5vXviJi6Ze3ecXSLN/fiIiIiIj2Bj2zSdLewAzbEwfcWh54wfYo4KvA1wbcfzfw09Ztb7Zftj0SGAGMlrT1vPY1YIw9kiZImtDb2ztYpIiIiIiIiIiIWEg6OSB8B2AfSVOAq4DdJF0GTAW+XeqMBbYZ0O5A5rDtzfYfgHE0q5WYn75Kf722R9ke1dPT00GkiIiIiIiIiIhYGAadbLJ9qu0RtjemmfS51fbBwHeB3Uq1nYGH+9tIWq2Ufa+lbG1Jq5fPKwJ7AA+V20PqKyIiIiIiIiIilkxDeRvdQGcCl0s6kebg76Nb7u0H3GT7zy1l6wGXlHOblgG+afsH89hXREREREREREQsgYY02WR7HM32t/6tcO+aQ72vA18fUDYZeNMc6g+pr4iIiIiIiIiIWDJ1cmZTRERERERERERERzqebJK0rKS7Jf2gXN8uaVL5mS7pu6V8NUnXSrpH0v2SjijlIyXdWcomSzqgpe+LSv3Jkq6RtHLLvQ9IeqC0u2LBRY+IiIiIiIiIiAVtKNvoTgAeBFYFsL1j/w1J3+bVA7yPBR6w/W5JawO/lHQ58BxwqO1HJK0PTJR0Y9lCd6LtZ0pfnweOA86UtBlwKrCD7aclrTNfaSMiIiIiIiIiYqHqaGWTpBE0Zypd2ObeKjRvkvtuKTKwiiQBKwNPAX22H7b9CIDt6cAMYO1y3T/RJGDF0gfAPwFfsv10qTdjHjJGRERERERERMQi0uk2uvOBk4HZbe7tB9zSP2EEXABsCUwH7gVOsP2adpJGA8OBX7WUXQz8FtgC+O9SvDmwuaSfShov6R3tBiepR9IESRNV8Rv2AAAgAElEQVR6e3s7jBQREREREREREQvaoNvoJO0NzLA9UdIubaocxGtXPL0dmESz2mkT4GZJt7esXloP+AZwWOsklO0jJC1LM9F0AHBxGd9mwC7ACOB2SVuXrXe0tO0F+meZ/JHjThssVkQsAZ6ffvviHkLEPMv3NyIiIiKivU7ObNoB2EfSXsAKwKqSLrN9sKQ1gdE0q5v6HQGcadvAo5J+TbNa6S5JqwLXAZ+0PX7gg2y/LOlq4OM0k01TgfG2XwJ+LemXNJNPP5/XwBGx5Fhx/R0Hr9QF+mZNW9xDiIUg39+IiIiIiPYG3UZn+1TbI2xvDBwI3Gr74HL7/cAPbL/Q0uRxYHcASesCfwc8Jmk4MBa41Pa3+iursWn/Z+DdwEPl9neBXcu9tWi21T02j1kjIiIiIiIiImIhG8rb6No5EDhzQNlngK9LuhcQcIrtmZIOBnYC1pR0eKl7ODAZuKSsehJwD/Dhcv9GYE9JDwAvAx+3/eR8jjkiIiIiIiIiIhaSIU022R4HjGu53qVNnenAnm3KLwMum0PXO8zheQY+Vn4iIiIiIiIiImIJ1+nb6CIiIiIiIiIiIgbV8WSTpGUl3S3pB+V6d0m/kDRJ0h0t5y79jaRbJE2WNE7SiJY+bpD0h/4+Wsr/VtLPJD0i6epyvhOSDpf0+/KMSZKOXjCxIyIiIiIiIiJiYRjKyqYTgAdbrr8CfMj2SOAK4JOl/FyaQ8C3AU4HPtvS5hzgkDZ9nwWcZ3sz4GngqJZ7V9seWX4uHMJ4IyIiIiIiIiJiEevozKayOuldwBm8en6SgVXL59WA6eXzVsCJ5fOPad4o1zSwb5G0y4C+BewGfLAUXQJ8mmYyKyK62PPTb1/cQ1hkaspai/xOIyIiIiLa6/SA8POBk4FVWsqOBq6X9DzwDPDWUn4PsD/wBWA/YBVJa87lLXJrAn+w3VeupwIbtNzfX9JOwMPAibZ/M7ADST1AD8CYMWM6jBQRi9uK6++4uIewSPTNmlZF1r5Z0xb3EBapGn6nUN/vNSIiIiLm36Db6CTtDcywPXHArROBvWyPAC4GPl/KTwJ2lnQ3sDMwDehjztSmzOXPa4GNy5a8H9GsevrLynav7VG2R/X09AwWKSIiIiIiIiIiFpJOVjbtAOwjaS9gBWBVSdcBW9j+WalzNXADgO3pwHsBJK0M7G/7j3PpfyawuqRhZXXTCMqWvAGrob5Kc7ZTRMRSJ1uuIpYOtfxntZackKzdqpasteSEurJG1GDQySbbpwKnApTzlk4C9gV+K2lz2w8D/0g5PFzSWsBTtmeXdl8bpH9L+jHwPuAq4DDge6Wv9Ww/Uaruw2sPKI+IWGrUsOUq262iG9Tyn9UackKydqtastaSE+rLGlGDTs9seg3bfZL+Cfi2pNk0b5A7stzeBfisJAO3Acf2t5N0O7AFsLKkqcBRtm8ETgGukvSfwN3ARaXJ8ZL2odmG9xRw+LyMNyIiIiIiIiIiFo0hTTbZHgeMK5/HAmPb1LkGuGYO7dtOV9t+DBjdpvyVVVUREREREREREbHkG/SA8IiIiIiIiIiIiE51vLJJ0rLABGCa7b0l7QacCwwHJtJsieuTtAbNOU2bAC8AR9q+r/RxAvBPNG+g+6rt80v51cDflUetDvzB9siWZ28EPAB82va58xM4IpYcOQgylmb5/kZEREREtDeUbXQn0BzQvaqkZYBLgN1tPyzpdJqDvS8C/h2YZHs/SVsAXwJ2l7Q1zUTTaGAWcIOk62w/YvuA/odI+hww8O115wE/nLeIEbGkykGQsTTL9zciIiIior2OttFJGgG8C7iwFK0JvFjeRAdwM7B/+bwVcAuA7YeAjSWtC2wJjLf9nO0+4CfAfgOeI+ADwJUtZfsCjwH3DzldREREREREREQsUp2ubDofOBlYpVzPBJaTNMr2BOB9wIbl3j3Ae4E7JI0G/gYYAdwHnCFpTeB5YC+abXmtdgR+Z/sRAEkr0byp7h+Bk+Y0OEk9QA/AmDFjqtraUEvWWnJCsnarmrLWoqbfabJ2n1pyQrJ2q1qy1pITkrUb1ZIT6sraqUEnmyTtDcywPVHSLgC2LelA4DxJywM3AX2lyZnAFyRNAu4F7gb6bD8o6SyaVVDP0kxK9b32aRxEy6om4DTgPNvPNoue2rPdC/T2Xw4bvsFgsbpC36xpVWzjqCUn1Je1JjX8Xmv7ndakhu8v1PPfwbXkhGTtVrVkrSUnJGs3qiUn1Je1U52sbNoB2EfSXsAKNGc2XWb7YJqVSEjaE9gcwPYzwBGlXMCvyw+2L6I51wlJ/wVM7X+IpGE0K6Le3PLs7YH3STqb5uDw2ZJesH1BxwkjYomV/1KOpVm+vxERERER7Q062WT7VOBUgLKy6STbB0tax/aMsrLpFOCMUmd14Dnbs4CjgdvKBBQtbTaimVh6W8uj9gAesj215dmv/C95SZ8Gns1EU0RERERERETEkmsob6Mb6ONli90ywFds31rKtwQulfQy8ABwVEubb5czm14CjrX9dMu9A3ntFrqI6HI17W2uKWst8jvtTrX8XmvJCcnarWrJWktOqCtrRA1ke3GPYUGr6symGrLWkhOStVvVkrWWnJCs3aqWrLXkhGTtVrVkrSUnJGs3qiUnVJd1zodpD7DMwhxIRERERERERETUpePJJklTJN0raZKkCaXs/ZLulzRb0qgB9U+V9KikX0p6e0v5iaXNfZKulLTCgHb/LenZlutjWp57h6St5j1uREREREREREQsTENd2bSr7ZG2+yeW7qM56Pu21kplQuhA4A3AO4AvS1pW0gbA8cAo21sDy5Z6/e1G0bx1rtUVtt9oeyRwNvD5IY45IiIiIiIiIiIWkfnaRmf7Qdu/bHPrPcBVtl+0/WvgUWB0uTcMWFHSMOB1wHQAScsC5wAnD3jGMy2XKwFdd8hURERERERERES3GMpkk4GbJE2U1DNI3Q2A37RcTwU2sD0NOBd4HHgC+KPtm0qd44Dv235iYGeSjpX0K5qVTce3ud8jaYKkCb29vUOIFBERERERERERC9JQJpt2sL0d8E7gWEk7zaVuuxPKLWkNmlVPfwusD6wk6WBJ6wPvB/67XWe2v2R7E+AU4JNt7vfaHmV7VE/PYPNgERERERERERGxsHQ82WR7evlzBjCWV7fFtTMV2LDlegTNdrk9gF/b/r3tl4DvAH8PvAnYFHhU0hTgdZIebdPvVcC+nY45IiIiIiIiIiIWrWGdVJK0ErCM7T+Vz3sCp8+lyfeBKyR9nmYF02bAXcBs4K2SXgc8D+wOTLB9HfDXLc971vam5fNmth8pt94FPEJExFLm+em3L+4hRERERERELBIdTTYB6wJjJfW3ucL2DZL2o9n6tjZwnaRJtt9u+35J3wQeAPqAY22/DPxM0jXAL0r53cBghywdJ2kP4CXgaeCwoUWMiFj8Vlx/x8U9hIWub9a0xT2EiIiIiIhYAnQ02WT7MWDbNuVjabbUtWtzBnBGm/JPAZ8a5Hkrt3w+oZMxRkRERERERETE4jeUA8IjIiIiIiIiIiLmqtMzm6YAfwJeBvpsj5J0DvBuYBbwK+AI23+QtCZwDfAW4Ou2jyt9rAK0HloyArjM9kfLm+3OB7YBDrR9TWkzEvgKsGp59hm2rx5svDWdjVJL1lpyQrJ2q5qy1qKm32mydp9ackKydqtastaSE5K1G9WSE+rK2inZHrxSM9k0yvbMlrI9gVtt90k6C8D2KeUA8TcBWwNb9082telzInCi7dskbUwzoXQS8P2WyabNm279iKT1gYnAlrb/MJfhetjwDQbN1A36Zk2jhqy15IRk7Va1ZK0lJyRrt6olay05IVm7VS1Za8kJydqNaskJ1WVVp3XneRud7Zts95XL8TQrlbD9Z9t3AC/Mqa2kzYB1KCudbE+xPZnmbXWtz3i4/010tqcDM2gOI4+IiIiIiIiIiCVQp5NNBm6SNFFST5v7RwI/HMJzDwKudifLqgpJo4HhNFv2Bt7rkTRB0oTe3sFebhcREREREREREQtLR2c2ATvYni5pHeBmSQ/Zvg1A0ieAPuDyITz3QOCQTitLWg/4BnCY7dkD79vuBfpnmfyR404bwlAiIiIiIiIiImJB6WiyqWxhw/YMSWOB0cBtkg4D9gZ273SVkqRtgWG2J3ZYf1XgOuCTtsd30qamw7lqyVpLTkjWblVT1lrU9DtN1u5TS05I1m5VS9ZackKydqNackJdWTs16GRTOfB7Gdt/Kp/3BE6X9A7gFGBn288N4ZkHAVd2UlHScGAscKntb3X6gBXX33EIw1l69c2aVkXWWnJCfVkjIiIiImpTw//er+3/19SUtVODvo1O0utpJnygmZy6wvYZkh4FlgeeLPfG2z6mtJlC83a54cAfgD1tP1DuPQbsZfuhlme8pTxjDZqDxX9r+w2SDgYuBu5vGdLhtifNZch5G12XqSUnJGu3qiVrLTkhWbtVLVlryQnJ2q1qyVpLTkjWblRLTqgua8dvoxt0ZZPtx4Bt25RvOpc2G8/l3uvblP2c8ja7AeWXAZcNNsaIiIiIiIiIiFgydPQ2OklTJN0raZKkCaXsM5Iml7KbJK1fyj9UyidL+t9yRtMc+ynlIyWN7y8vb55D0haS7pT0oqSTFmz0iIiIiIiIiIhY0Dp9Gx3ArrZntlyfY/s/ACQdD/w/4Bjg1zTnOD0t6Z00b4nbfi79AJwNnGb7h5L2Kte7AE8BxwP7DmGcERERERERERGxmHS0sqkd28+0XK4EuJT/r+2nS/l42myPa9cdzRlPAKsBr7z9rmyxe2lexxkREREREREREYtOpyubDNwkycAY270Aks4ADgX+COzapt1RwA8H6wf4KHCjpHNpJsD+fshJIiIiIiIiIiJiset0ZdMOtrcD3gkcK2knANufsL0hcDlwXGsDSbvSTDadMlg/wIeBE0tfJwIXDSWEpJ5y1tOE3t7ewRtERERERERERMRC0dFkk+1XtrUBY4HRA6pcAezffyFpG+BC4D22n+ygn8OA75TP32rT/2Dj67U9yvaonp6eoTSNiIiIiIiIiIgFaNDJJkkrSVql/zOwJ3CfpM1aqu0DPFTqbEQzcXSI7YcH66fcng7sXD7vBjwyP6EiIiIiIiIiImLx6OTMpnWBsZL6619h+wZJ35b0d8Bs4P9o3kQHzVvp1gS+XNr02R41p35Km38CviBpGPAC0AMg6a+BCTSHh8+W9FFgqwGHk0dERERERERExBJi0Mkm248B27Yp379NdWwfDRzdaT/l3h3Am9uU/5bO3mYXERERERERERFLgE4PCI+IiIiIiIiIiBhUx5NNkqZIulfSJEkTBtw7SZIlrVWu3yNpcn9dSf8woP6qkqZJuqClbJykX5Y2kyStU8qXl3S1pEcl/UzSxvMTOCIiIiIiIiIiFp5Ozmxqtavtma0FkjYE/hF4vKX4FuD7tl3eTPdNYIuW+58BftKm/w/ZnjCg7CjgadubSjoQOAs4YIjjjoiIiIiIiIiIRWBBbKM7DzgZcH+B7Wdt91+v1HpP0ptpDgu/qcP+3wNcUj5fA+yucsp4REREREREREQsWYYy2WTgJkkTJfW/LW4fYJrtewZWlrSfpIeA64AjS9kywOeAj8/hGReXLXT/0TKhtAHwGwDbfcAfad52FxERERERERERS5ihbKPbwfb0cpbSzWUi6RPAnu0q2x4LjJW0E822uT2AjwDX2/5Nm8VJH7I9TdIqwLeBQ4BLgXarmNx6USa/egDGjBnD89NvH0KspVstWWvJCcnarWrKWouafqfJ2n1qyQnJ2q1qyVpLTkjWblRLTqgra6c6nmyyPb38OUPSWGBn4G+Be8rE0QjgF5JG2/5tS7vbJG1SDg9/G7CjpI8AKwPDJT1r+99sTyv1/yTpCmA0zWTTVGBDYKqkYcBqwFMDxtYL9PZfvjTzsSH/RURERERERERExPzTq0crzaWStBKwTJkIWgm4GTjd9g0tdaYAo2zPlLQp8KtyQPh2wLXAiJZznJB0eKl/XJlEWr20XQ64EviR7f+RdCzwRtvHlAPC32v7A3MZrocN32CIfw1Lp75Z06ghay05IVm7VS1Za8kJydqtaslaS05I1m5VS9ZackKydqNackJ1WTs+P7vTlU3r0myJ629zRetEUxv7A4dKegl4HjjAc5/VWh64sUw0LQv8CPhquXcR8A1Jj9KsaDqwwzFHRERERERERMQi1tFkk+3HgG0HqbNxy+ezgLMGqf914Ovl85+BN8+h3gvA+zsZZ0RERERERERELF5DeRtdRERERERERETEXHU02SRpiqR7JU2SNKGUfVrStFI2SdJeA9psJOlZSSeV6xUk3SXpHkn3Szqtpe5xkh6V5HKQeH/5GpLGSppc2m69YGJHRERERERERMTC0PHb6IBdbc8cUHae7XPnUP884Ict1y8Cu9l+tpzNdIekH9oeD/wU+AEwbkAf/w5Msr2fpC2ALwG7D2HMERERERERERGxCA1lsqljkvYFHgP+3F9WDgh/tlwuV35c7t1d2g3saivgs6XOQ5I2lrSu7d/N7fnPT799AaRYOtSStZackKzdqqastajpd5qs3aeWnJCs3aqWrLXkhGTtRrXkhLqydkpzf0lcqST9GniaZnJojO1eSZ8GDgeeASYA/2r7aUkr0bxN7h+Bk4Bn+1c/SVoWmAhsCnzJ9ikDnjMFGNW/gkrSfwEr2P6YpNHA/wLb2544l+G6otcOVvGKxVpyQrJ2q1qy1pITkrVb1ZK1lpyQrN2qlqy15IRk7Ua15ITqsv7FCqE56fSA8B1sbwe8EzhW0k7AV4BNgJHAE8DnSt3TaLbXPTuwE9sv2x4JjABGd3AG05nAGpImAf8C3A30DawkqUfSBEkTent7O4wUERERERERERELWkfb6GxPL3/OkDQWGG37tv77kr5Kc+YSwPbA+ySdDawOzJb0gu0LWvr7g6RxwDuA++by3GeAI8ozBPy6/Ays1wv0zzL5I8edNrBKREREREREREQsAoNONpVtccvY/lP5vCdwuqT1bD9Rqu1HmTSyvWNL20/TbKO7QNLawEtlomlFYA/grEGevTrwnO1ZwNHAbWUCKiK6QPY2x9Is39+IiIiIiPY6Wdm0LjC2HN49DLjC9g2SviFpJM05TlOAfx6kn/WAS8q5TcsA37T9AwBJxwMnA38NTJZ0ve2jgS2BSyW9DDwAHDXUgBGx5Fpx/R0Hr9QF+mZNy8REF6rp+xsRERERMRSDTjbZfgzYtk35IR20/XTL58nAm+ZQ74vAF9uU3wlsNthzIiKWdDVMTGRSIiIiIiIioMMzmyIiFoas9omlWb6/ERERERHtdTTZJGkK8CfgZaDP9qhS/i/AcTRviLvO9smSNgYeBH5Zmo+3fUypfwZwKLCG7ZVb+t8IuITmQPFlgX+zfb2k5YALge3KWC+1/dn5CRwRS44aVvtAVvx0q3x/IyIiIiLaG8rKpl1tz+y/kLQr8B5gG9svSlqnpe6vbI9s08e1wAXAIwPKP0lzhtNXJG0FXA9sDLwfWN72GyW9DnhA0pW2pwxh3BERERERERERsYjMzza6DwNn2n4RwPaMwRrYHg9QDht/zS1g1fJ5NWB6S/lKkoYBKwKzgLyNLiIiIiIiIiJiCbVMh/UM3CRpoqSeUrY5sKOkn0n6iaS3tNT/W0l3l/JO9hl8GjhY0lSaVU3/UsqvAf4MPAE8Dpxr+6kOxxwREREREREREYtYpyubdrA9vWyVu1nSQ6XtGsBbgbcA35T0epqJoY1sPynpzcB3Jb3B9txWJB0EfN325yS9DfiGpK2B0TTnRK1fnnW7pB+VN+S9okyA9QCMGTOmw0gREREREREREbGgdbSyyfb08ucMYCzNJNBU4Dtu3AXMBtay/aLtJ0v9icCvaFZBzc1RwDdLmzuBFYC1gA8CN9h+qTz7p8CoNuPrtT3K9qienp6BtyMiIiIiIiIiYhEZdLJJ0kqSVun/DOwJ3Ad8F9itlG8ODAdmSlpb0rKl/PXAZsBj7fpu8Tiwe2mzJc1k0+9L+W5qrESziuqhoYaMiIiIiIiIiIhFo5NtdOsCY8uh3sOAK2zfIGk48DVJ99Ec3H2YbUvaCThdUh/NFrhj+s9ZknQ2zWql15XzmS60/WngX4GvSjqR5nyow0tfXwIuppncEnCx7cmDDfj56bcP4a9g6VZL1lpyQrJ2q5qy1qKm32mydp9ackKydqtastaSE5K1G9WSE+rK2inZXtxjWNA8bPgGi3sMi0TfrGnUkLWWnJCs3aqWrLXkhGTtVrVkrSUnJGu3qiVrLTkhWbtRLTmhuqzqtG6nb6OLiIiIiIiIiIgYVEeTTZKmSLpX0iRJE0rZ1eV6Urk/qaX+NpLulHR/abdCKX9zuX5U0hdV9uZJ+rSkaS397VXKP9RSNknSbEkjF/xfQ0RERERERERELAidnNnUb1fbM/svbB/Q/1nS54A/ls/DgMuAQ2zfI2lN4KVS9StADzAeuB54B/DDcu882+e2PtD25cDlpd83At+zPYmIiIiIiIiIiFgizfc2urI66QPAlaVoT2Cy7XsAbD9p+2VJ6wGr2r7TzUFRlwL7DuFRB7U8IyIiIiIiIiIilkCdrmwycJMkA2Ns97bc2xH4ne1HyvXmgCXdCKwNXGX7bGADYGpLu6mlrN9xkg4FJgD/avvpAWM4AHhPJ4Ot6ST4WrLWkhOStVvVlLUWNf1Ok7X71JITkrVb1ZK1lpyQrN2olpxQV9ZOdfQ2Oknr254uaR3gZuBfbN9W7n0FeNT258r1ScCxwFuA54BbgE8CzwCftb1HqbcjcLLtd0taF5hJM6n1GWA920e2PH974ELbb5zD+HpotucxZsyYN3/kuNOG/jexFKrl1PtackKydqtastaSE5K1W9WStZackKzdqpasteSEZO1GteSE6rIu2LfR2Z5e/pwBjAVGwyvnM70XuLql+lTgJ7Zn2n6O5mym7Ur5iJZ6I4D+fn9n+2Xbs4Gv9vff4kDmsoXOdq/tUbZH9fT0dBIpIiIiIiIiIiIWgkEnmyStJGmV/s80ZzLdV27vATxku3V73I3ANpJeVyajdgYesP0E8CdJby3nPB0KfK/0u15L+/1a+kfSMsD7gavmMWNERERERERERCwinZzZtC4wtpkfYhhwhe0byr2/WHFk+2lJnwd+TrMt7nrb15XbHwa+DqxI8xa6/jfRnS1pZKk/Bfjnli53AqbafmxIySIiIiIiIiIiYpHr6MympYxfmlnHvNRya72eGrLWkhOStVvVknW5tV5f0371Kn6nUM/3F+rJWktOSNZuVUvWWnJCsnajWnJCdVkX7JlNERERERERERERnej0bXRTgD8BLwN9tkeVbW//A6wA9AEfsX1Xqb8LcD6wHDDT9s6l/ATgnwABX7V9fik/B3g3MAv4FXCE7T+Ue9sAY4BVgdnAW2y/MJfhuqZ/Wa8hay05IVm7VS1Za8kJydqtaslaS05I1m5VS9ZackKydqNackJ1WRfKyqZdbY+0Papcnw2cZnsk8P/KNZJWB74M7GP7DTSHeyNpa5qJptHAtsDekjYrfd0MbG17G+Bh4NTSZhhwGXBM6WsX4KUhjDkiIiIiIiIiIhah+dlGZ5rVRgCrAdPL5w8C37H9OIDtGaV8S2C87eds9wE/oXnzHLZvKmUA44ER5fOewGTb95R6T9p+eT7GHBERERERERERC1Gnk00GbpI0UVJPKfsocI6k3wDnUlYjAZsDa0gaV+ofWsrvA3aStKak1wF7ARu2edaRvPqWus0BS7pR0i8knTy0eBERERERERERsSgN67DeDranS1oHuFnSQ8D7gBNtf1vSB4CLgD1Kn28GdgdWBO6UNN72g5LOotky9yxwD81ZT6+Q9IlSdnnL+P4BeAvwHHCLpIm2bxnQrgfoARgzZsyQ/gIiIiIiIiIiImLB6Wiyyfb08ucMSWNpzl06DDihVPkWcGH5PJXmUPA/A3+WdBvNGU0P276IZlIKSf9V6lKuDwP2Bnb3q6eWTwV+YntmqXM9sB3wmskm271Ab//lR447rbP0EbFYPT/99sU9hIh5lu9vRERERER7g042SVoJWMb2n8rnPYHTac5o2hkYB+wGPFKafA+4oBzuPRzYHjiv9LVOmbDaCHgv8LZS/g7gFGBn28+1PP5G4OSy7W5Wed5585U4IpYYK66/4+IewiLRN2va4h5CLAT5/kZEREREtNfJyqZ1gbGS+utfYfsGSc8CXyiTSi9QtrGV7XI3AJOB2cCFtu8rfX1b0po0b5Q71vbTpfwCYHmaLXrQHCR+jO2nJX0e+DnNuVHX275u/mNHRERERERERMTCMOhkk+3HaLbBDSy/g+ZspnZtzgHOaVPe9p+BbW86l+dfBlw22DgjIiIiIiIiImLx6/RtdBEREREREREREYPqaLJJ0hRJ90qaJGlCKdtW0p2l/FpJq5byD5V6/T+zJY2UtMqA8pmSzi9t/kbSLZImSxonaUTLs19uafP9hfGXEBERERERERERC0ZHb6Mrdu1/K1xxIXCS7Z9IOhL4OPAfti8HLgeQ9Ebge7YnlTYj+xtLmgh8p1yeC1xq+xJJuwGfBQ4p9563/Uq7iIiIiIiIiIhYcs3PNrq/A24rn28G9m9T5yDgyoGFkjYD1gH63xu9FXBL+fxj4D3zMa6IiIiIiIiIiFhMOp1sMnCTpImSekrZfcA+5fP7gQ3btDuANpNNNJNQV9t2ub6HVyer9gNWKW+tA1hB0gRJ4yXt2+F4IyIiIiIiIiJiMeh0smkH29sB7wSOlbQTcGT5PBFYBZjV2kDS9sBztu9r09+BvHYS6iRgZ0l3AzsD04C+cm8j26OADwLnS9pkYGeSesqE1ITe3t4OI0VERERERERExILW0WST7enlzxnAWGC07Yds72n7zfkxNtIAACAASURBVDQTR78a0GzghBLQHCwODLM9sbV/2++1/SbgE6XsjwOe/RgwDnhTm/H12h5le1RPT8/A2xERERERERERsYgMOtkkaSVJq/R/BvYE7pO0TilbBvgk8D8tbZah2Vp3VZsu/+IcJ0lrlTYApwJfK+VrSFq+vw6wA/DAUAJGRERERERERMSi08nKpnWBOyTdA9wFXGf7BuAgSQ8DDwHTgYtb2uwETC2rkQb6AH+54mkX4Jelv3WBM0r5lsCE8uwfA2fazmRTRERERERERMQSathgFcqE0bZtyr8AfGEObcYBb53Dvde3KbsGuKZN+f8CbxxsjBERERERERERsWTo9IDwiIiIiIiIiIiIQXU02SRpdUnXSHpI0oOS3ibpryTdLOmR8ucape5qkq6VdI+k+yUd0dLPRpJuKn08IGnjUi5JZ0h6uNw7fsDz3yLpZUnvW3DRIyIiIiIiIiJiQet0ZdMXgBtsb0Gzpe5B4N+AW2xvBtxSrgGOBR6wvS3NWUyfkzS83LsUOMf2lsBoYEYpPxzYENii3HvlYHFJywJnATfOS8CIiIiIiIiI+P/s3WmYXVWd/v3vLTFIGIRGRQnIoBAEDAGKQW0QiCCgMgkaVBpQu1QElRYF2keFtv2LgGJaHFICEWgUJAziBCIKog3RAGFKwmiAJExRIEKAWOR+XuxVcjxWpXZBxrPvz3XVVeesvfba+07l1e9aQ8TSU+c0ujWoNvw+E8D2AtuPA/sCZ5duZwP7lc8GVpckYDXgL0CvpM2BYbavLOM8aXt+uedjwH/ZXliu9RWhAI4CLuL5wlRERERERERERCynBt0gHNgYeBSYKGkr4Abgk8A6th8EsP2gpFeV/qcDl1GdULc68F7bCyVtCjwu6WJgI+BXwHG2nwNeB7xX0v7lWZ+wfZekkcD+wG7AdnVDPT3n2rpdV3hNydqUnJCsnapJWZuiSX/TZO08TckJydqpmpK1KTkhWTtRU3JCs7LWJduL7iB1AdcDb7E9WdJ4YB5wlO01W/o9Znutsq/SW4D/oCoiXUm19G4PqtlRWwP3AxcAP7d9pqQngS/a/pqkA4Cjbe8k6ULga7avl/R94Kfl5Lr2d+wGugEmTJiw7RFHnvhi/k1WGL0LZjNs+Mhl/RpLXFNyQrJ2qqZkbUpOSNZO1ZSsTckJydqpmpK1KTkhWTtRU3JC47Kqbt86ezbNAmbZnly+TwK2AR6W9BqA8rtvmdvhwMWu3A38CdisjHOT7Xtt9wKXlnH6nnFR+XwJMLp87gLOlzQTOBD4tqS+5Xp/Z7vHdpftru7u7prRIyIiIiIiIiJicRu02GT7IeABSaNK01hgGtVSuUNL26HAj8vn+0sfJK0DjALuBf4IrCXplaXfbmUcqApPu5XPbwXuLM/eyPaGtjekKnIdYfvSoceMiIiIiIiIiIiloc6eTVBt0n1eOVXuXqrZSy8BfiTpQ1QFpoNK3y8B35d0KyDgWNtzASQdA1xVNg+/AfheueekMv7RwJPAh190soiIiIiIiIiIWOpqFZtsT6Va0tZubD9951Dtz9TfOFfy/BK51vbHgXcM8g6H1XnXiIiIiIiIiIhYdurs2RQREREREREREVFLrWKTpDUlTZI0Q9J0SW+SdJCk2yUtLCfW9fUdLmmipFsl3Sxpl5ZrV0u6Q9LU8vOq0v7R0n+qpN9J2ry0b9/S92ZJ+y/m/BERERERERERsRjV3bNpPHC57QPLvk0jgMeBA4AJbX3/HcD2G0sx6ReStrO9sFx/v+0pbff8wPZ3ASTtA3wd2BO4Deiy3VtOvLtZ0k/KaXYREREREREREbGcGbTYJGkNYGfgMADbC4AFVMUmqr2+/8HmwFWl7yOSHqfa7+kPAz3D9ryWr6sCLu3zW9pf1tceERERERERERHLpzozmzYGHgUmStqK6hS5T9p+aoD+NwP7SjofWB/YtvzuKzZNlPQccBHw37YNIOnjwH8Aw4Hd+gaTtANwFrABcEidWU1Pz7m2RqzO0JSsTckJydqpmpS1KZr0N03WztOUnJCsnaopWZuSE5K1EzUlJzQra10qtZ6BO1T7MV0PvMX2ZEnjgXm2P1+uXw0c07c0TtIw4BRgV+A+4KXABNs/ljTS9mxJq1MVm/7X9jltz3sf8Hbbh7a1vwE4G9jZ9jNt17qBboAJEyZse8SRJ76Af4oVT++C2QwbPnJZv8YS15SckKydqilZm5ITkrVTNSVrU3JCsnaqpmRtSk5I1k7UlJzQuKz/tLRtIHU2CJ8FzLI9uXyfBGwzUGfbvbaPtj3G9r7AmsBd5drs8vuvwA+A7fsZ4nxgv37GnQ48BWzZz7Ue2122u7q7u2tEioiIiIiIiIiIJWHQYpPth4AHJI0qTWOBaQP1lzRC0qrl8+5Ar+1pkoZJekVpfynwTqoNwJG0ScsQ76AUpyRtVGZKIWkDYBQwc0gJIyIiIiIiIiJiqal7Gt1RwHnlJLp7gcMl7Q98E3gl8DNJU22/HXgVcIWkhcBs4JAyxsql/aXASsCvgO+Va0dKehvwN+AxoG8J3b8Cx0n6G7AQOML23BceNyIiIiIiIiIilqRaxSbbU6lOlGt1Sflp7zuTagZSe/tTVJuF9zf+JwdoPxc4t847RkRERERERETEsldnz6aIiIiIiIiIiIhaahWbJK0paZKkGZKmS3qTpC9JukXSVEm/lLRu6StJ/yPp7nJ9m7ax1pA0W9LpLW3bSrq13PM/klTaTynPvEXSJZLWXJzhIyIiIiIiIiJi8ao7s2k8cLntzYCtgOnAKbZH2x4D/BT4Qum7F7BJ+ekGvtM21peAa9ravlP69t23Z2m/EtjS9mjgTuD4mu8bERERERERERHLwKDFJklrADsDZwLYXmD7cdvzWrqtCrh83hc4x5XrgTUlvaaMtS2wDvDLlvFfA6xh+zrbBs4B9ivP+qXt3tL1emC9Fx41IiIiIiIiIiKWtDobhG8MPApMlLQVcAPwSdtPSfoy8G/AE8Cupf9I4IGW+2cBIyU9DHyN6nS6sS3XR5Y+/9C/n/f4IHBBjffl6TnX1unWEZqStSk5IVk7VZOyNkWT/qbJ2nmakhOStVM1JWtTckKydqKm5IRmZa1L1WSiRXSQuqhmFb3F9mRJ44F5tj/f0ud44GW2vyjpZ8BXbP+uXLsK+CzwJmCE7ZMlHQZ02T5S0nal/9tK/52Az9p+V8v4n6M6De8A9/PCkrqpluExYcKEbY848sQX+u+xQuldMJthw/ury3WWpuSEZO1UTcnalJyQrJ2qKVmbkhOStVM1JWtTckKydqKm5ITGZVXdvnVmNs0CZtmeXL5PAo5r6/MD4GfAF0v/9VuurQfMoSo27STpCGA1YLikJ6n2g1qvn/4ASDoUeCcwtr9CE4DtHqCn72tTik0RERERERGxYmnKLJim5IRmZa1r0GKT7YckPSBplO07qJbATZO0ie27Srd9gBnl82XAkZLOB3YAnrD9IPD+vjFbZjYdV77/VdKOwGSqZXnfLO17AscCb7U9/8XHjYiIiIiIiFh2Vll3p2X9Cktc74LZjcgJzctaV52ZTQBHAedJGg7cCxwOnCFpFLAQuA/4aOn7c2Bv4G5gfuk7mI8B3wdWAX5RfgBOB1YGrpQEcL3tj/Y3QERERERERERELHu1ik22p1LtmdTq3QP0NfDxQcb7PlVxqe/7FGDLfvq9vs77RcSKqUnTTZuUtSnyN42IiIiI6F/dmU0REfEiNGFq7VCm1UZEREREROeqVWyStCZwBtXsIwMftH1duXYMcArwSttzJW0GTAS2AT5n+9TSb33gHODVVEvvemyPL9cuAEaVx60JPG57jKS1qTYk3w74vu0jF0PmiFhONKEAAynCdKr8/42IiIiI6F/dmU3jgcttH1j2bRoBfy8g7Q7c39L3L8AngP3axugFPm37RkmrAzdIutL2NNvv7esk6WvAE+XrM8DnqYpc/7TMLiIiIiIiIiIili8vGayDpDWAnYEzAWwvsP14uXwa8Fmq2U6U64/Y/iPwt9ZxbD9o+8by+a/AdGBk27MEvAf4Yen3lO3fURWdIiIiIiIiIiJiOTdosQnYGHgUmCjpJklnSFpV0j7AbNs3D/WhkjYEtgYmt13aCXjY9l1DHTMiIiIiIiIiIpa9OsvohlHtv3SU7cmSxgMnUM122mOoD5S0GnAR8Cnb89ouH0yZ1TTEMbuBboAJEyYM9faIiIiIiIiIiFhM6sxsmgXMst03C2kSVfFpI+BmSTOB9YAbJb16UQNJeilVoek82xe3XRsGHABcMKQEgO0e2122u7q7u4d6e0RERERERERELCaDzmyy/ZCkBySNsn0HMBa40fbYvj6l4NRle+5A45T9mM4Eptv+ej9d3gbMsD1rqCHaPT3n2hc7xAqjKVmbkhOStVM1KWtTNOlvmqydpyk5IVk7VVOyNiUnJGsnakpOaFbWumR78E7SGOAMYDhwL3C47cdars+kFJvK7KYpwBrAQuBJYHNgNHAtcGtpB/hP2z8vY3wfuN72d9uePbOMNRx4HNjD9rRFvK6HDR+5iMudo3fBbJqQtSk5IVk7VVOyNiUnJGunakrWpuSEZO1UTcnalJyQrJ2oKTmhcVlVt2+dPZuwPRXoWsT1DVs+P0S1rK7d74ABX8z2YYONHRERERERERERy7c6ezZFRERERERERETUUqvYJGlNSZMkzZA0XdKbJJ0gabakqeVn79J3d0k3SLq1/N6tZZwvl/2fnhzgOQdKsqSulrbjJd0t6Q5Jb3+xgSMiIiIiIiIiYsmptYwOGA9cbvtAScOBEcDbgdNsn9rWdy7wLttzJG0JXAH0LWD8CXA6cFf7AyStDnwCmNzStjkwDtgCWBf4laRNbT9XN2BERERERERERCw9g85skrQGsDPVSXLYXmD78YH6277J9pzy9XbgZZJWLteut/3gALd+CTgZeKalbV/gfNvP2v4TcDew/WDvHBERERERERERy0adZXQbA48CEyXdJOkMSauWa0dKukXSWZLW6ufedwM32X52UQ+QtDWwvu2ftl0aCTzQ8n0Wz8+SioiIiIiIiIiI5UydYtMwYBvgO7a3Bp4CjgO+A7wOGAM8CHyt9SZJWwBfBT6yqMElvQQ4Dfh0f5f7aXM/Y3RLmiJpSk9Pz6CBIiIiIiIiIiJiyahTbJoFzLLdt5fSJGAb2w/bfs72QuB7tCxvk7QecAnwb7bvGWT81YEtgaslzQR2BC4rm4TPAtZv6bseMKd9ANs9trtsd3V3d9eIFBERERERERERS8KgxSbbDwEPSBpVmsYC0yS9pqXb/sBtUJ1cB/wMON7272uM/4TtV9je0PaGwPXAPranAJcB4yStLGkjYBPgD/XjRURERERERETE0lRnZhPAUcB5km6hWjb3/4CTJd1a2nYFji59jwReD3xe0tTy8yoASSdLmgWMkDRL0gmLeqjt24EfAdOAy4GP5yS6iIiIiIiIiIjl17A6nWxPBbramg8ZoO9/A/89wLXPAp8d5Fm7tH3/MvDlOu8ZERERERERERHLVt2ZTREREREREREREYOqVWyStKakSZJmSJou6U2l/ShJd0i6XdLJpW37luVzN0vav2WcPUv/uyUd19K+kaTJku6SdIGk4aV9A0lXSbpF0tVl4/GIiIiIiIiIiFhO1Z3ZNB643PZmwFbAdEm7AvsCo21vAZxa+t4GdNkeA+wJTJA0TNJKwLeAvYDNgYMlbV7u+Spwmu1NgMeAD5X2U4FzbI8G/gv4yovIGhERERERERERS9igxSZJawA7A2cC2F5g+3HgY8BJtp8t7Y+U3/Nt95bbXwa4fN4euNv2vbYXAOcD+0oSsBswqfQ7G9ivfN4cuKp8/g1VcSsiIiIiIiIiIpZTdWY2bQw8CkyUdJOkMyStCmwK7FSWv10jabu+GyTtIOl24Fbgo6X4NBJ4oGXcWaVtbeDxlgJVXzvAzcC7y+f9gdUlrf2CkkZERERERERExBJXp9g0DNgG+I7trYGngONK+1rAjsBngB+VWUrYnlyW1m0HHC/pZYD6GduLaAc4BnirpJuAtwKzgd72zpK6JU2RNKWnp6dGpIiIiIiIiIiIWBLqFJtmAbNsTy7fJ1EVn2YBF7vyB2Ah8IrWG21PpypObVn6r99yeT1gDjAXWFPSsLZ2bM+xfUApcn2utD3R/oK2e2x32e7q7u6uESkiIiIiIiIiIpaEQYtNth8CHpA0qjSNBaYBl1LttYSkTYHhwNxystyw0r4BMAqYCfwR2KRcHw6MAy6zbar9mA4s4x8K/Ljc/wpJfe94PHDWi4sbERERERERERFL0rDBuwBwFHBeKRLdCxxONWPpLEm3AQuAQ21b0r8Cx0n6G9VspyNszwWQdCRwBbAScJbt28v4xwLnS/pv4CbKZuTALsBXJBn4LfDxF5U2IiIiIiIiIiKWqFrFJttTga5+Ln2gn77nAucOMM7PgZ/3034v1Wl17e2TeP6UuoiIiIiIiIiIWM7V2bMpIiIiIiIiIiKillrFJklrSpokaYak6ZLeJOkCSVPLz0xJU0vf7Vvab5a0f8s4R0u6XdJtkn5YTqlD0rUt98yRdGlpf7mkn5Rxbpd0+JL4R4iIiIiIiIiIiMWj7p5N44HLbR9Y9m0aYfu9fRclfQ3oOyXuNqDLdq+k1wA3S/oJsA7wCWBz209L+hHVJuHft71Ty1gXUTYIp9qjaZrtd0l6JXCHpPNsL3jhkSMiIiIiIiIiYkkZtNgkaQ1gZ+AwgFLoWdByXcB7KCfT2Z7fcvvLALc9b5WyefgIYE7bs1Yv4/TNYDKwennGasBfgN7a6SIiIiIiIiIiYqmqs4xuY+BRYKKkmySdIWnVlus7AQ/bvquvQdIOkm4HbgU+arvX9mzgVOB+4EHgCdu/bHvW/sBVtueV76cDb6AqSt0KfNL2wvYXlNQtaYqkKT09PXVyR0RERERERETEElCn2DQM2Ab4ju2tgaeA41quHwz8sPUG25NtbwFsBxwv6WWS1gL2BTYC1gVWldR+ml37WG8Hppb+Y4DTy0yrf2C7x3aX7a7u7u4akSIiIiIiIiIiYkmoU2yaBcyyPbl8n0RVfELSMOAA4IL+brQ9nao4tSXwNuBPth+1/TfgYuDNfX0lrQ1sD/ysZYjDgYtduRv4E7BZ/XgREREREREREbE0DVpssv0Q8ICkUaVpLDCtfH4bMMP2rL7+kjYqRSgkbQCMAmZSLZ/bUdKIsgfTWGB6y6MOAn5q+5mWtvtLPyStU8a6d6ghIyIiIiIiIiJi6ah7Gt1RwHnlJLp7eX4D73G0LaED/hU4rmwCvhA4wvZcYK6kScCNVJt83wS0brA0DjipbawvAd+XdCsg4NgyVkRERERERERELIdqFZtsTwW6+mk/rJ+2c4FzBxjni8AXB7i2Sz9tc4A96rxjREREREREREQse3X2bIqIiIiIiIiIiKilVrFJ0pqSJkmaIWm6pDdJGiPpeklTJU2RtH3bPdtJek7SgeX7rqVv388zkvZru+ebkp5s+X5aS/87JT2+OEJHRERERERERMSSUXfPpvHA5bYPLPs2jQB+BJxo+xeS9gZOBnYBkLQS8FXgir4BbP8GGFOu/wtwN/DLvuuSuoA1Wx9q++iW60cBWw8xX0RERERERERELEWDzmyStAawM3AmgO0Fth8HDKxRur0cmNNy21HARcAjAwx7IPAL2/PLM1YCTgE+u4hXOZh/3ow8IiIiIiIiIiKWI3VmNm0MPApMlLQVcAPwSeBTwBWSTqUqWr0ZQNJIYH9gN2C7AcYcB3y95fuRwGW2H5T0T50lbQBsBPy6v8EkdQPdABMmTKgRKSIiIiIiIiIiloQ6ezYNA7YBvmN7a+Ap4DjgY8DRttcHjqbMfAK+ARxr+7n+BpP0GuCNlCV2ktYFDgK+uYh3GAdMGmhM2z22u2x3dXd314gUERERERERERFLQp1i0yxglu3J5fskquLTocDFpe1CoG+D8C7gfEkzqZbLfbttI/D3AJfY/lv5vjXweuDucs8ISXe3vcM4soQuIiIiIiIiImK5N+gyOtsPSXpA0ijbdwBjgWlUy+veClxNtWTurtJ/o757JX0f+KntS1uGPBg4vmX8nwGvbrnnSduvb/k+ClgLuO4F5IuIiIiIiIiIiKWo7ml0RwHnlZPo7gUOB34MjJc0DHiGsmfSokjaEFgfuGYI73gwcL5tD+GeiIiIiIiIiIhYBmoVm2xPpVoe1+p3wLaD3HdY2/eZwMhB7lmt7fsJdd4xIiIiIiIiIiKWvbozmyIiFrun51y7rF8h4gXL/9+IiIiIiP7VKjZJWhM4A9gSMPBBYD7wXWA1YCbwftvzylK56cAd5fbrbX+0jDMcOB3YBVgIfM72RZJ2pjrFbjQwzvaklme/tjx7/fLsvcsMqYhYwa2y7k7L+hWWit4Fs5f1K8QSkP+/ERERERH9qzuzaTxwue0DS8FoBHAlcIztayR9EPgM8PnS/x7bY/oZ53PAI7Y3lfQS4F9K+/3AYcAx/dxzDvBl21dKWo2qSBUREREREREREcuhQYtNktYAdqYqBmF7AbCgnBL329LtSuAKni82DeSDwGZlnIXA3PJ5ZnnWPxSSJG0ODLN9Zen3ZI1MERERERERERGxjLykRp+NgUeBiZJuknSGpFWB24B9Sp+DqJa59dmo9L1G0k7w96V4AF+SdKOkCyWtM8izNwUel3RxGe8USSu1d5LULWmKpCk9PT01IkVERERERERExJJQZxndMGAb4CjbkyWNB46jmqX0P5K+AFwGLCj9HwRea/vPkrYFLpW0RRlnPeD3tv9D0n8ApwKHDPLsnYCtqZbaXUA1w+rM1k62e4C+KpOPOPLEGrEiYlnLBsuxIsv/34iIiIiI/tUpNs0CZtmeXL5PAo6z/XlgDwBJmwLvALD9LPBs+XyDpHuoZijdQLWp+CVlnAuBD9V49k227y3PuRTYkbZiU0SsmLLBcqzI8v83IiIiIqJ/gy6js/0Q8EDZowlgLDBN0qsAykbf/x/VyXRIemXfUjdJGwObAPfaNvATqpPo/j7OII//I7CWpFeW77vVuCciIiIiIiIiIpaROns2ARwFnCfpFmAM8P+AgyXdCcwA5gATS9+dgVsk3Uw1C+qjtv9Srh0LnFDGOQT4NICk7STNotr7aYKk2wFsP0d1Qt1Vkm4FBHzvxQSOiIiIiIiIiIglp84yOmxPBbramseXn/a+FwEXDTDOfVTFqPb2P1Lt59TfPVcCo+u8Z0RERERERERELFt1ZzZFREREREREREQMatBik6RRkqa2/MyT9ClJ/yLpSkl3ld9rtdyzS+l7u6Rr2sZbSdJNkn7a0jZW0o3lnt9Jen1pP0zSoy3P/vDiDB8REREREREREYtXnQ3C77A9xvYYYFueP1HuOOAq25sAV5XvSFoT+Dawj+0tqPZhavVJYHpb23eA95dn/IBqw/E+F/Q93/YZQ04YERERERERERFLzVCX0Y0F7il7L+0LnF3azwb2K5/fB1xs+34A24/03SxpPeAdQHvRyMAa5fPLqTYcj4iIiIiIiIiIFUytDcJbjAN+WD6vY/tBANsPSnpVad8UeKmkq4HVgfG2zynXvgF8trS3+jDwc0lPA/OAHVuuvVvSzsCdwNG2H2h/KUndQDfAhAkThhgpIiIiIiIiIiIWl9ozmyQNB/YBLhyk6zCq5XbvAN4OfF7SppLeCTxi+4Z+7jka2Nv2esBE4Oul/SfAhrZHA7/i+ZlU/8B2j+0u213d3d11I0VERERERERExGI2lGV0ewE32n64fH9Y0msAyu++5XKzgMttP2V7LvBbYCvgLcA+kmYC5wO7SfpfSa8EtrI9udx/AfBmANt/tv1saf8eVRErIiIiIiIiIiKWU0NZRncwzy+hA7gMOBQ4qfz+cWn/MXC6pGHAcGAH4DTbFwLHQ3VaHXCM7Q+Ufi+XtKntO4HdKRuIS3pN31I9qllV7RuL9+vpOdcOIdaKrSlZm5ITkrVTNSlrUzTpb5qsnacpOSFZO1VTsjYlJyRrJ2pKTmhW1rpke/BO0gjgAWBj20+UtrWBHwGvBe4HDrL9l3LtM8DhwELgDNvfaBtvF6pi0zvL9/2B/yr9HwM+aPteSV+hKjL1An8BPmZ7xiCv62HDR9aIvuLrXTCbJmRtSk5I1k7VlKxNyQnJ2qmakrUpOSFZO1VTsjYlJyRrJ2pKTmhcVtXtW2tmk+35wNptbX+mOp2uv/6nAKcsYryrgatbvl8CXNJPv+Mps6EiIiIiIiIiImL5N9TT6FYITZrC1pSsTckJydqpmpS1KZr0N03WztOUnJCsnaopWZuSE5K1EzUlJzQra12DLqOTNIpq0+4+GwNfAGYDJwBvALa3PaX0fz/wmZb+o4FtbE+VdDnwGqoi17XAx20/J+kE4N+BR8s9/2n75y3v8FpgGnCC7VMHyZRldB2mKTkhWTtVU7I2JScka6dqStam5IRk7VRNydqUnJCsnagpOaFxWRffMjrbdwBjACStRFVkugQYARwATGjrfx5wXun/RuDHtqeWy++xPU+SgEnAQVQn00G1ifhAhaTTgF/UDRUREREREREREcvGUJfRjQXusX1fX0NVNxrQP5xgZ3tey3OHA4PuTi5pP+Be4KkhvmtERERERERERCxlLxli/3G0FI9qeG97f0lXAI8Af6Wa3dTnSEm3SDpL0lql76rAscCJi3qIpG5JUyRN6enpGcLrRURERERERETE4lS72CRpOLAPcGHN/jsA823f1tpu++1U+zatDOxWmr8DvI5qud6DwNdK+4lUy+ueXNSzbPfY7rLd1d3dXTNRREREREREREQsbkNZRrcXcKPth2v2H3AWlO1nJF0G7Atc2TqmpO8BPy1fdwAOlHQysCawUNIztk8fwntHRERERERERMRSMpRi971pMwAAIABJREFU0z/sv7Qokl5Ctfn3zi1tqwGr235Q0jBgb6oT6ZD0GtsPlq77A7cB2N6p5f4TgCdTaIqIiIiIiIiIWH7VKjZJGgHsDnykpW1/4JvAK4GfSZpalshBVWSaZfvelmFWBS6TtDKwEvBr4Lvl2smSxlBtGD6z9TkREREREREREbHiqFVssj0fWLut7RLgkgH6Xw3s2Nb2MLDdAP0PqfEOJ9R514iIiIiIiIiIWHYGLTZJGgVc0NK0MfAFYCTwLmABcA9wuO3HJb0UOAPYpox/ju2vSFofOAd4NbAQ6LE9vjzjlAHG2h7oO15OwAmlyLVIT8+5dtDgnaIpWZuSE5K1UzUpa1M06W+arJ2nKTkhWTtVU7I2JSckaydqSk5oVta6Bj2NzvYdtsfYHgNsC8ynmtF0JbCl7dHAncDx5ZaDgJVtv7H0/4ikDYFe4NO230A16+njkjYv9ww01m1AV3n2nsCEst9TREREREREREQsh2S7fmdpD+CLtt/S1r4/cKDt90s6GHgf1UbfLweuA3a0/Ze2e34MnG77yoHGamvfCLgeGGm7dxGv6WHDR9bOtCLrXTCbJmRtSk5I1k7VlKxNyQnJ2qmakrUpOSFZO1VTsjYlJyRrJ2pKTmhcVtXtO+jMpjbj6P9Eug8CvyifJwFPAQ8C9wOn9lNo2hDYGpg8yFhI2kHS7cCtwEcHKTRFRERERERERMQyVLvYJGk4sA9wYVv756iWyJ1XmrYHngPWBTYCPi1p45b+qwEXAZ+yPW+QsbA92fYWVJuLHy/pZf28W7ekKZKm9PT0tF+OiIiIiIiIiIilZCgzm/YCbiynygEg6VDgncD7/fx6vPcBl9v+m+1HgN8DXaX/S6kKTefZvrh18AHG+jvb06lmTG3Zz7Ue2122u7q7u4cQKSIiIiIiIiIiFqehFJsOpmUJnaQ9gWOBfWzPb+l3P7CbKqtSbQY+Q5KAM4Hptr/eOvBAY0naqG9DcEkbAKOAmUN454iIiIiIiIiIWIpqFZskjQB2B1pnI50OrA5cKWmqpO+W9m8Bq1GdJPdHYKLtW4C3AIdQFaKmlp+9BxnrX4GbJU2lOgHvCNtzX2jYiIiIiIiIiIhYsobV6VRmG63d1vb6Afo+CRzUT/vvgH53Ll/EWOcC59Z5x4iIiIgX6+k51y7rV1gqmpITkrVTNSVrU3JCs7JGNEGtYlNEREREE6yy7k7L+hWWuN4FsxuRE5K1UzUla1NyQvOyRjTBoMUmSaOAC1qaNga+QDXTaV9gIfAIcJjtOZLWAs4CXgc8A3zQ9m1lrD2B8cBKwBm2TyrtuwGnAsOBG4AP2e6V9H6qvZwAngQ+Zvvmwd65SVXxpmRtSk5I1k7VpKxN0aS/abJ2nqbkhGTtVE3J2pSckKydqCk5oVlZ61I/B78N3FlaCZgN7AA8Znteaf8EsLntj0o6BXjS9omSNgO+ZXtsufdOqr2fZlHt53QwMAO4Dxhr+05J/wXcZ/tMSW+m2lD8MUl7ASfY3mGQ1/Sw4SOH8E+w4updMJsmZG1KTkjWTtWUrE3JCcnaqZqStSk5IVk7VVOyNiUnJGsnakpOaFzWfrdG6s9QTqMDGAvcY/u+vkJTsSrQV7XaHLgKwPYMYENJ6wDbA3fbvtf2AuB8qplRawPP2r6z3H8l8O5y///Zfqy0Xw+sN8T3jYiIiIiIiIiIpWioxaZxwA/7vkj6sqQHgPdTLa0DuBk4oFzfHtiAqkg0EnigZaxZpW0u8FJJXaX9QGD9fp79IeAXQ3zfiIiIiIiIiIhYimoXmyQNB/YBLuxrs/052+sD5wFHluaTgLUkTQWOAm4Ceun/JDq7Wsc3DjhN0h+Av5b+rc/elarYdOw/DwGSuiVNkTSlp6enbqSIiIiIiIiIiFjMhnIa3V7AjbYf7ufaD4CfAV8sy+sOB5Ak4E/lZwT/OGNpPWAOgO3rgJ3KPXsAm/Z1kjQaOAPYy/af+3sx2z1AX5XJRxx54hBiRURERERERETE4jKUZXQH849L6DZpubYP1UbfSFqzzIIC+DDw21KA+iOwiaSNyvVxwGXlnleV3ytTzV76bvn+WuBi4JCWPZ0iIiIiIiIiImI5VWtmk6QRVKfIfaSl+SRJo4CFVKfJfbS0vwE4R9JzwDSq5W/Y7pV0JHAFsBJwlu3byz2fkfROquLXd2z/urR/gWoD8W9Xk6Totd23t1NERERERERERCxnahWbbM+nKvq0tr17gL7XAZsMcO3nwM/7af8M8Jl+2j9MNTsqIiIiIiIiIiJWAEM9jS4iIiIiIiIiImJAgxabJI2SNLXlZ56kT7VcP0aSJb2ifF9L0iWSbpH0B0lbtvT9pKTbJN3eOka5dpSkO8q1k0vb2pJ+I+lJSacvvtgREREREREREbEkDLqMzvYdwBgASSsBs4FLyvf1qfZyur/llv8EptreX9JmwLeAsaXo9O/A9sAC4HJJP7N9l6RdgX2B0baf7dswHHgG+DywZfmJiIiIiIiIiIjl2FCX0Y0F7rF9X/l+GvBZwC19NgeuArA9A9hQ0jpUG4dfb3u+7V7gGmD/cs/HgJNsP1vue6T8fsr276iKThERERERERERsZwbarFpHPBDAEn7ALNt39zW52bggNJne2ADYD3gNmDnsjRuBLA3sH65Z1NgJ0mTJV0jabsXlCYiIiIiIiIiIpapWqfRAUgaDuwDHF+KRZ8D9uin60nAeElTgVuBm4Be29MlfRW4EniSqijV2/IeawE7AtsBP5K0sW3/0+j9v1s30A0wYcKEupEiIiIiIiIiImIxG8rMpr2AG20/DLwO2Ai4WdJMqplLN0p6te15tg+3PQb4N+CVwJ8AbJ9pexvbOwN/Ae4qY88CLnblD8BC4BV1X8x2j+0u213d3d1DiBQREREREREREYtT7ZlNwMGUJXS2bwX6NvGmFJy6bM+VtCYw3/YC4MPAb23PK/1eZfsRSa+lWmr3pjLEpcBuwNWSNgWGA3NfVLKIiIiIiIiIiFjqahWbyrK53YGP1Oj+BuAcSc8B04APtVy7SNLawN+Aj9t+rLSfBZwl6Taqk+oO7VtCVwpZawDDJe0H7GF7Wp33joiIiIiIiIiIpatWscn2fGDtRVzfsOXzdcAmA/TbaYD2BcAHBhs7IiIiIiIiIiKWb0NZRrfCeHrOtcv6FZaapmRtSk5I1k7VpKxN0aS/abJ2nqbkhGTtVE3J2pSckKydqCk5oVlZ61KdA98kjQIuaGnaGPiC7W9IOgo4kupkuZ/Z/my553iqJXTPAZ+wfUVpP5pqLydTnVZ3uO1nJJ0JdAEC7gQOs/2kpJWBc4BtgT8D77U9cxGv62HDR9bNv0LrXTCbJmRtSk5I1k7VlKxNyQnJ2qmakrUpOSFZO1VTsjYlJyRrJ2pKTmhcVtXtW+s0Ott32B5TTpjbFpgPXCJpV2BfYLTtLYBTASRtDowDtgD2BL4taSVJI4FPUG0mviWwUukHcLTtrWyPBu6nKmBBVbB6zPbrgdOAr9YNFxERERERERERS1etYlObscA9tu8DPgacZPtZANuPlD77Aufbftb2n4C7ge3LtWHAKpKGASOAOeXevhPrBKxCNfOpb6yzy+dJwNjSJyIiIiIiIiIiljMvpNg0Dvhh+bwpsJOkyZKukbRdaR8JPNByzyxgpO3ZVLOf7gceBJ6w/cu+TpImAg8BmwHfbB/Ldi/wBIvYrDwiIiIiIiIiIpadIRWbJA0H9gEuLE3DgLWAHYHPAD8qs476m3lkSWtRzVTaCFgXWFXS30+hs314aZ8OvLfvsf2N1fZe3ZKmSJrS09MzlEgREREREREREbEYDfU0ur2AG20/XL7PAi52tcv4HyQtBF5R2tdvuW89quVybwP+ZPtRAEkXA28G/revo+3nJF1AVbya2DLWrLL07uXAX1pfynYP0Fdl8hFHnjjEWBGxLOTUhliR5f9vRERERET/hlpsOpjnl9ABXArsBlwtaVNgODAXuAz4gaSvU81U2gT4A7AQ2FHSCOBpqv2fppTZUK+zfXf5/C5gRnnGZcChwHXAgcCvXecIvYhY7q2y7k7L+hWWit4Fs5f1K8QSkP+/ERERERH9q11sKgWi3YGPtDSfBZwl6TZgAXBoKQTdLulHwDSgF/i47eeAyZImATeW9puoZiQJOFvSGuXzzVSbjwOcCZwr6W6qGU3jiIiIiIiIiIiI5VLtYpPt+bRtzG17AfCBAfp/GfhyP+1fBL7Yzy1vGWCcZ4CD6r5nRKw4sgwpVmT5/xsRERER0b+hLqOLiFhssgwpVmT5/xsRERER0b9BT6OTNErS1JafeZI+JemClraZkqaW/mtL+o2kJyWd3jbWcEk9ku6UNEPSu0v7BpKuknSLpKslrddyz1cl3VZ+3ktERERERERERCy3Bp3ZZPsOYAyApJWA2cAltr/R10fS14AnytdngM8DW5afVp8DHrG9qaSXAP9S2k8FzrF9tqTdgK8Ah0h6B7BNef7KwDWSfmF73gtKGxERERERERERS9SgM5vajAXusX1fX0M5Pe49lFPqbD9l+3dURad2H6QqJGF7oe25pX1z4Kry+TfAvi3t19jutf0U1cbhew7xnSMiIiIiIiIiYikZarFpHKWo1GIn4GHbdy3qRklrlo9fknSjpAslrVPabgbeXT7vD6wuae3SvpekEZJeAewKrD/Ed46IiIiIiIiIiKWkdrFJ0nBgH+DCtksH888FqP4MA9YDfm97G+A6quVzAMcAb5V0E/BWqqV6vbZ/Cfwc+L/yjOuA3n7erVvSFElTenp66kaKiIiIiIiIiIjFbCgzm/YCbrT9cF+DpGHAAcAFNe7/MzAfuKR8v5BqPyZsz7F9gO2tqfZ1wvYT5feXbY+xvTsg4J9mUNnusd1lu6u7u3sIkSIiIiIiIiIiYnEaSrGpvxlMbwNm2J412M22DfwE2KU0jQWmAUh6RdkwHOB44KzSvlJZToek0cBo4JdDeOeIiIiIiIiIiFiKBj2NDkDSCGB34CNtl/rbwwlJM4E1gOGS9gP2sD0NOBY4V9I3gEeBw8stuwBfkWTgt8DHS/tLgWurPciZB3zA9j8to4uIiIiIiIiIiOVDrWKT7fnA2v20HzZA/w0HaL8P2Lmf9knApH7an6E6kS4iIiIiIiIiIlYAQz2NLiIiIiIiIiIiYkCDFpskjZI0teVnnqRPSRoj6frSNkXS9qX/+yXdUn7+T9JWLWPNlHRr3z1tzzlK0h2Sbpd0cml7qaSzyz3TJR2/uP8BIiIiIiIiIiJi8Rl0GZ3tO4AxUG3YDcymOlHue8CJtn8haW/gZKq9l/4EvNX2Y5L2AnqAHVqG3NX23NZnSNoV2BcYbftZSa8qlw4CVrb9xrJv1DRJP7Q98wUnjoiIiIiIiIiIJabWnk0txgL32L6vbOa9Rml/OTAHwPb/tfS/HlivxrgfA06y/WwZ45HSbmBVScOAVYAFVBuFR0RERERERETEcmioeza1nj73KeAUSQ8ApwL9LXH7EPCLlu8GfinpBkndLe2bAjtJmizpGknblfZJwFPAg8D9wKm2/zLEd46IiIiIiIiIiKWk9swmScOBfXi+qPQx4GjbF0l6D3Am8LaW/rtSFZv+tWWYt9ieU5bJXSlphu3flvdYC9gR2A74kaSNge2B54B1y/VrJf3K9r1t79YNdANMmDChdviIiIiIiIiIiFi8hjKzaS/gRtsPl++HAheXzxdSFYYAkDQaOAPY1/af+9pt9y21e4Rq36e+e2YBF7vyB2Ah8ArgfcDltv9W7vk90NX+YrZ7bHfZ7uru7m6/HBERERERERERS8lQik0H8/wSOqj2aHpr+bwbcBeApNdSFaEOsX1nX2dJq0pave8zsAdwW7l8aRkDSZsCw4G5VEvndlNlVaqZTzOGEjAiIiIiIiIiIpaeWsvoyklwuwMfaWn+d2B82bz7GcoyNuALwNrAtyUB9NruAtYBLiltw4Af2L683HMWcJak26g2AT/UtiV9C5hIVZQSMNH2LS80bERERERERERELFm1ik2251MVkFrbfgds20/fDwMf7qf9XmCrAcZfAHygn/YngYPqvGNERERERERERCx7Qz2NLiIiIiIiIiIiYkCDFpskjZI0teVnnqRPSdpK0nWSbpX0E0lrlP7bt/S9WdL+beOtJOkmST9taTuz9L1F0iRJq5X201rGulPS44v7HyAiIiIiIiIiIhafQYtNtu+wPcb2GKplc/OpTpI7AzjO9hvL98+UW24Dukr/PYEJZV+nPp8Eprc95mjbW9keTbUp+JHl2Ue3PPubPH/6XURERERERERELIeGuoxuLHCP7fuAUcBvS/uVwLuh2t/Jdm9pfxngvpslrQe8g6pQ9Xe255XrAlZpvadF+2l4ERERERERERGxnKm1QXiLcTxf8LkN2Af4MdUm3uv3dZK0A9UJcxsAh7QUn74BfBZYvX1gSROBvYFpwKfbrm0AbAT8us5LPj3n2tqBVnRNydqUnJCsnapJWZuiSX/TZO08TckJydqpmpK1KTkhWTtRU3JCs7LWJbu/SUT9dJSGA3OALWw/LGkz4H+oTqm7DPiE7bXb7nkDcDawM/A2YG/bR0jaBTjG9jvb+q9EtVzuj7YntrQfC6xn+6gB3q0b6AaYMGHCtkcceWKtTCu63gWzGTZ85LJ+jSWuKTkhWTtVU7I2JScka6dqStam5IRk7VRNydqUnJCsnagpOaFxWVW371BmNu0F3Gj7YQDbM4A9ACRtSrU87h/Yni7pKWBL4C3APpL2plpet4ak/7X9gZb+z0m6gGr/p4ktQ40DPj7Qi9nuAXr6vh5+wNuGEGvF1pQKalNyQrJ2qiZlbYom/U2TtfM0JScka6dqStam5IRk7URNyQnNylrXUGY2nQ9c0TfjSNKrbD8i6SXA94GrbZ8laSPgAdu9ZfnbdcBo23NbxtqFMrOp7NP0Ott3l8+nANg+pvQdBVwBbOR6L+sGVRUbUUFtSk5I1k7VlKxNyQnJ2qmakrUpOSFZO1VTsjYlJyRrJ2pKTmhc1sU7s0nSCGB3+P/Zu/e4y8d6/+OvNxNmnMspM0IOOeWQITmFoWQrKuWQckizVbYo5VD9bJXaRRE6mAq1E0pIosYWkWPjPM6TYcywtzM5G96/P65rmWVZ930vY631ve/v9Xk+HvOwvoe11udtrfu+17q+14F/b9q9q6RGb6OzmNMTaVPgEEkvAi8Dn2tuaGr38MAvJS2Sb98IfLb5eYDTO2xoAspqVSwlayk5IbLWVUlZS1HSaxpZ66eUnBBZ66qUrKXkhMhaR6XkhLKydqrjnk0jSPRsqplSckJkratSspaSEyJrXZWStZScEFnrqpSspeSEyFpHpeSE4rJ23LNpnl4WEkIIIYQQQgghhBDK0lFjk6QDJd0iaaqk0yQtIGlFSVdLukvSGXm1uub77CTJksbn7Q0l3ZD/3Sjpw03nbivpDknTJB3StF+SjpR0p6TbJO3freAhhBBCCCGEEEIIofuGbGySNBbYHxhvey1gXtLqcN8FjrG9CvAY8Omm+yyc73N100NNzY+xLrAtcKKkUZLmBX5EWu1uDdJcUGvk++wJLAesZnt14PQ3kDWEEEIIIYQQQggh9Finw+hGAaMljQLGAA8AWwFn5uO/BHZsOv+bwPeA5xo7bD9je3beXABoTBa1ITDN9t22XyA1KO2Qj30W+Ibtl/NjPPg6soUQQgghhBBCCCGEPhuyscn2LOBoYAapkekJ4Frg8abGo5nAWABJ6wHL2T6v9bEkvVvSLcDNwL75/mOB+5pOe+WxgJWAnSVNkXSBpFXmImMIIYQQQgghhBBC6JNOhtEtTupptCKwLLAgachbK0uaBzgG+FK7x7J9te01gQ2AQyUtALSbzbzR62l+4Dnb44GfAScNUOPE3CA1ZdKkSUNFCiGEEEIIIYQQQgg9MqqDc7YGptt+CEDSWcDGwGKSRuXeSeOA+4GFgbWASyQBLAOcK+lDtqc0HtD2bZKezufOJM3L1NB4LPKx3+fbZwMntyvQ9iSg0crkz+13RAexQghVe/b+y6ouIYS5Fu/fEEIIIYQQ2uuksWkGsJGkMcCzwARgCnAxsBNpjqU9gD/YfgJYonFHSZcAB9meImlF4D7bsyUtD7wDuAd4HFglH59Fmnx8t/wQ55DmhjoJeC9w5xtKG0IYVkYvu1nVJfTF7BdmVV1C6IF4/4YQQgghhNDekI1Ntq+WdCZwHTAbuJ7Ui+hPwOmSvpX3/WKIh9oUOETSi8DLwOdsPwwgaT/gL6SV7k6yfUu+z38Bp0o6EHgK2KeTUCVdbS4layk5IbLWVUlZS1HSaxpZ66eUnBBZ66qUrKXkhMhaR6XkhLKydkq2hz5rZPGo+cYOfVYNzH5hFiVkLSUnlJf1xYfvrrqMvnjTEm8v4nWN9289lfL+hXLew6XkhMhaV6VkLSUnRNY6KiUnFJe13ZzbbXUyjC6EEHoihiGFkSzevyGEEEIIIbTXUWNTHsa2D2mVuJuBvfL2AcBKwJJNQ+K2AP4ATM93P8v2N/Kxk4DtgQdtr9X0+GeQ5nACWAx43Pa6klYAbgPuyMeusr3vUPWW1IWtlKyl5AwhhBBCCCGEEEa6IRubJI0F9gfWsP2spN+SJvG+HDgPuKTN3S6zvX2b/acAJwC/at5pe+em5/s+8ETT4X/aXneoOpuVdLW5hKyl5ITyehBEI2IYyeL9G0IIIYQQQnudDqMbBYzOk3uPAe63fT2A1PGQPWxfmnsrtaX0YB8nrUAXQqi5aEQMI1m8f0MIIYQQQmivk9XoZkk6GpgBPAtMtj15iLu9R9KNwP3AQU2ryw1lM+D/bN/VtG9FSdcDTwJfsz3kpeSSrjaXkrWUnBBZ66qkrKUo6TWNrPVTSk6IrHVVStZSckJkraNSckJZWTs15Gp0khYHfg/sDDwO/A440/av8/F7gPFNczYtArxs+ylJ2wE/tL1K0+OtAJzXPGdT07GfANNsfz9vzw8sZPsRSesD5wBr2n6y5X4TgYkAJ5544vqf2++I1/v/YUQqZdb7UnJCZK2rUrKWkhMia12VkrWUnBBZ66qUrKXkhMhaR6XkhOKydjy0bZ4OztkamG77IdsvAmcBGw90su0nbT+Vb58PvEnSEkM9iaRRwEeAM5oe63nbj+Tb1wL/BFZt85yTbI+3PX7ixIkdRAohhBBCCCGEEEIIvdDJnE0zgI0kjSENo5sATBnoZEnLkIbCWdKGpAatRzp4nq2B223PbHqsJYFHbb8k6e3AKsDdQz1QSV3YSslaSk6IrHVVUtZSlPSaRtb6KSUnRNa6KiVrKTkhstZRKTmhrKydGrJnk+2rgTOB64Cb830mSdpf0kxgHHCTpJ/nu+wETM1zNh0H7OI8Vk/SacCVwDskzZT06aan2gU4reXpN8+PfWOuYV/bj85l1hBCCCGEEEIIIYTQY0PO2TQCuaDxkkWMDS0lJ0TWuiolayk5IbLWVSlZS8kJkbWuSslaSk6IrHVUSk4oLmtX52wKIYQQQgghhBBCCKEjHTU2STpQ0i2Spko6TdICkk6VdEfed5KkNzWdv4WkG/J9/ta0f9t8n2mSDmnzPMdLeqrN/p0kWdL4uQ0aQgghhBBCCCGEEHpvyMYmSWOB/YHxttcC5iXNr3QqsBrwTmA0sE8+fzHgx8CHbK8JfCzvnxf4EfABYA1gV0lrND3PeGCxNs+/cH7+q+c6ZQghhBBCCCGEEELoi06H0Y0CRksaBYwB7rd9vjPgGtJE4QC7AWfZngFg+8G8f0Ngmu27bb8AnA7sAK80RB0FfKXNc38T+B7w3OtOF0IIIYQQQgghhBD6qpPV6GYBRwMzgAeAJ2xPbhzPw+c+Cfw571oVWFzSJZKulfSpvH8scF/TQ8/M+wD2A861/UDzc0taD1jO9nmvO1kIIYQQQgghhBBC6LtRQ50gaXFSD6QVgceB30na3fav8yk/Bi61fVnTY64PTCANr7tS0lVAu1nLLWlZ0lC7LVqedx7gGGDPDmqcCEwEOPHEE4c6PYQQQgghhBBCCCH0SCfD6LYGptt+yPaLwFnAxgCSDgeWBL7YdP5M4M+2n7b9MHApsE7ev1zTeeOA+4H1gJWBaZLuAcZImgYsDKwFXJL3bwSc226ScNuTbI+3PX7ixIkdhw8hhBBCCCGEEEII3TVkzybS8LmNJI0BniX1WJoiaR/g/cAE2y83nf8H4IQ8v9N8wLtJPZRuB1aRtCIwizTJ+G62bwGWadxZ0lO2V86bSzTtvwQ4yPaUoQp+9v7LhjqlNkrJWkpOiKx1VVLWUpT0mkbW+iklJ0TWuiolayk5IbLWUSk5oaysnVKa33uIk6QjgJ2B2cD1pJXnngbuBf6VTzvL9jfy+V8G9gJeBn5u+9i8fzvgWNKKdifZPrLNcz1le6E2+y+hs8Ymj5pv7BCn1MPsF2ZRQtZSckJkratSspaSEyJrXZWStZScEFnrqpSspeSEyFpHpeSE4rK2mx6prU56NmH7cODwTu9r+yjS6nKt+88Hzh/iuV7T0JT3bzFkoSGEEEIIIYQQQgihUp3M2RRCCCGEEEIIIYQQQkc6amySdKCkWyRNlXSapAUk/ULSjZJuknSmpIWazv+4pFvzfX7TtP+7+TGmStq5af9+kqZJsqTmeZp2yI9/g6QpkjbtVvAQQgghhBBCCCGE0H1DNjZJGgvsD4y3vRZpvqVdgANtr2N7bdIk4vvl81cBDgU2sb0mcEDe/2/Au4B1SZOGf1nSIvlpLietendvy9NfBKxje11gb+DnbyBrCCGEEEIIIYQQQuixTofRjQJG5xXmxgD3234SQJKA0UBjpvHPAD+y/RiA7Qfz/jWAv9mebftp4EZg23zO9bbvaX1S2095zgzmCzY9RwghhBBCCCGEEEIYhoZsbLI9Czia1HvpAeAJ25M2/snmAAAgAElEQVQBJJ0M/C+wGnB8vsuqwKqSLpd0laRt8/4bgQ9IGpOHym0JLDfU80v6sKTbgT+RejeFEEIIIYQQQgghhGGqk2F0iwM7ACsCywILStodwPZeed9tQGMOplHAKsAWwK7AzyUtlhuozgeuAE4DrgRmD/X8ts+2vRqwI/DNAWqcmOd0mjJp0qShHjKEEEIIIYQQQggh9Egnw+i2Bqbbfsj2i8BZwMaNg7ZfAs4APpp3zQT+YPtF29OBO0iNT9g+0va6trcBBNzVaaG2LwVWap5AvOnYJNvjbY+fOHFipw8ZQgghhBBCCCGEELqsk8amGcBGefibgAnAbZJWhlfmbPogcHs+/xzSEDlyw9CqwN2S5pX0lrx/bWBtYPJgTyxp5fz4SHoXMB/wyOuLGEIIIYQQQgghhBD6ZdRQJ9i+WtKZwHWkYW/XA5OAv+bV5ESaj+mz+S5/Ad4n6VbgJeDLth+RtABwWW47ehLY3fZsAEn7A18BlgFuknS+7X1IvaU+JelF4Flg56YJw0MIIYQQQgghhBDCMDNkYxOA7cOBw1t2bzLAuQa+mP8173+OtCJdu/scBxzXZv93ge92UmMIIYQQQgghhBBCqF4nw+hCCCGEEEIIIYQQQuhIR41Nkg6UdIukqZJOy0PiGseOl/RU0/Yxkm7I/+6U9Hjev2XT/hskPSdpx3xsgqTr8v6/N80H9UVJt0q6SdJFkpbvbvwQQgghhBBCCCGE0E1DNjZJGgvsD4y3vRYwL7BLPjYeWKz5fNsH5hXn1gWOJ61eh+2Lm/ZvBTzDnAnCfwJ8Ih/7DfC1vP/6/LxrA2cC33sjYUMIIYQQQgghhBBCb3U6jG4UMFrSKGAMcL+keYGjSBN7D2RX4LQ2+3cCLrD9TN42sEi+vShwP7zSQNU45ypgXIf1hhBCCCGEEEIIIYQKdLIa3SxJRwMzSCvCTbY9WdIXgHNtP5BXmHuVPORtReCvbR52F+AHTdv7AOdLepa0Ut1Gbe7zaeCCoeoNIYQQQgghhBBCCNXpZBjd4sAOpIajZYEFJX0K+BhpmNxAdgHOtP1Sy+O9FXgn8Jem3QcC29keB5zMqxuikLQ7MJ7Uk6pdjRMlTZE0ZdKkSUNFCiGEEEIIIYQQQgg90skwuq2B6bYfsv0iaQ6mI4CVgWmS7gHGSJrWcr9daD+E7uPA2fmxkLQksI7tq/PxM4CNGydL2hr4KvAh28+3K9D2JNvjbY+fOHFiB5FCCCGEEEIIIYQQQi900tg0A9hI0hil8XITgB/YXsb2CrZXAJ6xvXLjDpLeASwOXNnm8VrncXoMWFTSqnl7G+C2/DjrASeSGpoefH3RQgghhBBCCCGEEEK/dTJn09WSzgSuA2aTVogbaqzarsDptt28U9IKwHLA35oef7akzwC/l/QyqfFp73z4KGAh4Hd5XqgZtj80dKwQwkjw7P2XVV1CCHMt3r8hhBBCCCG0N2RjE4Dtw4HDBzm+UMv2fw5w3j3A2Db7zwbObrN/607qCyGMTKOX3azqEvpi9guzqi4h9EC8f0MIIYQQQmivo8amkaakq82lZC0lJ0TWuiopaylKek0ja/2UkhMia12VkrWUnBBZ66iUnFBW1k51MmcTkg6UdIukqZJOk7SApFMkTZd0Q/63bj53UUl/lHRjvs9eTY/zNkmTJd0m6dY8rI5BHms1SVdKel7SQd2PH0IIIYQQQgghhBC6SS3TKr32BGks8HdgDdvPSvotcD6wBXCe7TNbzj8MWNT2wXmluTuAZWy/IOkS4EjbF0paCHjZ9jOSThngsZYClgd2BB6zfXQHmTxqvteM1Kul2S/MooSspeSEyFpXpWQtJSdE1roqJWspOSGy1lUpWUvJCZG1jkrJCcVlVafndtSziTTcbrSkUcAY4P5BzjWwcF65biHgUWC2pDWAUbYvBLD9lO1nBntS2w/a/gfwYod1hhBCCCGEEEIIIYQKDdnYZHsWcDQwA3gAeML25Hz4SEk3STpG0vx53wnA6qQGqZuBL9h+GVgVeFzSWZKul3SUpHmbnqrdY4UQQgghhBBCCCGEEWTIxiZJiwM7ACsCywILStodOBRYDdgAeDNwcL7L+4Eb8rnrAidIWoTUO2oz4KB8n7cDe+b7DPRYHZE0UdIUSVMmTZr0eu4aQgghhBBCCCGEELqok2F0WwPTbT9k+0XgLGBj2w84eR44Gdgwn78XcFY+Ng2YTmpImglcb/tu27OBc4B3AQzyWB2xPcn2eNvjJ06c+HruGkIIIYQQQgghhBC6aFQH58wANpI0BngWmABMkfRW2w/kuZl2BKY2nT8BuEzS0sA7gLuBx4DFJS1p+yFgK2AKwCCPNVdKWnawlKyl5ITIWlclZS1FSa9pZK2fUnJCZK2rUrKWkhMiax2VkhPKytqpIRubbF8t6UzgOmA2cD0wCbggrzYn0rC5ffNdvgmcIunmfOxg2w8DSDoIuCg3Kl0L/Czf59R2jyVpGVKD1CLAy5IOIK2K9+QbTh5CCCGEEEIIIYQQuk62q66h21zQsoNFLLFYSk6IrHVVStZSckJkratSspaSEyJrXZWStZScEFnrqJScUFxWdXpuJ3M2hRBCCCGEEEIIIYTQkY4amyQdKOkWSVMlnSZpASVHSrpT0m2S9s/nLi7pbEk3SbpG0lpNj3OPpJsl3SBpStP+oyTdnu9ztqTFmo4dKmmapDskvb+b4UMIIYQQQgghhBBCdw3Z2CRpLLA/MN72WsC8wC7AnsBywGq2VwdOz3c5DLjB9trAp4AftjzklrbXtT2+ad+FwFr5PncCh+bnXiM/15rAtsCPJc07N0FDCCGEEEIIIYQQQu91OoxuFDBa0ihgDHA/8FngG7ZfBrD9YD53DeCivO92YIW8Kt2AbE+2PTtvXgWMy7d3AE63/bzt6cA0YMMOaw4hhBBCCCGEEEIIfTZkY5PtWcDRwAzgAeAJ25OBlYCdJU2RdIGkVfJdbgQ+AiBpQ2B55jQeGZgs6VpJEwd4yr2BC/LtscB9Tcdm5n2vImlirmPKpEmThooUQgghhBBCCCGEEHqkk2F0i5N6GK0ILAssKGl3YH7guTwc7mfASfku/wUsLukG4D+A64FGr6VNbL8L+ADweUmbtzzXV/O5pzZ2tSnpNcvn2Z5ke7zt8RMnDtSGFUIIIYQQQgghhBB6bVQH52wNTLf9EICks4CNSb2Mfp/PORs4GcD2k8Be+VwB0/M/bN+f//ugpLNJQ+IuzefuAWwPTLDdaFCaSZoXqmEcaQhfCCGMKM/ef1nVJYQw10p6/5aStZScEFnrqpSspeSEsrKGUIJOGptmABtJGgM8C0wApgBPAluRejS9lzSxN3kluWdsvwDsA1xq+0lJCwLz2P5Xvv0+4Bv5PtsCBwPvtf1M03OfC/xG0g9IvapWAa55g5lDCKHvRi+7WdUl9NzsF2ZVXULokRLev5DewyVkLSUnRNa6KiVrKTmhvKwhlGDIxibbV0s6E7iONMTtemASMBo4VdKBwFOkhiWA1YFfSXoJuBX4dN6/NHB26uzEKOA3tv+cj51AGpZ3YT5+le19bd8i6bf5cWYDn7f90hvMHEIYJuIKVhjJ4v0bQgghhBBCe530bML24cDhLbufB/6tzblXknogte6/G1hngMdfeZDnPhI4spM6QwgjS1zBCiNZvH9DCCGEEEJob8gJwkMIIYQQQgghhBBC6FRHjU2SDpR0i6Spkk6TtICkCZKuk3SDpL9LWjmfO7+kMyRNk3S1pBXy/g3zuTdIulHShwd7/Lx/q/wcUyX9UlJHPbFCCCGEEEIIIYQQQjWGbGySNBbYHxhvey1gXmAX4CfAJ2yvC/wG+Fq+y6eBx/LQuGOA7+b9U/NjrAtsC5woadRAjy9pHuCXwC55/73AHt0IHUIIIYQQQgghhBB6o9NhdKOA0bln0RjgfsDAIvn4onkfwA6kRiKAM4EJkmT7Gduz8/4F8v0He/y3AM/bvjOfcyHw0dcTLoQQQgghhBBCCCH015CNTbZnAUcDM4AHgCdsTyatPne+pJnAJ4H/yncZC9yX7zsbeILUcISkd0u6BbgZ2Nf27EEe/2HgTZLG58fdCViuXY2SJkqaImnKpEmTXu//gxBCCCGEEEIIIYTQJZ0Mo1uc1FtpRWBZYEFJuwMHAtvZHgecDPygcZc2D2MA21fbXhPYADg0z/3U9vFtmzRc7xhJ1wD/Ama3eWxsT7I93vb4iRMndpo9hBBCCCGEEEIIIXRZJ8Potgam237I9ovAWcAmwDq2r87nnAFsnG/PJPdAysPiFgUebX5A27cBTwNrDfD4G+fzrrS9me0NgUuBu+Y6aQghhBBCCCGEEELouU4am2YAG0kaI0nABOBWYFFJq+ZztgFuy7fPZc5E3jsBf7VtSSs2VpOTtDzwDuCeAR7/tnzeUvm/8wMHAz99I2FDCCGEEEIIIYQQQm+NGuoE21dLOhO4jjSM7XpgEqkH0+8lvQw8Buyd7/IL4L8lTSP1aNol798UOETSi8DLwOdsPww8PMDjA3xZ0vakRrGf2P7rGw0cQgghhNfn2fsvq7qEviklayk5IbLWVSlZS8kJZWUNoQRKUyPVikfNN7bqGvpi9guzKCFrKTkhstZVKVlLyQmRta5KyVpKToisdVVK1lJyQmSto1JyQnFZ283R3daQPZtCCKFX4gpWGMni/RtCCCGEEEJ70dgUQqjM6GU3q7qEvpj9wqyqSwg9EO/fEEIIIYQQ2ovGphBCZUrqGVJS1lLEaxpCCCGEEEJ70dgUQqhMST1DSshaWg+YEl5TSK9rSQ1rpWQtJSdE1roqJWspOaGsrCGUoI4ThFdC0kTbk4Y+c+QrJWspOSGy1lUpWUvJCZG1jkrJCZG1rkrJWkpOiKx1VUrWUnLC8M86T9UF1MjEqgvoo1KylpITImtdlZK1lJwQWeuolJwQWeuqlKyl5ITIWlelZC0lJwzzrNHYFEIIIYQQQgghhBC6JhqbQgghhBBCCCGEEELXRGNT9wzbsZI9UErWUnJCZK2rUrKWkhMiax2VkhMia12VkrWUnBBZ66qUrKXkhGGeNSYIDyGEEEIIIYQQQghdEz2bQgghhBBCCCGEEELXRGNTCCGEEEIIIYQQQuiaaGwKIYQQQgghhBBCCF0TjU0hAJL2q7qG4UDSglXX0E2Sxg1y7IP9rKWfJC1Ut9eyQdLbqq6h3yQtUXUNIYQQyiRp/qprCK+PpFOqriEEiMamuSLpuMH+VV1fN0k6tun2F1qOndL3gnpn76oL6CdJYyWNlzRf3l5K0reBuyourdsukrRC605JewPHvubsEU7S5yTNAO4F7pN0r6TPVV1Xl51TdQH9IumDkh4CbpY0U9LGVdfUK5IekfQnSV+VtIWkMVXXVAVJq1VdQy9IelObfbVqRJU0j6R58u35JL1L0purrqsfavh3BgBJHx1g/3ySvt7venpJ0gOS9hrg8JV9LaaHJH1H0lIDHPtuv+vpobWrLqDf8veaD+fPTrX8W9ogafnG31BJG0k6SNKHq66rnWhsmjv7ApsC9wNTgGtb/tXJ5k2392g5VtwvsjqQdABwA3A8cJWkPYDbgNHA+lXW1gMHAhdKWqWxQ9Khef97K6uqByR9Ddge2ML2W2y/GdgS+EA+VhequoA+OhLYzPZbgY8C36m4nl5aEfgh8CbgMFJj6T8k/VDSx6stra8mV11AN0naUtJM4H5Jk1sa/2uTVdKOwAPALEk7AJcBRwM31a0XraQvtvz7EvCNxnbV9XXZREkXSFqxsUPSB4CbgLdUV1ZPPAfsKelMSYu2HKvT393PAf+Q9G9tjm3T72J6aIyk9XKj92v+VV1cN0l6r6QpwH8BJwH/DvxC0iWSlqu2uu7LDd1/JX2H+xbp4vkSwP7NnUSGi1FVFzBCvRX4GLAzMBs4A/i97ccqrao3NMDtullb0pNt9guw7UX6XVAPTQTeYfvRPCRpGrC57asqrqvrbJ8v6XnggvxlYB9gA1Leuv28fhJYx/ZzjR22785f1G8EvlVZZd01drAepLb372cxPTbb9u0Atq+WtHDVBfWK7SdJjQ+T4ZUhvXsBBwD7Ab+trrruGuT9K2CxftbSB98D3m/7Fkk7kRr/P5n/3tTpM8XhwDqkizY3AhvYvkPS8sDvgT9WWVyXHQGcD9zCnNdwXqB2v59sv1/SrsD/SPoNsBawJLCz7Rurra7rHgO2AL4KXC9pb9uX5GOuqqgeuJv0eenU3HB4UNPnpjr9ThoLfJ/2mQxs1d9yeupY4H22H8oNwz+wvYmkbYBfAO+rtryu2xVYHRgDzACWsf2MpFGkzgTDSjQ2zQXbjwA/BX4qaSzpRb9F0sG2/7va6rpuHkmLk3rBNW43f7ioi5ttr1d1EX3ynO1HAWzPkHRnHRuaGmxfJGlP4BLgCmBCc4NMnbTLZftZSS9XUU+PPEv9epAOZKmWngKv2rb9gwpq6glJywIb538b5N3XAl+jRkM4sr2ALwHPtzm2a59r6bX5bN8CYPtMSbcBZ0k6hHp9gcX2/wJImmH7jrzv3sbQuhpZE/gBsCBwRP6Ss4ftIyquq1d+S8p8IPA4sJXtO6stqTdsG/iWpMnArySdQ/odXCe2PVXSu0mN4VMk7Wb7pqoL67JptuvUoDSYeW0/lG/PAJYHsH3hcOzp0wXP2X4BeEHSP20/A2B7tqQXKq7tNaKx6Q3I3RB3JXW7vIB6fgFalJSr0cB0XdOxWn1QLMi4livrSzVv16lniKR/kd6nAuYHJgAPSqpjj7WZkibYvqh5p6StSMM76uIR27+suog++Rmv7i3Qul0nM0l/X44BDskfpOrqH8BU21e0HpD0n/0vp6delLRMoyEm93CaAJwHrFRtad0laR7bL9M0B6SkeYH5qquq+2zPAHbKwwUvlHRM1TX1iqRNgR8DlwPLkYbf/1HSGcCRtts1GI9Ur/SAsX2NpPHAccBV1G/IYOPi3P65d9MfB+sxHYa9KZJ+AVwE7EC6uIzS3I916hjRsJikj5B+ZhfJt8nbrUNgK6fUiB1eD0lHkOZGuQ04Hfiz7dnVVtUbkpa3fW/VdfSapMNsf7vqOvohz9E0oFK+yEuav04fFCWtCfwB+DupgdikHiKbADs0eheMdJKusr1R1XX0g6SN6tzrsJmk9wDvIfVsWhG4h9Sj6UpgSs1+Vt9MujL5TNW19JqkrYGHWoccSVoM+LztI6uprLskbUDqIf1cy/4VgE1t/7qKunotf5k7Ani37c2HOn+kyfPAfM72NU37xpCGTe5guzaTEEs6yfZrFsvJw1+/VZeskq5vHckgaUnSXD/b2a5F44SkbWxfWHUd/aC0AMVngDVIw5hPsv2SpNHAUnX7Hivp5MGO2x5oov9KRGPTXMhDUu4mDeeAOT18Gr0lajNxtqTrbNdqIrmBSNoS+A/gHXnXbcAJTWPWa0/SqDo1nEr6uu1vttm/CHCu7S36X1XvSFoA2I3U5V+kOTVOrdOwQUm7N764SdrE9uVNx/azfUJ11XWXpOuBa4Cv2H6i6nr6KX9J/yDwBWCc7QUqLSiEUJym3mrtjq1dw6FXtSdpnO2ZAxyrzQUeSTfTfgRK7b6rtsqNT2sBs2w/WHU9/SRpadv/V3UdzaKxaS7kCR8HVKcW1HZXAOoor0pxAvAN0lAOAe8ijVXfz/b5FZbXVZL+bnvTfPu/bX+y6VitGhfzvAP/sP3Vpn3LAH8BzqrxHBO11fwebX2/1vD9Ow+wP2n1nG/WcE7AV1Faqrgxb9MmwOKknk2X2z66ytq6KQ8/Gmf7R3n7atKkwwAH2/5dZcV12RBZv2L7zMqK66JSckJZWVvlIfhbki7qfND20hWX1DWS/sgg02PY/lAfy+mp/D3uadsPS9qItML4NNvnVFxa1xT2XfWnwPF5mPaipM8NLwFvJk0Af1qlBfZYzvxR0u+l1W2PrbikV4nGpjAoSQ+Shgq2VZf5fSRdAnyhTVf/tUm/wN5bSWE90NyA2ObLeq0aF3NPnzOBO21/UdIqpPnVjrJ9YrXVdVfT/FSvOUSN5qdqef++6v1at/dvg6Q1SB+e5mHOHGS1eU0BJD1MmlvsivzvctvTqq2qNyRdDuxi+768fQNpPrkFgZNtT6iyvm4qJWspOaGsrA15MundgA+TvsB+ntQ7ujar2kpqfM4VaX7AfZqP2/5b34vqAaVl4/ck/S09HdiaNMfPu4EbbR9QWXFdJGk159VsW6eNqFMPLgBJt9heM98+ANjC9o754vIFNf1cOBr4EOn30rtI83nuCFw6UG/MqsQE4XOhzZc6Aw8DF5OuSj5SSWG9UcrKT8u0NjQB2L5JUm2uXGWDtTDXqvXZ9nOSPgycLul00pwwB9g+u+LSus52XSeObtX6u3egY7Ug6dPAIaTlqH/k+l4hWq/x5bWVpA/artPS8fO1ZP17/tzwiKQFqyqqR0rJWkpOKCirpCOBj5NWuDqN1Pt9ims4t2VzY5Kkp+rSuNTGiFo2/g34DakRAtLFquZe3z9u2R7pmhcU2Qb4HaQVQlNnxHqRdCqwOTCZNCrnr6SeeZdUWddAorFpLrT7UidpcVJL+U+Bj/W7ph4qZeWnp+fy2Ei0WG6AmYc5KxrAMF3F4I3QnGXirwG+AlwGrNjY7xotHd9K0ljmrMJxf43m4lpN0k2k9+tK+TZ5++3VldV9kq4gTZS9mfNqXjX2P5Leb/ue5p2S9iY1tNWpsWnx5g3b+zVtLkm9lJK1lJxQVtaJwB3AT4Dz8gWsujb4N6tzxhG1bPwboAFut9se6R6XtD0wizQE/9OQ5qEFRldZWI+sBTxGmlv4dqfJ0Iftz2w0NnVJ7kp7jKRPDnnyyFKnX7yDWUnSuW321+4LLPA3UtfLxu0PNh27tP/l9FRzw/BxLfuG7S/muSHpUOBNtr+Rd10JPAG8Cfgl8J2qauuy1asuoI9Os3181UX0yYGkZdS3s30XvPKe3o203HidXC3pM7Z/1rxT0r+TGsbrpJSspeSEsrIuA7yP1BvmWEkXA6PrtpgKvLJKZsO8+SL6K40Sth/tf1U9MaKWjX8DSuoF/u+kz/jLkEYvNC7OTQD+VFlVPWJ7nTzH5W6kC3UPAgtLWmY4XpiMOZu6KM9+f22dZviXtD6DTxh4XR/L6Zmmsept1ak7saSP2D6r6jr6YYhVR2o1NEfSdaQeME/n7ettrydpXuBvjUnh60rSJsButj9fdS3dUrcJz4ciaQJwImnegX2ADYDt6zQvCoCkpYBzgOdJC1IArA/MD+zoYbaSzBtRStZSckJZWZvlOSC3JzU8bQpcZHu3aqvqHknTmTMnYCvbrsWFV42wZePnVtOcuwJ2Zs78uwI+XqfJ7Qcj6QDbx1ZdRy9JGk/6vfQxYKbtjSsu6VWisWkuNLWCN1uc9MP896aeBSNevorTsD4whTl/iGx7q/5X1T+SliNNhHlU1bV0S0lfYCXdAbQbmrMX8DXbK1VSWA+0mex9T9un5NvX2l6/suJ6RNK6pCs7Hwemk1YYrE1PoJJ+VhskbUr6InsF6QPxcxWX1HWNXhGStgLWzLtvsf3XKuvqhVKylpITyso6EEkLAx8pZJqJMAJJ2mOw46W8dyXNsP22quvoB6UJqjZvdJCQdKjtykc1RGPTXGjTKm7gEeAS27XrrtdQ15WeWklagtQ6vCswFjjb9kHVVtU9JX2BlbQd8EOg3dCcDwzU62kkknQnsKbtF1v2zw9Mtb1KNZV1l6RVgV1IP5+PAGeQlrYddJnfkUjSbOCZdoeo32p0jYU3ROoh8SJp6eI6Zi3pd3ARWUvJCcVl/eJgx+s076OkQV/TGo1kGAesYPvvefuLwEL58G9c01VQSyXpPtvLVV1HFYbL7+qYs2kuDNbFUtIGtv/Rz3r6qLYtk/kq1YdJjRCrAmcDb7c9rtLCeqMxwXKrxpe62gwDtX2+pOeBCyQ1D83ZvG5Dc4AzgRMl7deY8DKvDHRCPlYXt5Mmev9g40OhpAOrLalnbi6hgR+KWk0R6jc562BKyVpKTigr69GkFcouIA0bbM5et8/E32+6vT6vXonaQF1GMhwFnNq0/e/AJNLqdEcAn6iiqG7LF84/T5pI+iRS7s2AfwJfKqhRrW4/p6/HsPhdHY1NXSBpDeZcaX8CGF9tRWEuPEia2PJrpKGQziu21dF0Xj0peK3ZvkjSnsAlpKE5E+o4NAf4OnAkMEPSvXnf24Bf5GN18VHS79uLJf2ZOXMShBEsz4eyL7AycBNwUt0m4G2y5GA9JurUW4JyspaSE8rK+i7S35t/IzW+nEaaq6l2X2Btb9m4nUcybDnY+SPYO2yf17T9jO3vA0i6rKKaeuE3pKlPViF9vzmZ1NN/M+DnwBaVVdZlTT2jX3OIeq5G16lh8XsqGpvmkqTlSY1LuwKzgeWB8a1zw4x0ko5nzpt1nKTjmo/b3r//VfXEYaQPFD8BfiPpjIrr6aUXbN879GkjX5uhOROAB/O45loNzbH9EnCIpCNIX9gBptl+tsKyus722cDZudfWjqRVzJaW9BPSkNfJlRbYXb+ruoA++iVp6NxlwHakuWC+UGlFvTMvadhGCY2kpWQtJScUlNX2DaSeTYdI2pj0mf94SQfbbreCcV0Miy+pPbJAy/aEpttv6WchPba07cPy5917m+aevV1SbRZSgcF7RuepJEo1LH5HR2PTXJB0BWl5zNOBnWzfJWl63RqasilNt68d8KwRzvYxwDGS3k76MHEOsKykg0lfYO+stMDuurzqAvqlpKE5kr5i+3u2n5W0mu3fNR37tu3DqqyvWxqT0+ZV904FTs1LNn8MOASoTWOT7W9L+gBwKLAG6QvArcB3bZ9faXHdt4btdwJI+gX1W0K92QN1WkhkCKVkLSUnlJUVAElLAusB7wRmknrDh5HpX5JWbXyut/0oQF5K/qlKKw5RTTsAACAASURBVOuulyBdVZX0cMuxlyuop2ckfd32N9vsXwQ4lxr14gLI02Wc0MGpw+KCZTQ2zZ2HgHHA0sCSwF3U9yrAGcDCth9q3pmXvn2ympJ6x/bdpKFIR0p6J6nh6QKgNquWAX+RtHyjd5Ok/0camnQv8AXb0yutLsytXYDv5duH8uo/MtuSeu/VwTWkoQ2vyB8WT8z/akPSPqShZV9hTsP/eOC/JI2zPamy4rrvlYnt80pXVdbSa7UO16KUrKXkhIKy5pVrdyb1hjmTtEJmLRuaChrJcDhwnqQjgcak5+uTPiPVqTft2yWdS/p5bdwmb69YXVk9sZmkI21/tbFD0jLAX4CzqiurZ/Ymzcc6KNvf7kMtQ4rV6OaSpEVJX9B3JQ1ZWYy0xHqtrsZKmgT82fZZLfs/AWxq+7PVVNZdkibbfl/VdfRDnhx8I9vPSNoe+AHpfbwe8DHb76+0wDBXmleLbF05sk4rSdYpy1Ak3Ur6Pftoy/63kOaWW72ayrpP0kvA041N0jwLz1DP1egWr+ECBW2VkrWUnFBc1peBm4EZedervjTZ/lDfi+oRSXsMdtz2L/tVS69JWot0EWfNvGsqcJTtqdVV1V2S3jvYcdt/61ctvZbnfDwTuNP2FyWtQuoocJTtWl2EhOGzylynorGpC3Ivn51JX9iXq9MSi5Jutb3GAMdusb1mu2MjTWFfYG+0vU6+fRJwh+3v5u0R9QsszNH82rW+jnV6XSXNJDWQtlWnyWkl3TZQg9Jgx+qsDl90WyYzbfQSMam3+Xy2a9PrvJSspeSE4rIW84W9U5KOt/0fVdfRa3XOKWkT27WaUkPSm0jT27wIvAc4IM/xWTuSZpMuxr3mEMPw4lxt/iBUKXepPZ40aeAK1VbTdYN1l56nb1X03qKSPjLQwdaeXSOcJC1E+kU1Afhx07HWiRPDyLGOpCfJvULybfJ2nV7XYianBZ6UtI7tG5t3SloH+FdFNVXtIlqGUY40rXPJSVoY+BxpCe5afTguJWspOaG4rMU1JnVgk6oL6JMRnVPSvMDHgbGkESpT82iGw0g9h2tzgb1pdcxrSD3WLgNWbOyv00XI7OaR1EEiGpvmkqT3kH6AL7X9oKS1SZPTbgbUpmcTaeWuDVuHB0ragDR3VV0sCmxP+y+wpl5jfo8lra7yJHCb7SkAktYDHqiysDD3bM9bdQ19UtLktF8CzpV0MmmBBgMbAHsAu1dZWIVq08goaTHgAOBTpGWqN7D9SLVV9UYpWUvJCWVklXQzrx46Z+Bh4GLgaNvPVVJYCEP7Ben76DXAcZLuJfX4OcT2OZVW1n3NDeDHtdkXKhSNTXNB0lGkhokbgIMlnUe6qvNt0qRddfJl4LeSTmHOanTjSR8udqmqqB6413bdXru2bJ8k6S/AUkBzj4kHgD0rKSr0TP5C8HnbR1ZdS5fUprFhKLb/LundpL8ve5Ky30Kac+1/q6ytQiN+7L+kJUgNiTsDJwHr2X6i2qp6o5SspeSEsrKSPuu3ejOpwf944DP9LSeEjo0H1rb9cp7T6GFg5Tp+drB9RCfnSTrU9nd6XU8fDLjKnKQNbP+jn8UMJeZsmgt50tZ32X5O0uLA/aQf6LsqLq0nJC1N+rKzVt51C3BCnVbkKGnOpnYkrUSac2wX22sNdX4YfiQtB3wdWBY4h3Sl+Zvkq862a7HKSl6C+qWBjrdOph3qpQ7zj0l6mtQz+GTaDIesU5f/UrKWkhPKyjqYUj83lpJ7pOes89ydc6uu/w8krUHqALIr8ITt8RWX9CrRs2nuPNvoOmv7MUl31LWhCcD2/5GWCq2zTzZv5NWeNgdm2L62/V1GNklvJV2Z3A1YG/gO6RdVGJl+BfwN+D2wLXAVqWH4nTW7knUNqXfLQENe397fcnqnzRCOVw6RJoFcu88lDQd16Nl2FHNe19au/nW7AlhK1lJyQllZB1OneUtfjx9WXUCfjPScq+XVpyH93Vwpbwt4ubFQUGHq8PkBAEnLk76z7QrMBpYHxtu+p8q62omeTXNB0uPApU27Nm/ertlSqEV82clDIQ/JE+i9FbgOmAKsBEyyfWylBXaRpM+QfjmNA36b//3B9oqVFhbekOZVBvP2/wFvs/18hWWFNyB/mBiQ7Xv7VUuVJM2w/bZ8+8117r02HLvA90opWUvJCfXLKqldL4jFSXPmPVWn1cokjSc1JM4CDiUNkdwQuBOYaPv6CsvrmoJytvv8INJn/8Nsb9fnkipXl55Nkq4gzTV8OnC67bskTR+u3+OiZ9Pc2aFl+/uVVNEf7car19GKtqfm23sBF9r+VF5l5XLSpNp18SPgSmC3psnBo9W5BvKw3saVm/8FxkhaEOozvEzS2wY7bntGv2rptVIakzrwytXIuryPm7V2gSfNtVFLpWQtJSfUPmvr53sDjwCXAJP6Xk1v/Zg0imEx4ArgQNvbSGqsWvyeKovroiJyNn9+kLQuaRTDx4HppB7wJapLz6aHSI2GSwNLAncxjHuVRs+mLpN0hu2dq66j2/Ikw6vkzTvrNhmkpBtsr5tvXwT8zPbprcfqIE/u+THSB8OlST2b9rRdp1UUiyPpHuBlBhheZrsWw8uaels25zTpD+5SdVqVT9KngTfbPipvzyINWxHwFds/qbK+fmnu2VQXI6kL/BtVStZSckJZWQciaek8zUQtNM9R1Po7d6TPX9SsoJyrMqcR+BHgDOAg24P2mK4bSQvafjrfPsz2t6uuqRskLQp8lPT6rkxqPH1/6+rxw0H0bOq+WrSIN0iaj3T1ZkdSa7iA5SWdDexr+4Uq6+ui+yT9BzATeBfwZwBJo4E3VVlYt9l+GPgJ8BNJ40h/jB6UdBtwtu3DKi0wzBXbK3RynqQ1bd/S43J6xvY7m7clrQAcDGxNWhG0TvYlzb/V8KDtsXllmcmkn+NakPTFgQ4BC/Wzll5r6QK/U1MX+Huqraz7SslaSk4oK2urpi94uwGrA2OrrairnpP0PtJra0k72j5H0nsZZFGOEaiUnLcDlwEftD0NQNKB1ZbUO5LGAm8FbrL9gqSlgANIK/kuC1CXhiaA3OnjJOCknHVn4FhJyw23zgOlTm4XOvc1UmPLcrbXyz183kZqqPx6pZV116eBNUm/lHa2/XjevxFpxZVasj3T9tG21ycND32u6ppCz/131QV0g6RVJJ0CXABcC6xh+/hqq+q6eWw/0rT9O4C8QMXoakrqmYUH+LcQI3+i1lYPkbI1usDDMO4C/waVkrWUnFBWViSNlrSzpD8AU4EfAN8ChtUXui74LPAlYG/g/cCWeY7aHwO1WM02KyXnR0nTKVws6Wd5mGBdhpG9iqQDgBuA44GrJO0B3Eb6nLR+lbX1g+0HbR9ve2PSIjrDSgyjmwsDTBgI6Yf4PNtv7Wc9vSRpKrCh7Wda9i8EXGV7rWoqC90maRvS0Jxtqq4l9M5I7yYuaS3gq6TG4e8Bp9mu09XIV0iaZnvlNvvnAabVZWhkiUZSF/g3qpSspeSEcrJKOpW0CNBkUk+uv5J+9w7LiXhDaJXn7dyR9LO6FfBL0iiGyZUW1kWSbgU2tf1ontdzGrC57asqLq3vhuO0A9HYNBckXTzYcdtb9quWXpN000Arzkm6uXVIy0gl6WQGvjJn25/uZz29JGkr4KekbqXnkIYe/YrUWHqk7bMqLC/02EhfjUPSS8B9wJ9o0+Xd9v59L6pHJP0YeNT211r2fwtYwva+1VTWfZKOG+x4nV7XVk1d4Hcl9SKuW4+JV5SStZScUO+skm4kfTb6FXCG7fsk3V3Hhn5JVwJftf3XNscusj2hgrK6rpSc7Uh6M2nO1p1tb1V1Pd3S+rlW0tRSO0NIum+4/Q6OxqYuk/Ru21dXXUe35D+0W9C+6+XFblpqfSST9NE2u99GGu87r+1xfS6pZyRdDxxIWpHuA6QPUV+3XbehKqGNGjQ27ckgQzZs/7J/1fRWviL5c2AD4Ma8ex1gCvAZ2/+qqrZuy93eG44grRb0ijq9roORtHxjFSFJx7tGS6u3KiVrKTmhnlklrUaao2ln4EFgNeCdtv+30sK6LC9A8QRwPnCo7Rebjo3oHtHNSslZEkkPknoeNuzSvF23i1W50bDtIeDG4fadNRqbumw4dl97I0pZ4aqZpLcDh5G6Th8D/KJGE6G3uwLwT9srVVlT6B9JV9neqOo6Qufy76Q18+attv9ZZT29Fh/4k5HeMPx6lJK1lJxQz6ySxpMannYCZuY5UmpB0nXApsBxpIVydrV9R+NYXV7LUnKWpOVi1WvU7WKVpOm8dlXmVwy3Yb6xGl331WryNXe4wlUdSFqdNBfMesBRpNX2ZldbVU8sJukjTdtq3o5hdCPTIHPJAWD7uvzfEd3QJOmPDN6z6UN9LKenJO1u+9e275b0VtuXNx3bz/YJVdbXQ3EVLIQw7NieAkyR9CXSBclayfOz7iPpw8CFkr5t+6fU77tNETlLUbfGpKEMt8akoURjU/fV6kOypHOAy4ErgH/UqYdPM0m/A8YDR5OGmL0ELCKlvzu2H62uuq77G/DBAbYNRGPTyPT9QY6ZNDFkHRxddQF99EXg1/n28aSrsA17A3VtbAohhMpJWoA0fO4x4I/AV4DNgH8C36ywtJ6yfbaka4BTJG1HWhW0dkrJWXeSNgXebvtXeftMoDHU7Fvt5ucayRoXIvPtTYb7hchobJoLg1xZF/CWPpfTaz8HNgaOBNaWdDtzGp+usP1/VRbXRRuQXtODSEuiwpwrHAZqM1zQ9l6dnCdpj9KuFoxkdVqYYAjTbc+ouog+0QC3222PaJL+xZy/q2MkPdk4RBqyvUg1lVWqVq/xEErJWkpOqEfWXwEvAguSPhtOJTXybwqcAmxfWWXd92Dzhu1ZwDaSvgzUaZXiUnKW5AigeX64dwB7kn5uDyOtIlknI+pCZDQ2zZ3BrqzX6qq77fOA8wAkzUsaYrYFaZjZisC8lRXXRSUNF3wdvkBaIjWMEJKWB562/bCkjUgfiKfZPqfi0rrpHPIfVkm/t91ucv+68AC3222PaLYXrrqGYaikRRtKyVpKTqhH1jVsryVpFGmOpvfm/X/OC+jUhu1tB9h/lKTaTClRSs7CLGL71qbtu2xfCyDpOxXV1Esj6kLkPFUXMBLZ/lu7f8DdwIZV19dtkpaQ9CFS76ajSRMj/g+p9bQWJO3edHuTlmP79b+iYWHY/cIKA5P0/0hXb66S9C3gWGAJ4AuSjq20uO5qfl/WpsfhAFaTdJOkm5tuN7bfUXVxvSZpQUmfkPSnqmvpJknjJV0s6deSlpN0oaQnJP1D0isTo9s+pcIyu6KUrKXkhLKyAi8A5Pk772859lL/y6nMgVUX0Cel5KybxZo3bDfPS7t0n2vphxF1ITJ6Nr1BkpYAPgbsCowFzq62ou6SdBdpidDfA38hjX19qtqqemJEdUnsk2H3CysMahdgdWAMMANYxvYz+YrsDZVW1l2D/ZGtm9WrLqDfJM0HbEda8Wlb0t+en1ZaVPf9GDic9AH5CuBA29tImpCPvafK4rqslKyl5ISyso6TdBzpIkfjNnl7bHVl9V0pFx9LyVk3t0v6N9uvujAlaXvgjopq6qXVJN1Eer+ulG+Tt4fdRVjZdf+s3n2SFgY+TPowvCqpgWln2+MqLawHJB0KbET6o3oncGX+d73t2lzVaV5qu3XZ7VKX4S4190jVvGRvm/dwbZbzlfQS8DTpj+po4JnGIQqZ2ycPad7F9qlV19ItkrYhXbR5P3AxcAZwfB2HOLf8vZlh+23tjtVBKVlLyQnFZS1qSfWBtL7OdVVKzrqRtDLwJ1Lj93V59/qkOYe3t31nVbX1Qp4yY0C27+1XLZ2Ink1z50HgGuBrwN9tOy+fWTu2XxnrKmlV0g/uZ4DNJD3UNH59pBtRXRL75PKhTwnDyGKSPkJqdFkk3yZvL1pdWd1luxbzxHVC0iLA50mN/ecCFwL7kRYyuAGoTWMTqefsZcCmtqcDSKrDnC/tPCfpfaSfS0va0fY5kt5L/YbmlJK1lJxQUNZOG5MkHW/7P4Y+c/hqWqSheXEcmHNhpxZKyVkS29MkrQ18Algz774U2Nf2c/+/vXsPsqyqrzj+XTMDQhQUI2hkRJgRRHFARhSIigFEBQQFSwR8AGIUn4iPKBAfMYIRNGJ8IVEErYhWUqCgouKAKIgQHOQZwQgygA8QiVDycGRW/tjn6p22u5nuvn1333PWp+oW58FUrV1zp+/t39n7t+slmx0TFZN6DyKBOVVsysymaZB0BOUv88HAFylPYM+xPeemrg2KpEWUQtPTm/8+GrjYdit24pB0N/C/NFMSm2Oa80W2H1wr26BJ2h44iTLOK4FDxzTWixEk6XOT3V/TXQjnOkn72j69Od7A9h21M80WSV+lbLl9EbArsAGwNnC47TYtjaTp9bI/pSfg9cCXgHfbnvQJ3iiS9GTgg8AqSo+Q1wIHAbcAr+7fxnjUdWWsXRkndGusa6pNs4cjRp2kvwZ2Alb0GoW3yQM9iLT9gorx/kKKTTPQFGAOoHxB3pyyhv2MNk3Xk3QGZRnd7yi/8FwI/KBtxYlRm5I4E5IuBY6kVP33Bl5l+7l1U0WsmTHLBVv9BV/SlbaXNMfzgd8Am9i+q26y2aWyScMBwIsoM7jOsH1S3VQREeNrw2eRpHWAw4DHAVcAJzeN0VulK+PsEklfA95p+ypJf0NZSncp5aH6SbbbtEnOyD2IzG50M2D7etvHNL8MPJXSLPHsyrEG7XPAEttb2j7E9mfaVmiCUkya7FU734DNs32O7fts/yewYe1AMRiSniTpVEmXNjsDnSppSe1cAzbZlq9ts7J30PTIu6HthSYA2xfafgPlqd0JlAcerSHpIkm7THBv2bDzzKaujLUr44RujbVjTgW2o8x43wP4cN04s6Yr4+ySzWxf1RwfQllttBewPS3aOb3PItsH2/405cHcdpTeVHOu0ATp2TRIvwSOsn1k7SADtqXtMwEkvbgpTtCcH2v7qHrRBkfSDazem0l957a9ePipZk2vt8+4570lSjFaJL0A+BDwAcqXJ1EaJJ4u6W22v1oz3wCt2yy5mges0xz/qehke/mEf3L0bCPpzuZYlLHfSQuboUv6APAR27f2rtleBXxrol9sR9gmwMclfQM40vbKvnsPr5RptnRlrF0ZJ3RrrGuqDQ8+ntg3k/azlN60bdSVcXZJ/8+gXYF/B7B9l6RVdSLNqtUeREqa0w8iM7NpGiTtIOm7kk6XtK2kq4CrgF9Lel7tfAO2f9/x2EJam8a6HWV2Wu/1NP78C/ucrBTPwPnAXn2v/vNW9ODqqPcBu9k+2fYVti+3fTKwW3OvLX4J/CulsPar5vjDzetDFXMNnO35ttdvXuvZXtB33JpCU+N1wH9L2nOce7sNO8ws+zXlM+dhwMWSHt93r229Dboy1q6ME7o11jXVhs0M+n+BbfOysq6Ms0tukvTGZrOupcA3ASStC6xVNdns2EbSnc3rLmDr3nHfA8o5IzObpufjwFGUnTjOBXa3/UNJWwKn0bzJW2KyJStteJIDgO3bASTNA14OvJ1SZNqzhcsG39vCpYEBa9n++diLtn8uqTUftrZ3nuhem8bZQddTfvb+h6Tdgbf17SLTms+aHtt3A69qvhyf08wUPpGMdWR1ZZzQnbFK2g44ntL8/EjgZMrDyOsozdAvA7B9Sq2MA9SVmbRdGWeXHEp5qPps4CW2/6+5vgOlHUyreMR2Zc7MpulZYPvbzZKyX9n+IYDtn1TONRs8wfF45yNL0lqSXgNcAzwTeIHtl7Ww0ASwTNI7JaXY3C4rJW0y9mLT/L61T+9U7CLpM8DNtfPEtLnpubA9ZZerS5utjFvN9hnAjsCLJJ0JPKRypFnTlbF2ZZzQibF+EjgO+DrwA+DTth8KvLO51xpdmUnblXF2zJttH2b7Bba/3bto+zzbrZrxPopSbJqe/vWf94y515oCTKM3Va9/ml7vvE2Nh2+gPLU6EfgGZdz79l51ow3ctsAjgR9J2ql2mBiY9wDfkXSwpCVNs/BDgG8D766cbeAkbS/po8CNlK1fvw9sWTdVzJTte22/iTK79CxJb62daRbc2n9i+xbbu1HewwvrRJo1XRlrV8YJ3RrrWrbPtn0apSD+X5SDZcA6daNFRKNNbV1aJzMbpqc3BbN/+iXNeas+fEZtqt4MfIdSKNymefUz0Jqm2U0TuSMkPYUyy+lmSgG1N4W49bMJ2sj2V5pG928F3kj5+7wa2M/25VXDDZCkY4D9gBWUZcvvAy61fWrVYDFTqy2/sX12s4TlZKBVP5Nsj/vF2Pbxklo1C7ErY+3KOKFbYwXulfQcStsMS3ph81n7LOD+ytkiopgvaQMmWMZr+7dDzhN9ZLdtIk5EPJBmd6ePAt8CPkHfbL30c4q5TNJtwLXACcDXbN8r6XrbiypHixmQtND2uMsgJe3QW67edpJW2P6L5bBt1JWxdmWc0L6xSnoy8EHKd6QjgNcCB1F6OL3a9oUV40UEIOk+yr/J8YpNzvfDujKzKQKQ9IpJbtv2F4YWZpZJ+hKwMXCg7Str54nBaPplTMj23sPKMsseBTwHOAA4QdJ5lBmmC7KzzEhbJClfCFvWYPkBdGWsXRkntGystn8MPLfv0uHNKyLmjmtsb1s7RIwvxaaI4qnjXBOwF6Uw05piE/Aj2/vXDhEDtyNwE2Vp2cW07Et/j+37gbOBsyWtAzwf+CvgFknLbB9YNWBM19vHudZb2rwQ6MqS7i5NN+/KWLsyTmjZWCVdBBxt+9xx7i2zvWuFWBERIyPL6CLGkCTgpcA7KLvTHWP7irqpBkfScttLa+eIwZI0H9iNMuNna8ruOafZvrpqsCGRtD6wT693k6SD0sdpdEl6BnA0sAHlZ/BZlSMNTLPBhvlzQbj3RUzAurZb8yCwK2Ptyjihc2O9BfgdZeOYI22v7Lt3WWZTRNQn6WDbp0xw77FpD1JXik0RDUkLgIMpDZYvBj5g+9qqoWZBik3tJ+lBlKLT8cD7bH+scqShy/t8NEnaFXgX5RfYY22fUzlSRHSUpOXAM4B/A5YCB/S+F+YzJmLukLQjZSXK92zfKmlr4J3AM20/pm66bmvN04eImZD0eso6/GXA81peBd9S0ngztbIb3Yhrikx7UgpNm1K+ILdmJ8UpauUywraStCdlJtPvKMtWWtt4t1n+eRjwOOAK4OS29hvryli7Mk7o1lgBbN8NvErSPsA5ko61fSL5jImYEyQdR2l78mPgHZK+BrwOOBZ4Zc1skZlNEQBIWgXcCtzG6j0HWleAkXQ1sMdE91teaGstSacCT6L0M/qS7asqR6oqT51HS/Mz+Gbgcsbp+9KiBvdI+jKwEvg+sDtwo+1WNh3uyli7Mk7o3FhX+xyRtDFwCnAP8ATbm9fKFhGFpGuApc3uxBsAvwC2tv3TytGCzGyK6NmsdoAh+kMKSq30cuD3wBbAm0rrMeDPBdP1awWrJE+dR8vOtQMM0RNtLwGQ9Fngksp5ZlNXxtqVcUK3xnpr/4ntW4DdJL2d0iMxIuq7x/a9ALbvkHRtCk1zR4pNEXRuNk9rl6d0me15tTPMMXmfjxDb5493XdJjgP2Bce+PqD81Gbb9x77CcBt1ZaxdGSd0aKy2nzfB9eMltXbpYMSIWSzpzL7zTZvz3sPW1syMHkVZRhfBarur/MUtWjYrRNIJtt/cHB9u+6N9906xfXC1cBEPIO/f9pP0CODFlN5jGwNn2H5b3VSDI+l+yixEaHbwAu6mnZ83nRhrV8YJ3RrrZCStsL1J7RwRXSfpWc3husDmwCrgZ5TlrhM+zIrhyMymCMD2erUzDNFOfccHAR/tO29Nb6porbx/W0jSesA+wIGUpaBnAItsL6wabBbYnl87w7B0ZaxdGSd0a6wPoL1TuiJGyw+AYyjNwFdQ/m0upPRXO6perADIsouI7tEExxGjIO/fdroVOJTyhXGx7bcCf6gbKSJiQlkaEjE3HAdsAGxme6ntbYHFwEOB46smi8xsiuigec1uDfP6jnu/tOeJZcx1ef+201GU3kyfAr7Y7HgVEVFNX4uF3mdMr8DUWz4YEfU9H9jCfb2BbN8p6bXAT4A3V0sW6dkU0TWSfk5ZzzzerBDbXjTcRBFrLu/fdpO0iNKraX9K74X3UHo2XVc1WERERMw5kq6zvcVU78VwpNgUERERc46kJZTC00tsL66dJyK6RdI6wGHA44ArgJNtZxe6iDlE0leA021/fsz1lwH7ZTe6ulJsiuggSQuA3YEtm0vXAN/Kl6iY6yRNuvuP7RXDyhLDJ+ki2zvWzhER7dcs510JfJ/ynelG24fXTRUR/SRtDJxO2X3uR5Tlrk+lLHXdx/YtFeN1XopNER0j6dHAecAvgcsoy5G2BR4F7Gz7FxXjRUxK0pWs3kOD5nxDYKPslNRuki5rmn9GRMwqSVfaXtIcLwAusb20cqyIGIekXYCtKN8Pr7a9rHKkIA3CI7roWOBTtk/ovyjpTcAHKNvJR8xJvS/+PZI2Bd4BPJvy3o52yxOyiBiWlb0D23+UsgFqxFxl+1zg3No5YnWZ2RTRMZJ+YnvLCe5da/vxw84UMVWSNgeOBrYHPgycanvl5H8qRp2k5ZlZEBHDIOl+4Pe9U8qynLubY9tev1a2iIhRkJlNEd1zzyT37h5aiohpkPQkSpFpK+A44FDb99dNFUOUqQURMRRZlh0RMTMpNkV0z0Ml7TvOdQF5Shdz3eXATcDXgacBT+tf2mD7TZVyxYBJerjt3465/PIqYSIiIiJiSlJsiuie84G9Jrj3vWEGiZiGQ0nfntaR9HTgM8Aq4JXA+4HFktaibF18EYDtq+qljIiIiIg1lZ5NERERUZWkSyiFxIcAZwEvtH2BpKXAx2w/vWrAiIiIiJiSzGyK6BhJbxlzycBvNAm8NgAABxdJREFUgAts31AhUsQak3QWk8xssr33EOPE4Kxl+0oASbfZvgDA9nJJ69aNFhERERFTlWJTRPesN861TYGjJb3X9peGnCdiKj5UO0DMinl9x0eOubf2MINERERExMxlGV1EAKUZL/CdbCseo0rSl22/pHaOmDpJe1N+/tw95vpi4EW2j6uTLCIiIiKmI8WmiPgTSZfZ3rZ2jojpkLTC9ia1c0REREREdN28B/5fIqILJO0C3FE7R0REP0kn1c4QEREREVOTnk0RHSPpSv6ywfLDgV8ABw0/UcSaa3YnG/cWsNYws8TgNMt4x70F7DHMLBERERExc1lGF9Exkh475pKB223/vkaeiKmQdN5k923vPKwsMTiS7gdupBSXetycb2w7TcIjIiIiRkhmNkV0z2Lb5wJI2sz2Db0bkva1fXq9aBGTSzGpta4HdrW9YuwNSTdVyBMRERERM5CZTREdI2l5b8e5/uPxziPmGkk7TXbf9veGlSUGR9LrgQtsXz7OvTfa/liFWBERERExTZnZFNE9muB4vPOIuebt41wzsA2wEJg/3DgxCLY/McntE4cWJCIiIiIGIsWmiO7xBMfjnUfMKbb36j+X9AzgaOCXwBuqhIqBkyRgZ+BAYC/gkXUTRURERMRUpNgU0T2LJJ1JmcXUO6Y536xerIg1J2lX4F2UAumxts+pHCkGQNL2lALTPpRdMl/P+LPZIiIiImIOS8+miI6R9KzJ7ts+f1hZIqZK0p6UmUy/A95v+8LKkWIAJB0D7AesAE4DzgAutZ0CeERERMQISrEpIgCQ9Bhgf9vH184SMRFJq4CbgctZfdmnANveu0qwmBFJtwHXAicAX7N9r6TrbS+qHC0iIiIipiHL6CI6TNIjgBcDBwAbU2YTRMxlOzf/XRfYHFgF/Ay4p1qiGIRHAc+h/Cw6QdJ5wLqSFtj+Y91oERERETFVmdkU0TGS1qP0QzkQ2IJSYHqJ7YVVg0WsAUkLgGOBV1KWXImyC90pwFG2V9ZLF4MgaR3g+ZTC0zOAZbYPrJsqIiIiIqYixaaIjpF0D3AJ8I/ABbad5SoxKiR9BHgI8BbbdzXX1gc+BNxt+80188VgNcXxfW2fWjtLRERERKy5FJsiOkbSEcD+wIOBLwJfBs5JsSlGgaSfAlt4zIeXpPnAT2xvXidZzFSzecEdtq+QtB+wE2WJ5Cdt31c3XURERERMRYpNER0laRFlmcr+lN437wHOsH1d1WARk5B0ne0tpnov5jZJnwC2Bh4EXEeZvfZN4G+B+bZfWjFeRERERExRik0RgaQllB5O+9leXDtPxEQkfQU43fbnx1x/GeX9m93oRpCka2w/senXdAuwke37JQm4wvaSyhEjIiIiYgpSbIqI3q50t49dmhQx10jaGDidsvvcjwADT6XsTreP7VsqxotpkrTc9tKxx+OdR0RERMTct6B2gIgYLkk7AP8C/Bb4Z+ALwCOAeZJeYfubNfNFTKYpJm0vaRdgK8pudGfbXlY3WczQRpLeQvn77B3TnG9YL1ZERERETEdmNkV0jKRLgaOAhwInAbvb/qGkLYHTbG9bNWBEdI6k90x23/Y/DStLRERERMxcik0RHSPpx7af3Bz/j+0n9N27LMWmiBg2SQtt3zzBvb1snzXsTBERERExffNqB4iIoVvVd3zPmHupPkdEDcskbTr2oqRDgBOGniYiIiIiZiQ9myK6ZxtJd1J6oazbHNOcr1MvVkR02BHAOZL2sP1TAElHUnbJfFbVZBERERExZSk2RXSM7fm1M0RE9LP9DUn3AWdLeiHwKsougzvZvqNuuoiIiIiYqiyji+iYZhev3vFmY+7tO/xEERHQ7Ch4MPBdYBGwawpNEREREaMpDcIjOkbScttLxx6Pdx4RMQyS7qL0jBPwIGAlcH9zbtvrV4wXEREREVOUZXQR3aMJjsc7j4iYdbbXq50hIiIiIgYny+giuscTHI93HhERERERETElmdkU0T2LJJ1JmcXUO6Y532ziPxYRERERERHxwNKzKaJjJI23jXjvB4Fsnz/MPBEREREREdEumdkU0T0PAxba/gSApEuADSkFp3fUDBYRERERERGjLz2bIrrnH4Az+87XBrYD/g44rEagiIiIiIiIaI/MbIronrVt39R3foHt24HbJT24VqiIiIiIiIhoh8xsiuieDfpPbL+h73TDIWeJiIiIiIiIlkmxKaJ7Lpb092MvSnoNcEmFPBEREREREdEi2Y0uomMkbQR8BbgPWN5cfgrwIOCFtn9dK1tERERERESMvhSbIjpK0i7AVs3p1bbPrZknIiIiIiIi2iHFpoiIiIiIiIiIGJj0bIqIiIiIiIiIiIFJsSkiIiIiIiIiIgYmxaaIiIiIiIiIiBiYFJsiIiIiIiIiImJgUmyKiIiIiIiIiIiB+X+uMQvIedioTAAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.subplots(figsize=(20,15))\n", + "sns.heatmap(azdias.iloc[:,60:80].isnull(), cbar=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Total no. of columns with pattern in nan values: 47\n", + "Total no. of columns without pattern in nan values: 32\n" + ] + } + ], + "source": [ + "# Remove the outlier columns from the dataset. (You'll perform other data\n", + "# engineering tasks such as re-encoding and imputation later.)\n", + "\n", + "columnList = azdias.columns.values\n", + "columnPatternIndexes = [12, 13, 14, 15 ,16 , 19, 20, 36, 37, 38, 40, 41, 43, 44, 46,\n", + " 46, 47, 48, 49, 50 ,51, 52, 53, 54, 55, 56, 57, 58, 59, 60,\n", + " 61, 62, 63, 64, 65, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,\n", + " 77, 78]\n", + "print(f'Total no. of columns with pattern in nan values: {len(columnPatternIndexes)}')\n", + "print(f'Total no. of columns without pattern in nan values: {len(columnList)-len(columnPatternIndexes)}')\n", + "# print(f'{anomalies[6:]}')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "#### Discussion 1.1.2: Assess Missing Data in Each Column\n", + "\n", + "In total I found 6 columns that I determined to have unusually high levels of nan values for the data and as such I dropped them from the dataframe.\n", + "\n", + "I found 47 columns that appear to have a pattern in missing data. We can see that this pattern is fairly consistent throughout the dataset. \n", + "\n", + "**There are a lot of columns in this data set**, however looking through the data dictionary I can see that many of the categories are of the form:\n", + "\n", + "N (detailed scale) or (rough scale)\n", + "\n", + "where N could be anything from Wealth status to family. As the data is looking at regional areas, it makes sense that if data is missing for one area, it would be missing for all the other categories as well.\n", + "\n", + "For example, PLZ8_ANTG1, PLZ8_ANTG2 and PLZ8_ANTG3 all describe the number of family houses in the PLZ8 region by size of family (1-2 people, 3-5 people etc). If this information is missing in PLZ8_ANTG1, then it makes sense that is also missing in the same region for the other categories. **This could explain why we see patterns throughout the entire dataset**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.1.3: Assess Missing Data in Each Row\n", + "\n", + "Now, you'll perform a similar assessment for the rows of the dataset. How much data is missing in each row? As with the columns, you should see some groups of points that have a very different numbers of missing values. Divide the data into two subsets: one for data points that are above some threshold for missing values, and a second subset for points below that threshold.\n", + "\n", + "In order to know what to do with the outlier rows, we should see if the distribution of data values on columns that are not missing data (or are missing very little data) are similar or different between the two groups. Select at least five of these columns and compare the distribution of values.\n", + "- You can use seaborn's [`countplot()`](https://seaborn.pydata.org/generated/seaborn.countplot.html) function to create a bar chart of code frequencies and matplotlib's [`subplot()`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.subplot.html) function to put bar charts for the two subplots side by side.\n", + "- To reduce repeated code, you might want to write a function that can perform this comparison, taking as one of its arguments a column to be compared.\n", + "\n", + "Depending on what you observe in your comparison, this will have implications on how you approach your conclusions later in the analysis. If the distributions of non-missing features look similar between the data with many missing values and the data with few or no missing values, then we could argue that simply dropping those points from the analysis won't present a major issue. On the other hand, if the data with many missing values looks very different from the data with few or no missing values, then we should make a note on those data as special. We'll revisit these data later on. **Either way, you should continue your analysis for now using just the subset of the data with few or no missing values.**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We can repeat what we did above but for the rows. I will transpose the dataframe and repeat the same steps as before." + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [], + "source": [ + "## Testing ignore this cell\n", + "\n", + "# How much data is missing in each row of the dataset?\n", + "null_row_count = azdias.isnull().sum(axis=1)\n", + "null_row_count = pd.DataFrame(null_row_count)\n", + "null_row_count.columns = ['null_count']\n", + "# null_row_count.sample(frac=1).head(30)\n", + "# null_row_count.groupby('null_count').agg({'null_count': 'count'})" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "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", + "
0123456789...891211891212891213891214891215891216891217891218891219891220
ALTERSKATEGORIE_GROB2134312133...3441232214
ANREDE_KZ1222122112...1122221211
\n", + "

2 rows × 891221 columns

\n", + "
" + ], + "text/plain": [ + " 0 1 2 3 4 5 6 7 \\\n", + "ALTERSKATEGORIE_GROB 2 1 3 4 3 1 2 1 \n", + "ANREDE_KZ 1 2 2 2 1 2 2 1 \n", + "\n", + " 8 9 ... 891211 891212 891213 891214 891215 \\\n", + "ALTERSKATEGORIE_GROB 3 3 ... 3 4 4 1 2 \n", + "ANREDE_KZ 1 2 ... 1 1 2 2 2 \n", + "\n", + " 891216 891217 891218 891219 891220 \n", + "ALTERSKATEGORIE_GROB 3 2 2 1 4 \n", + "ANREDE_KZ 2 1 2 1 1 \n", + "\n", + "[2 rows x 891221 columns]" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiasT = azdias.transpose()\n", + "azdiasT.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "79\n" + ] + } + ], + "source": [ + "null_row_count = azdiasT.isnull().sum(axis=0)\n", + "\n", + "axT_rows = azdiasT.shape[0]\n", + "print(axT_rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0 43\n", + "1 0\n", + "2 0\n", + "3 7\n", + "4 0\n", + "dtype: int64\n", + "\n", + "(891221,)\n" + ] + } + ], + "source": [ + "print(null_row_count.head(5))\n", + "print()\n", + "print(null_row_count.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "643174 0.620253\n", + "732775 0.620253\n", + "472919 0.607595\n", + "183108 0.594937\n", + "139316 0.594937\n", + "dtype: float64" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "anomaliesT_f = null_row_count.apply(findTotal, total=axT_rows).sort_values(ascending=False)\n", + "anomaliesT_f.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0\n", + "count 891221.000000\n", + "mean 0.071518\n", + "std 0.167528\n", + "min 0.000000\n", + "25% 0.000000\n", + "50% 0.000000\n", + "75% 0.037975\n", + "max 0.620253\n" + ] + } + ], + "source": [ + "anomaliesT_f = pd.DataFrame(anomaliesT_f)\n", + "# anomaliesT.iloc[0:5,0]\n", + "print(anomaliesT_f.describe())" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "85% percentile: 0.1013\n", + "86% percentile: 0.1013\n", + "87% percentile: 0.1266\n", + "88% percentile: 0.1646\n", + "89% percentile: 0.2025\n", + "90% percentile: 0.4304\n", + "91% percentile: 0.4304\n", + "\n", + "Limit is 0.43037974683544306\n" + ] + } + ], + "source": [ + "for i in range(85, 92):\n", + " print(f'{i}% percentile: {anomaliesT_f.quantile(q=i*0.01)[0]:.4f}')\n", + "limit = anomaliesT_f.quantile(q=0.9)[0]\n", + "print(f'\\nLimit is {limit}')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "As there is a much larger jump from the 89th to 90th percentile (a factor of around 113%) I would say our threshold for the split for the rows should be those which have 43% or higher missing values of the total data in the top category (denoted as anomaliesU), and those that are less than 43% in the bottom category (denoted as anomaliesL)." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Counter({0: 623209, 47: 45578, 2: 27926, 43: 27369, 8: 24592, 5: 22515, 3: 17629, 1: 15738, 6: 13771, 7: 13714, 4: 12607, 34: 10816, 10: 5410, 15: 4743, 35: 3911, 13: 3255, 9: 3042, 33: 2985, 16: 2505, 14: 2243, 19: 1180, 11: 1127, 12: 766, 17: 677, 37: 538, 45: 494, 18: 428, 38: 421, 41: 356, 20: 349, 32: 206, 44: 155, 21: 150, 40: 137, 23: 132, 22: 129, 36: 84, 39: 77, 24: 69, 26: 59, 25: 55, 27: 24, 42: 21, 29: 12, 30: 6, 28: 5, 31: 3, 49: 2, 48: 1})\n" + ] + } + ], + "source": [ + "import collections\n", + "print(collections.Counter(null_row_count))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "We will now split the dataframe into 2 categories, and then compare the columns of the original matrix like before" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0\n", + "count 89960.000000\n", + "mean 0.550983\n", + "std 0.057724\n", + "min 0.430380\n", + "25% 0.544304\n", + "50% 0.594937\n", + "75% 0.594937\n", + "max 0.620253\n" + ] + } + ], + "source": [ + "# Write code to divide the data into two subsets based on the number of missing\n", + "# values in each row.a\n", + "anomaliesU = anomaliesT_f[(anomaliesT_f>=limit)]\n", + "anomaliesU.dropna(inplace=True)\n", + "print(anomaliesU.describe())" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0\n", + "count 801261.000000\n", + "mean 0.017687\n", + "std 0.046201\n", + "min 0.000000\n", + "25% 0.000000\n", + "50% 0.000000\n", + "75% 0.000000\n", + "max 0.417722\n" + ] + } + ], + "source": [ + "anomaliesL = anomaliesT_f[(anomaliesT_f\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...SEMIO_RATSEMIO_KRITSEMIO_DOMSEMIO_KAEMSEMIO_PFLICHTSEMIO_TRADVZABEOTYPHH_EINKOMMEN_SCOREANZ_HAUSHALTE_AKTIVONLINE_AFFINITAET
8309541.023.01535531...6766565NaNNaN3.0
8293813.021.04244313...4767433NaNNaN4.0
8418751.014.02535521...41245512.0NaN3.0
8481752.013.04424513...51225552.0NaN2.0
8184891.024.03425524...6766565NaNNaN5.0
2155721.014.02535521...5124555NaNNaN4.0
839513.015.05343313...5323446NaNNaN5.0
2847352.014.04424513...4122555NaNNaN4.0
2582001.026.02535541...6766564NaNNaN3.0
3887353.016.05252322...5323443NaNNaN4.0
\n", + "

10 rows × 33 columns

\n", + "" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "830954 1.0 2 3.0 1 \n", + "829381 3.0 2 1.0 4 \n", + "841875 1.0 1 4.0 2 \n", + "848175 2.0 1 3.0 4 \n", + "818489 1.0 2 4.0 3 \n", + "215572 1.0 1 4.0 2 \n", + "83951 3.0 1 5.0 5 \n", + "284735 2.0 1 4.0 4 \n", + "258200 1.0 2 6.0 2 \n", + "388735 3.0 1 6.0 5 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "830954 5 3 5 \n", + "829381 2 4 4 \n", + "841875 5 3 5 \n", + "848175 4 2 4 \n", + "818489 4 2 5 \n", + "215572 5 3 5 \n", + "83951 3 4 3 \n", + "284735 4 2 4 \n", + "258200 5 3 5 \n", + "388735 2 5 2 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER FINANZTYP ... \\\n", + "830954 5 3 1 ... \n", + "829381 3 1 3 ... \n", + "841875 5 2 1 ... \n", + "848175 5 1 3 ... \n", + "818489 5 2 4 ... \n", + "215572 5 2 1 ... \n", + "83951 3 1 3 ... \n", + "284735 5 1 3 ... \n", + "258200 5 4 1 ... \n", + "388735 3 2 2 ... \n", + "\n", + " SEMIO_RAT SEMIO_KRIT SEMIO_DOM SEMIO_KAEM SEMIO_PFLICHT \\\n", + "830954 6 7 6 6 5 \n", + "829381 4 7 6 7 4 \n", + "841875 4 1 2 4 5 \n", + "848175 5 1 2 2 5 \n", + "818489 6 7 6 6 5 \n", + "215572 5 1 2 4 5 \n", + "83951 5 3 2 3 4 \n", + "284735 4 1 2 2 5 \n", + "258200 6 7 6 6 5 \n", + "388735 5 3 2 3 4 \n", + "\n", + " SEMIO_TRADV ZABEOTYP HH_EINKOMMEN_SCORE ANZ_HAUSHALTE_AKTIV \\\n", + "830954 6 5 NaN NaN \n", + "829381 3 3 NaN NaN \n", + "841875 5 1 2.0 NaN \n", + "848175 5 5 2.0 NaN \n", + "818489 6 5 NaN NaN \n", + "215572 5 5 NaN NaN \n", + "83951 4 6 NaN NaN \n", + "284735 5 5 NaN NaN \n", + "258200 6 4 NaN NaN \n", + "388735 4 3 NaN NaN \n", + "\n", + " ONLINE_AFFINITAET \n", + "830954 3.0 \n", + "829381 4.0 \n", + "841875 3.0 \n", + "848175 2.0 \n", + "818489 5.0 \n", + "215572 4.0 \n", + "83951 5.0 \n", + "284735 4.0 \n", + "258200 3.0 \n", + "388735 4.0 \n", + "\n", + "[10 rows x 33 columns]" + ] + }, + "execution_count": 37, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Compare the distribution of values for at least five columns where there are\n", + "# no or few missing values, between the two subsets.\n", + "print(f'Number of cols to drop: {len(columnPatternIndexes)}')\n", + "anomaliesL_compare = anomaliesL.drop(anomaliesL.iloc[:,columnPatternIndexes], axis=1)\n", + "print(f'Number of cols kept: {anomaliesL_compare.shape[1]}')\n", + "anomaliesL_compare.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 38, + "metadata": {}, + "outputs": [], + "source": [ + "import random\n", + "\n", + "def dataComparison(df):\n", + " cols = random.sample(list(df.columns.values), 5)\n", + " f, axes = plt.subplots(1, 5, figsize=(25,4))\n", + " for i in range(0, 5):\n", + " sns.countplot(x=cols[i], data=df.fillna('Missing'), ax=axes[i]) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "Let's look at the data distribution for the Lower group (those that don't have many zero values across the rows)" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import itertools\n", + "\n", + "for _ in itertools.repeat(None, 5):\n", + " dataComparison(anomaliesL_compare)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "Now the same for the upper group" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Number of cols to drop: 47\n", + "Number of cols kept: 33\n" + ] + }, + { + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...SEMIO_RATSEMIO_KRITSEMIO_DOMSEMIO_KAEMSEMIO_PFLICHTSEMIO_TRADVZABEOTYPHH_EINKOMMEN_SCOREANZ_HAUSHALTE_AKTIVONLINE_AFFINITAET
6431743.01NaN2535524...5444544NaNNaNNaN
7327753.02NaN3535524...4766533NaNNaNNaN
4729191.01NaN5152322...4444546NaNNaNNaN
1831081.026.03435534...47665332.0NaN2.0
1393163.026.03435534...47665332.0NaN2.0
6911411.016.03435534...47665332.0NaN2.0
6911423.026.03435534...47665332.0NaN2.0
6911713.016.03435534...47665332.0NaN2.0
6911833.016.03435534...47665332.0NaN2.0
1393323.016.03435534...47665332.0NaN2.0
\n", + "

10 rows × 33 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "643174 3.0 1 NaN 2 \n", + "732775 3.0 2 NaN 3 \n", + "472919 1.0 1 NaN 5 \n", + "183108 1.0 2 6.0 3 \n", + "139316 3.0 2 6.0 3 \n", + "691141 1.0 1 6.0 3 \n", + "691142 3.0 2 6.0 3 \n", + "691171 3.0 1 6.0 3 \n", + "691183 3.0 1 6.0 3 \n", + "139332 3.0 1 6.0 3 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "643174 5 3 5 \n", + "732775 5 3 5 \n", + "472919 1 5 2 \n", + "183108 4 3 5 \n", + "139316 4 3 5 \n", + "691141 4 3 5 \n", + "691142 4 3 5 \n", + "691171 4 3 5 \n", + "691183 4 3 5 \n", + "139332 4 3 5 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER FINANZTYP ... \\\n", + "643174 5 2 4 ... \n", + "732775 5 2 4 ... \n", + "472919 3 2 2 ... \n", + "183108 5 3 4 ... \n", + "139316 5 3 4 ... \n", + "691141 5 3 4 ... \n", + "691142 5 3 4 ... \n", + "691171 5 3 4 ... \n", + "691183 5 3 4 ... \n", + "139332 5 3 4 ... \n", + "\n", + " SEMIO_RAT SEMIO_KRIT SEMIO_DOM SEMIO_KAEM SEMIO_PFLICHT \\\n", + "643174 5 4 4 4 5 \n", + "732775 4 7 6 6 5 \n", + "472919 4 4 4 4 5 \n", + "183108 4 7 6 6 5 \n", + "139316 4 7 6 6 5 \n", + "691141 4 7 6 6 5 \n", + "691142 4 7 6 6 5 \n", + "691171 4 7 6 6 5 \n", + "691183 4 7 6 6 5 \n", + "139332 4 7 6 6 5 \n", + "\n", + " SEMIO_TRADV ZABEOTYP HH_EINKOMMEN_SCORE ANZ_HAUSHALTE_AKTIV \\\n", + "643174 4 4 NaN NaN \n", + "732775 3 3 NaN NaN \n", + "472919 4 6 NaN NaN \n", + "183108 3 3 2.0 NaN \n", + "139316 3 3 2.0 NaN \n", + "691141 3 3 2.0 NaN \n", + "691142 3 3 2.0 NaN \n", + "691171 3 3 2.0 NaN \n", + "691183 3 3 2.0 NaN \n", + "139332 3 3 2.0 NaN \n", + "\n", + " ONLINE_AFFINITAET \n", + "643174 NaN \n", + "732775 NaN \n", + "472919 NaN \n", + "183108 2.0 \n", + "139316 2.0 \n", + "691141 2.0 \n", + "691142 2.0 \n", + "691171 2.0 \n", + "691183 2.0 \n", + "139332 2.0 \n", + "\n", + "[10 rows x 33 columns]" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(f'Number of cols to drop: {len(columnPatternIndexes)}')\n", + "anomaliesU_compare = anomaliesU.drop(anomaliesU.iloc[:,columnPatternIndexes], axis=1)\n", + "print(f'Number of cols kept: {anomaliesU_compare.shape[1]}')\n", + "anomaliesU_compare.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "for _ in itertools.repeat(None, 5):\n", + " dataComparison(anomaliesU_compare)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Discussion 1.1.3: Assess Missing Data in Each Row\n", + "\n", + "There is a huge distance that is faily easy to visualise from the above graphs. We can see that the group that is below the threshold looks very reasonable. Without doing any specific statistical analysis we can see that across most columns, the data is fairly evenly spread. With a good mix between the columns - the point to take away is across the columns, the data doesn't look to follow a pattern. \n", + "\n", + "\n", + "Looking at the group which contains the rows above the threshold we can see immediately the data is largely dominated by a single value in each column. Looking at the column ANZ_HAUSHALTE_AKTIV we can see that this column is dominated with missing values exlusively from this rows. This means that all the information we have for this column will come from the other set of rows.\n", + "\n", + "This is a very interesting factor in our data. If we think about it, if a row has a large number of missing values, then there must be only a few cells in that row that contain the information. If we take the columns that we know contain mostly data and not many nan values (as we have exlucded both of these earlier on), then we can see that these rows account for the dominating value. \n", + "\n", + "We can see this from the above graph where SEMIO_Lust is dominated with the value 5 in these upper rows, whereas in the lower group SEMIO_Lust is fairly evenly spread out, with 6, 7 being the two highest values and 5 actually being second from the bottom." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 1.2: Select and Re-Encode Features\n", + "\n", + "Checking for missing data isn't the only way in which you can prepare a dataset for analysis. Since the unsupervised learning techniques to be used will only work on data that is encoded numerically, you need to make a few encoding changes or additional assumptions to be able to make progress. In addition, while almost all of the values in the dataset are encoded using numbers, not all of them represent numeric values. Check the third column of the feature summary (`feat_info`) for a summary of types of measurement.\n", + "- For numeric and interval data, these features can be kept without changes.\n", + "- Most of the variables in the dataset are ordinal in nature. While ordinal values may technically be non-linear in spacing, make the simplifying assumption that the ordinal variables can be treated as being interval in nature (that is, kept without any changes).\n", + "- Special handling may be necessary for the remaining two variable types: categorical, and 'mixed'.\n", + "\n", + "In the first two parts of this sub-step, you will perform an investigation of the categorical and mixed-type features and make a decision on each of them, whether you will keep, drop, or re-encode each. Then, in the last part, you will create a new data frame with only the selected and engineered columns.\n", + "\n", + "Data wrangling is often the trickiest part of the data analysis process, and there's a lot of it to be done here. But stick with it: once you're done with this step, you'll be ready to get to the machine learning parts of the project!" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Counter({'categorical': 21,\n", + " 'ordinal': 49,\n", + " 'numeric': 7,\n", + " 'mixed': 7,\n", + " 'interval': 1})" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# How many features are there of each data type?\n", + "collections.Counter(feat_info['type'].values)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.2.1: Re-Encode Categorical Features\n", + "\n", + "For categorical data, you would ordinarily need to encode the levels as dummy variables. Depending on the number of categories, perform one of the following:\n", + "- For binary (two-level) categoricals that take numeric values, you can keep them without needing to do anything.\n", + "- There is one binary variable that takes on non-numeric values. For this one, you need to re-encode the values as numbers or create a dummy variable.\n", + "- For multi-level categoricals (three or more values), you can choose to encode the values using multiple dummy variables (e.g. via [OneHotEncoder](http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html)), or (to keep things straightforward) just drop them from the analysis. As always, document your choices in the Discussion section." + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
0AGER_TYPpersoncategorical[-1,0]
2ANREDE_KZpersoncategorical[-1,0]
3CJT_GESAMTTYPpersoncategorical[0]
10FINANZTYPpersoncategorical[-1]
12GFK_URLAUBERTYPpersoncategorical[]
13GREEN_AVANTGARDEpersoncategorical[]
17LP_FAMILIE_FEINpersoncategorical[0]
18LP_FAMILIE_GROBpersoncategorical[0]
19LP_STATUS_FEINpersoncategorical[0]
20LP_STATUS_GROBpersoncategorical[0]
21NATIONALITAET_KZpersoncategorical[-1,0]
38SHOPPER_TYPpersoncategorical[-1]
39SOHO_KZpersoncategorical[-1]
40TITEL_KZpersoncategorical[-1,0]
41VERS_TYPpersoncategorical[-1]
42ZABEOTYPpersoncategorical[-1,9]
47KK_KUNDENTYPhouseholdcategorical[-1]
52GEBAEUDETYPbuildingcategorical[-1,0]
55OST_WEST_KZbuildingcategorical[-1]
57CAMEO_DEUG_2015microcell_rr4categorical[-1,X]
58CAMEO_DEU_2015microcell_rr4categorical[XX]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "0 AGER_TYP person categorical [-1,0]\n", + "2 ANREDE_KZ person categorical [-1,0]\n", + "3 CJT_GESAMTTYP person categorical [0]\n", + "10 FINANZTYP person categorical [-1]\n", + "12 GFK_URLAUBERTYP person categorical []\n", + "13 GREEN_AVANTGARDE person categorical []\n", + "17 LP_FAMILIE_FEIN person categorical [0]\n", + "18 LP_FAMILIE_GROB person categorical [0]\n", + "19 LP_STATUS_FEIN person categorical [0]\n", + "20 LP_STATUS_GROB person categorical [0]\n", + "21 NATIONALITAET_KZ person categorical [-1,0]\n", + "38 SHOPPER_TYP person categorical [-1]\n", + "39 SOHO_KZ person categorical [-1]\n", + "40 TITEL_KZ person categorical [-1,0]\n", + "41 VERS_TYP person categorical [-1]\n", + "42 ZABEOTYP person categorical [-1,9]\n", + "47 KK_KUNDENTYP household categorical [-1]\n", + "52 GEBAEUDETYP building categorical [-1,0]\n", + "55 OST_WEST_KZ building categorical [-1]\n", + "57 CAMEO_DEUG_2015 microcell_rr4 categorical [-1,X]\n", + "58 CAMEO_DEU_2015 microcell_rr4 categorical [XX]" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Assess categorical variables: which are binary, which are multi-level, and\n", + "# which one needs to be re-encoded?\n", + "feat_info_cat = feat_info[(feat_info['type']=='categorical')]\n", + "feat_info_cat" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We pick the attribute column, which gives us the columns for our data.\n", + "\n", + "We need to remember to drop the columns from this list that we removed at the start of the project, as they were mostly missing values." + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n", + "18\n" + ] + } + ], + "source": [ + "categorical_cols = feat_info_cat['attribute'].tolist()\n", + "\n", + "drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "for i in drop_cols:\n", + " categorical_cols.remove(i)\n", + " \n", + "print(categorical_cols)\n", + "print(len(categorical_cols))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We will drop from this list the columns that contain just two values. **Note I am dropping them if the length of their unique values is equal to 2. This is because we know that we do not have any columns that have a length of two with non numeric values. This method would not extend to a case where we have 2 non-numeric values**" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ANREDE_KZ\n", + "Values: [1 2]\n", + "Length: 2\n", + "FINANZTYP\n", + "Values: [4 1 6 5 2 3]\n", + "Length: 6\n", + "GFK_URLAUBERTYP\n", + "Values: [ 10. 1. 5. 12. 9. 3. 8. 11. 4. 2. 7. 6. nan]\n", + "Length: 13\n", + "GREEN_AVANTGARDE\n", + "Values: [0 1]\n", + "Length: 2\n", + "LP_FAMILIE_GROB\n", + "Values: [ 2. 3. 1. nan 5. 4.]\n", + "Length: 6\n", + "LP_STATUS_FEIN\n", + "Values: [ 1. 2. 3. 9. 4. 10. 5. 8. 6. 7. nan]\n", + "Length: 11\n", + "LP_STATUS_GROB\n", + "Values: [ 1. 2. 4. 5. 3. nan]\n", + "Length: 6\n", + "NATIONALITAET_KZ\n", + "Values: [ nan 1. 3. 2.]\n", + "Length: 4\n", + "SHOPPER_TYP\n", + "Values: [ nan 3. 2. 1. 0.]\n", + "Length: 5\n", + "SOHO_KZ\n", + "Values: [ nan 1. 0.]\n", + "Length: 3\n", + "VERS_TYP\n", + "Values: [ nan 2. 1.]\n", + "Length: 3\n", + "ZABEOTYP\n", + "Values: [3 5 4 1 6 2]\n", + "Length: 6\n", + "GEBAEUDETYP\n", + "Values: [ nan 8. 1. 3. 2. 6. 4. 5.]\n", + "Length: 8\n", + "OST_WEST_KZ\n", + "Values: [nan 'W' 'O']\n", + "Length: 3\n", + "CAMEO_DEUG_2015\n", + "Values: [nan '8' '4' '2' '6' '1' '9' '5' '7' '3']\n", + "Length: 10\n", + "CAMEO_DEU_2015\n", + "Values: [nan '8A' '4C' '2A' '6B' '8C' '4A' '2D' '1A' '1E' '9D' '5C' '8B' '7A' '5D'\n", + " '9E' '9B' '1B' '3D' '4E' '4B' '3C' '5A' '7B' '9A' '6D' '6E' '2C' '7C' '9C'\n", + " '7D' '5E' '1D' '8D' '6C' '6A' '5B' '4D' '3A' '2B' '7E' '3B' '6F' '5F' '1C']\n", + "Length: 45\n", + "\n", + " Columns to reencode as dummies: ['CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n" + ] + } + ], + "source": [ + "# Re-encode categorical variable(s) to be kept in the analysis.\n", + "for i in categorical_cols:\n", + " print(f'{i}\\nValues: {azdias[i].unique()}\\nLength: {len(azdias[i].unique())}')\n", + " if len(azdias[i].unique()) == 2:\n", + " categorical_cols.remove(i)\n", + "print('\\n Columns to reencode as dummies:', categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 46, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "16" + ] + }, + "execution_count": 46, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": {}, + "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", + "
CJT_GESAMTTYPFINANZTYPGFK_URLAUBERTYPLP_FAMILIE_FEINLP_FAMILIE_GROBLP_STATUS_FEINLP_STATUS_GROBNATIONALITAET_KZSHOPPER_TYPSOHO_KZVERS_TYPZABEOTYPGEBAEUDETYPOST_WEST_KZCAMEO_DEUG_2015CAMEO_DEU_2015
02.0410.02.02.01.01.0NaNNaNNaNNaN3NaNNaNNaNNaN
15.0110.05.03.02.01.01.03.01.02.058.0W88A
23.0110.01.01.03.02.01.02.00.01.051.0W44C
32.061.0NaNNaN9.04.01.01.00.01.031.0W22A
45.055.010.05.03.02.01.02.00.02.041.0W66B
\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP FINANZTYP GFK_URLAUBERTYP LP_FAMILIE_FEIN \\\n", + "0 2.0 4 10.0 2.0 \n", + "1 5.0 1 10.0 5.0 \n", + "2 3.0 1 10.0 1.0 \n", + "3 2.0 6 1.0 NaN \n", + "4 5.0 5 5.0 10.0 \n", + "\n", + " LP_FAMILIE_GROB LP_STATUS_FEIN LP_STATUS_GROB NATIONALITAET_KZ \\\n", + "0 2.0 1.0 1.0 NaN \n", + "1 3.0 2.0 1.0 1.0 \n", + "2 1.0 3.0 2.0 1.0 \n", + "3 NaN 9.0 4.0 1.0 \n", + "4 5.0 3.0 2.0 1.0 \n", + "\n", + " SHOPPER_TYP SOHO_KZ VERS_TYP ZABEOTYP GEBAEUDETYP OST_WEST_KZ \\\n", + "0 NaN NaN NaN 3 NaN NaN \n", + "1 3.0 1.0 2.0 5 8.0 W \n", + "2 2.0 0.0 1.0 5 1.0 W \n", + "3 1.0 0.0 1.0 3 1.0 W \n", + "4 2.0 0.0 2.0 4 1.0 W \n", + "\n", + " CAMEO_DEUG_2015 CAMEO_DEU_2015 \n", + "0 NaN NaN \n", + "1 8 8A \n", + "2 4 4C \n", + "3 2 2A \n", + "4 6 6B " + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias[categorical_cols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "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", + "
CJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2FINANZTYP_3...CAMEO_DEU_2015_8ACAMEO_DEU_2015_8BCAMEO_DEU_2015_8CCAMEO_DEU_2015_8DCAMEO_DEU_2015_9ACAMEO_DEU_2015_9BCAMEO_DEU_2015_9CCAMEO_DEU_2015_9DCAMEO_DEU_2015_9ECAMEO_DEU_2015_nan
00100000000...0000000001
10000100100...1000000000
20010000100...0000000000
30100000000...0000000000
40000100000...0000000000
\n", + "

5 rows × 148 columns

\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 CJT_GESAMTTYP_4.0 \\\n", + "0 0 1 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 1 0 \n", + "3 0 1 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan FINANZTYP_1 \\\n", + "0 0 0 0 0 \n", + "1 1 0 0 1 \n", + "2 0 0 0 1 \n", + "3 0 0 0 0 \n", + "4 1 0 0 0 \n", + "\n", + " FINANZTYP_2 FINANZTYP_3 ... CAMEO_DEU_2015_8A \\\n", + "0 0 0 ... 0 \n", + "1 0 0 ... 1 \n", + "2 0 0 ... 0 \n", + "3 0 0 ... 0 \n", + "4 0 0 ... 0 \n", + "\n", + " CAMEO_DEU_2015_8B CAMEO_DEU_2015_8C CAMEO_DEU_2015_8D CAMEO_DEU_2015_9A \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_9B CAMEO_DEU_2015_9C CAMEO_DEU_2015_9D CAMEO_DEU_2015_9E \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_nan \n", + "0 1 \n", + "1 0 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 148 columns]" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias_cat_dummies = pd.get_dummies(azdias[categorical_cols].astype(str))\n", + "azdias_cat_dummies.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Discussion 1.2.1: Re-Encode Categorical Features\n", + "\n", + "\n", + "There were 18 of the type 'categorical' that we needed to work with. They were:\n", + "\n", + "['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n", + "\n", + "ANREDE_KZ was binary numerical so we were able to drop it.\n", + "\n", + "CAMEO_DEU_2015 had multiple strings as its values. We will use dummy variables on this.\n", + "\n", + "The remaining 16 columns were multi-level categoricals. I used pd.get_dummies() to convert these to dummy variables.\n", + "\n", + "These 16 become 148 columns of dummy variables. All we need to do now is to drop the columns from the original dataframe, and replace them with these.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.2.2: Engineer Mixed-Type Features\n", + "\n", + "There are a handful of features that are marked as \"mixed\" in the feature summary that require special treatment in order to be included in the analysis. There are two in particular that deserve attention; the handling of the rest are up to your own choices:\n", + "- \"PRAEGENDE_JUGENDJAHRE\" combines information on three dimensions: generation by decade, movement (mainstream vs. avantgarde), and nation (east vs. west). While there aren't enough levels to disentangle east from west, you should create two new variables to capture the other two dimensions: an interval-type variable for decade, and a binary variable for movement.\n", + "- \"CAMEO_INTL_2015\" combines information on two axes: wealth and life stage. Break up the two-digit codes by their 'tens'-place and 'ones'-place digits into two new ordinal variables (which, for the purposes of this project, is equivalent to just treating them as their raw numeric values).\n", + "- If you decide to keep or engineer new features around the other mixed-type features, make sure you note your steps in the Discussion section.\n", + "\n", + "Be sure to check `Data_Dictionary.md` for the details needed to finish these tasks." + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
15LP_LEBENSPHASE_FEINpersonmixed[0]
16LP_LEBENSPHASE_GROBpersonmixed[0]
22PRAEGENDE_JUGENDJAHREpersonmixed[-1,0]
56WOHNLAGEbuildingmixed[-1]
59CAMEO_INTL_2015microcell_rr4mixed[-1,XX]
64KBA05_BAUMAXmicrocell_rr3mixed[-1,0]
79PLZ8_BAUMAXmacrocell_plz8mixed[-1,0]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "15 LP_LEBENSPHASE_FEIN person mixed [0]\n", + "16 LP_LEBENSPHASE_GROB person mixed [0]\n", + "22 PRAEGENDE_JUGENDJAHRE person mixed [-1,0]\n", + "56 WOHNLAGE building mixed [-1]\n", + "59 CAMEO_INTL_2015 microcell_rr4 mixed [-1,XX]\n", + "64 KBA05_BAUMAX microcell_rr3 mixed [-1,0]\n", + "79 PLZ8_BAUMAX macrocell_plz8 mixed [-1,0]" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "feat_info_mixed = feat_info[(feat_info['type']=='mixed')]\n", + "feat_info_mixed" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['LP_LEBENSPHASE_FEIN', 'LP_LEBENSPHASE_GROB', 'PRAEGENDE_JUGENDJAHRE', 'WOHNLAGE', 'CAMEO_INTL_2015', 'KBA05_BAUMAX', 'PLZ8_BAUMAX']\n", + "7\n" + ] + } + ], + "source": [ + "mixed_cols = feat_info_mixed['attribute'].tolist()\n", + "\n", + "# drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "# for i in drop_cols:\n", + "# mixed_cols.remove(i)\n", + " \n", + "print(mixed_cols)\n", + "print(len(mixed_cols))" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [], + "source": [ + "def PRAEGENDE_JUGENDJAHRE_decade(value, **kwargs):\n", + " if (value == 1) or (value == 2):\n", + " return 40\n", + " elif (value == 3) or (value == 4):\n", + " return 50\n", + " elif (value == 5) or (value == 6) or (value == 7):\n", + " return 60\n", + " elif (value == 8) or (value == 9):\n", + " return 70\n", + " elif (value == 10) or (value == 11):\n", + " return 80\n", + " elif (value == 12) or (value == 13):\n", + " return 80\n", + " elif (value == 14) or (value == 15):\n", + " return 90\n", + " else:\n", + " return value" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 90.0\n", + "2 90.0\n", + "3 70.0\n", + "4 70.0\n", + "Name: PRAEGENDE_JUGENDJAHRE_decade, dtype: float64" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['PRAEGENDE_JUGENDJAHRE_decade'] = azdias.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_decade, axis=1)\n", + "azdias['PRAEGENDE_JUGENDJAHRE_decade'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [], + "source": [ + "def PRAEGENDE_JUGENDJAHRE_movement(value, **kwargs):\n", + " if (value == 1) or (value == 3) or (value == 5) or (value == 8) or (value == 10) or (value == 12) or (value == 14):\n", + " return 'mainstream'\n", + " elif (value == 2) or (value == 4) or (value == 6) or (value == 7) or (value == 9) or (value == 11) or (value == 13) or (value == 15):\n", + " return 'avantgarde'\n", + " else:\n", + " return value\n" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 mainstream\n", + "2 avantgarde\n", + "3 mainstream\n", + "4 mainstream\n", + "Name: PRAEGENDE_JUGENDJAHRE_movement, dtype: object" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['PRAEGENDE_JUGENDJAHRE_movement'] = azdias.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_movement, axis=1)\n", + "azdias['PRAEGENDE_JUGENDJAHRE_movement'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movement
0NaNNaN
190.0mainstream
290.0avantgarde
370.0mainstream
470.0mainstream
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_decade PRAEGENDE_JUGENDJAHRE_movement\n", + "0 NaN NaN\n", + "1 90.0 mainstream\n", + "2 90.0 avantgarde\n", + "3 70.0 mainstream\n", + "4 70.0 mainstream" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.iloc[0:5, -2:]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Similar process to the one above" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "metadata": {}, + "outputs": [], + "source": [ + "def CAMEO_INTL_2015_wealth(value, **kwargs):\n", + " if pd.isnull(value):\n", + " return value\n", + " else:\n", + " return value[0]\n", + "\n", + "def CAMEO_INTL_2015_life(value, **kwargs):\n", + " if pd.isnull(value):\n", + " return value\n", + " else:\n", + " return value[-1]" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 5\n", + "2 2\n", + "3 1\n", + "4 4\n", + "Name: CAMEO_INTL_2015_wealth, dtype: object" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['CAMEO_INTL_2015_wealth'] = azdias.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_wealth, axis=1)\n", + "azdias['CAMEO_INTL_2015_wealth'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 1\n", + "2 4\n", + "3 2\n", + "4 3\n", + "Name: CAMEO_INTL_2015_life, dtype: object" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['CAMEO_INTL_2015_life'] = azdias.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_life, axis=1)\n", + "azdias['CAMEO_INTL_2015_life'].head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Let's verify that we did it correctly:" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 NaN\n", + "1 51\n", + "2 24\n", + "3 12\n", + "4 43\n", + "Name: CAMEO_INTL_2015, dtype: object" + ] + }, + "execution_count": 59, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias['CAMEO_INTL_2015'].iloc[0:5][:]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Let's create our dummy variables form these new columns" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movementPRAEGENDE_JUGENDJAHRE_decadeCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
0NaNNaNNaNNaN
1mainstream90.051
2avantgarde90.024
3mainstream70.012
4mainstream70.043
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement PRAEGENDE_JUGENDJAHRE_decade \\\n", + "0 NaN NaN \n", + "1 mainstream 90.0 \n", + "2 avantgarde 90.0 \n", + "3 mainstream 70.0 \n", + "4 mainstream 70.0 \n", + "\n", + " CAMEO_INTL_2015_wealth CAMEO_INTL_2015_life \n", + "0 NaN NaN \n", + "1 5 1 \n", + "2 2 4 \n", + "3 1 2 \n", + "4 4 3 " + ] + }, + "execution_count": 60, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "newCols = ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']\n", + "azdias[newCols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movement_avantgardePRAEGENDE_JUGENDJAHRE_movement_mainstreamPRAEGENDE_JUGENDJAHRE_movement_nanPRAEGENDE_JUGENDJAHRE_decade_40.0PRAEGENDE_JUGENDJAHRE_decade_50.0PRAEGENDE_JUGENDJAHRE_decade_60.0PRAEGENDE_JUGENDJAHRE_decade_70.0PRAEGENDE_JUGENDJAHRE_decade_80.0PRAEGENDE_JUGENDJAHRE_decade_90.0PRAEGENDE_JUGENDJAHRE_decade_nan...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
00010000001...0001000001
10100000010...0010100000
21000000010...0000000100
30100001000...0000010000
40100001000...0100001000
\n", + "

5 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement_avantgarde \\\n", + "0 0 \n", + "1 0 \n", + "2 1 \n", + "3 0 \n", + "4 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_mainstream \\\n", + "0 0 \n", + "1 1 \n", + "2 0 \n", + "3 1 \n", + "4 1 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_nan PRAEGENDE_JUGENDJAHRE_decade_40.0 \\\n", + "0 1 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_50.0 PRAEGENDE_JUGENDJAHRE_decade_60.0 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_70.0 PRAEGENDE_JUGENDJAHRE_decade_80.0 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 1 0 \n", + "4 1 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_90.0 PRAEGENDE_JUGENDJAHRE_decade_nan \\\n", + "0 0 1 \n", + "1 1 0 \n", + "2 1 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " ... CAMEO_INTL_2015_wealth_3 \\\n", + "0 ... 0 \n", + "1 ... 0 \n", + "2 ... 0 \n", + "3 ... 0 \n", + "4 ... 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_4 CAMEO_INTL_2015_wealth_5 \\\n", + "0 0 0 \n", + "1 0 1 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 1 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_nan CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 \\\n", + "0 1 0 0 \n", + "1 0 1 0 \n", + "2 0 0 0 \n", + "3 0 0 1 \n", + "4 0 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_3 CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 \\\n", + "0 0 0 0 \n", + "1 0 0 0 \n", + "2 0 1 0 \n", + "3 0 0 0 \n", + "4 1 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_nan \n", + "0 1 \n", + "1 0 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 22 columns]" + ] + }, + "execution_count": 61, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias_mixed_dummies = pd.get_dummies(azdias[newCols].astype(str))\n", + "azdias_mixed_dummies.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Discussion 1.2.2: Engineer Mixed-Type Features\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting your findings and decisions regarding mixed-value features. Which ones did you keep, which did you drop, and what engineering steps did you perform?)\n", + "\n", + "I performed the following steps:\n", + "\n", + "* For the categorical data we ignore any binary numerical columns as they are fine as is.\n", + "* We converted the remaining categories to dummy variables\n", + "\n", + "* For the mixed data \n", + " * We looked at the PRAEGENDE_JUGENDJAHRE column\n", + " * We extracted the decade as a new column\n", + " * We extracted the movement as a new column\n", + " * We looked at CAMEO_INTL_2015 column\n", + " * We split the value into 2 single digits and put each one in a column\n", + " * We did a pd.get_dummies() on all of our new columns\n", + " \n", + "All that remains is to drop the columns in categorical_cols and mixed_cols and replace them with azdias_cat_dummies and azdias_mixed_dummies\n", + "\n", + "**For the sake of simplicity I will drop the remaining mixed columns and not do any further work on them**" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Step 1.2.3: Complete Feature Selection\n", + "\n", + "In order to finish this step up, you need to make sure that your data frame now only has the columns that you want to keep. To summarize, the dataframe should consist of the following:\n", + "- All numeric, interval, and ordinal type columns from the original dataset.\n", + "- Binary categorical features (all numerically-encoded).\n", + "- Engineered features from other multi-level categorical features and mixed features.\n", + "\n", + "Make sure that for any new columns that you have engineered, that you've excluded the original columns from the final dataset. Otherwise, their values will interfere with the analysis later on the project. For example, you should not keep \"PRAEGENDE_JUGENDJAHRE\", since its values won't be useful for the algorithm: only the values derived from it in the engineered features you created should be retained. As a reminder, your data should only be from **the subset with few or no missing values**." + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_ABPRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movementCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
02.012.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.025.01525451...1.05.04.03.05.04.090.0mainstream51
\n", + "

2 rows × 83 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "0 2.0 1 2.0 3 \n", + "1 1.0 2 5.0 1 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER \\\n", + "0 4 3 5 5 \n", + "1 5 2 5 4 \n", + "\n", + " FINANZ_HAUSBAUER FINANZTYP ... PLZ8_BAUMAX PLZ8_HHZ \\\n", + "0 3 4 ... NaN NaN \n", + "1 5 1 ... 1.0 5.0 \n", + "\n", + " PLZ8_GBZ ARBEIT ORTSGR_KLS9 RELAT_AB PRAEGENDE_JUGENDJAHRE_decade \\\n", + "0 NaN NaN NaN NaN NaN \n", + "1 4.0 3.0 5.0 4.0 90.0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement CAMEO_INTL_2015_wealth \\\n", + "0 NaN NaN \n", + "1 mainstream 5 \n", + "\n", + " CAMEO_INTL_2015_life \n", + "0 NaN \n", + "1 1 \n", + "\n", + "[2 rows x 83 columns]" + ] + }, + "execution_count": 62, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# If there are other re-engineering tasks you need to perform, make sure you\n", + "# take care of them here. (Dealing with missing data will come in step 2.1.)\n", + "\n", + "azdias.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "metadata": { + "scrolled": true + }, + "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", + " \n", + "
ALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERFINANZTYP...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.012.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.025.01525451...2.03.02.01.01.05.04.03.05.04.0
23.023.01412351...3.03.01.00.01.04.04.03.05.02.0
34.022.04252126...2.02.02.00.01.03.04.02.03.03.0
43.015.04341325...2.04.02.01.02.03.03.04.06.05.0
51.022.03152252...2.03.01.01.01.05.05.02.03.03.0
62.025.01515434...3.03.01.00.01.05.05.04.06.03.0
71.013.03341325...3.03.01.00.01.04.04.02.05.02.0
83.013.04424226...2.03.02.01.01.03.03.02.04.03.0
93.024.02423541...2.03.02.01.01.03.03.02.03.01.0
103.021.02253156...2.04.02.00.02.03.03.04.06.05.0
112.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
123.016.05342413...3.03.01.00.01.05.05.03.06.04.0
131.025.01435521...2.01.01.01.01.03.03.03.06.04.0
143.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
154.024.04151142...NaNNaNNaNNaNNaNNaNNaN4.08.05.0
161.021.04314513...3.03.01.00.01.03.04.01.02.01.0
172.016.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
182.026.02415411...2.03.02.01.01.03.03.03.04.03.0
193.013.05231315...2.04.02.01.02.05.04.04.06.03.0
202.024.04314513...NaNNaNNaNNaNNaNNaNNaN3.04.01.0
212.013.03412513...1.04.03.02.04.04.03.05.07.05.0
221.014.01535551...2.04.02.01.02.04.03.04.05.05.0
233.013.05332216...NaNNaNNaNNaNNaNNaNNaN3.06.02.0
243.026.03435534...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
251.013.03535434...2.02.00.00.01.04.05.03.02.05.0
263.013.05242313...NaNNaNNaNNaNNaNNaNNaN4.03.05.0
273.014.03341225...2.03.03.02.04.05.03.04.07.05.0
283.012.03243323...3.03.01.00.01.05.05.03.04.01.0
294.021.05152136...3.02.02.00.01.03.04.02.04.03.0
..................................................................
8911914.021.04151142...3.03.01.00.01.04.05.01.03.01.0
8911921.023.01525351...4.02.01.00.01.03.03.03.05.01.0
8911934.013.04151255...2.04.01.00.02.02.02.04.06.04.0
8911943.014.04342313...3.02.02.00.01.04.04.04.08.05.0
8911954.026.03151152...2.03.02.01.01.04.03.04.07.05.0
8911962.026.01525431...2.03.02.01.01.03.03.03.04.05.0
8911973.021.03241335...2.03.02.01.01.04.04.03.09.05.0
8911983.015.02534531...4.02.01.00.01.04.05.03.09.05.0
8911992.013.02523341...1.04.03.02.05.05.03.03.07.03.0
8912001.023.01535551...1.04.02.01.02.03.03.04.06.05.0
8912013.013.04232236...1.04.03.01.03.04.03.03.07.05.0
8912022.025.01412541...1.04.03.02.05.04.02.04.08.05.0
8912034.021.04151345...2.03.02.01.01.03.03.04.08.05.0
8912043.015.04344216...2.03.01.00.01.03.04.04.07.03.0
8912054.012.04243342...1.04.03.01.03.03.02.03.07.05.0
8912061.024.03424424...3.02.01.00.01.04.05.03.04.03.0
8912073.021.05151242...2.03.02.02.04.04.02.01.05.01.0
8912084.012.05242316...3.02.00.00.01.03.03.04.02.05.0
8912091.025.01423441...1.04.02.01.05.05.04.04.05.05.0
8912103.015.03342226...2.03.02.01.01.03.03.03.09.05.0
8912113.012.03243322...1.04.02.00.02.03.02.03.05.05.0
8912124.011.03151155...1.03.03.02.05.04.01.03.09.05.0
8912134.025.03335326...2.04.02.01.02.05.05.03.04.04.0
8912141.024.01523341...1.04.03.02.05.05.02.03.07.03.0
8912152.026.01524541...2.04.02.01.02.04.04.02.05.02.0
8912163.025.01425441...3.02.00.00.01.02.03.0NaNNaNNaN
8912172.014.03332236...1.03.03.02.04.05.03.04.06.05.0
8912182.024.02425431...4.02.00.00.01.03.04.02.02.03.0
8912191.013.01535551...1.04.03.01.05.01.01.04.07.05.0
8912204.011.04252156...3.03.01.00.01.04.04.03.04.05.0
\n", + "

891221 rows × 79 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP FINANZ_MINIMALIST \\\n", + "0 2.0 1 2.0 3 \n", + "1 1.0 2 5.0 1 \n", + "2 3.0 2 3.0 1 \n", + "3 4.0 2 2.0 4 \n", + "4 3.0 1 5.0 4 \n", + "5 1.0 2 2.0 3 \n", + "6 2.0 2 5.0 1 \n", + "7 1.0 1 3.0 3 \n", + "8 3.0 1 3.0 4 \n", + "9 3.0 2 4.0 2 \n", + "10 3.0 2 1.0 2 \n", + "11 2.0 1 6.0 3 \n", + "12 3.0 1 6.0 5 \n", + "13 1.0 2 5.0 1 \n", + "14 3.0 1 6.0 3 \n", + "15 4.0 2 4.0 4 \n", + "16 1.0 2 1.0 4 \n", + "17 2.0 1 6.0 3 \n", + "18 2.0 2 6.0 2 \n", + "19 3.0 1 3.0 5 \n", + "20 2.0 2 4.0 4 \n", + "21 2.0 1 3.0 3 \n", + "22 1.0 1 4.0 1 \n", + "23 3.0 1 3.0 5 \n", + "24 3.0 2 6.0 3 \n", + "25 1.0 1 3.0 3 \n", + "26 3.0 1 3.0 5 \n", + "27 3.0 1 4.0 3 \n", + "28 3.0 1 2.0 3 \n", + "29 4.0 2 1.0 5 \n", + "... ... ... ... ... \n", + "891191 4.0 2 1.0 4 \n", + "891192 1.0 2 3.0 1 \n", + "891193 4.0 1 3.0 4 \n", + "891194 3.0 1 4.0 4 \n", + "891195 4.0 2 6.0 3 \n", + "891196 2.0 2 6.0 1 \n", + "891197 3.0 2 1.0 3 \n", + "891198 3.0 1 5.0 2 \n", + "891199 2.0 1 3.0 2 \n", + "891200 1.0 2 3.0 1 \n", + "891201 3.0 1 3.0 4 \n", + "891202 2.0 2 5.0 1 \n", + "891203 4.0 2 1.0 4 \n", + "891204 3.0 1 5.0 4 \n", + "891205 4.0 1 2.0 4 \n", + "891206 1.0 2 4.0 3 \n", + "891207 3.0 2 1.0 5 \n", + "891208 4.0 1 2.0 5 \n", + "891209 1.0 2 5.0 1 \n", + "891210 3.0 1 5.0 3 \n", + "891211 3.0 1 2.0 3 \n", + "891212 4.0 1 1.0 3 \n", + "891213 4.0 2 5.0 3 \n", + "891214 1.0 2 4.0 1 \n", + "891215 2.0 2 6.0 1 \n", + "891216 3.0 2 5.0 1 \n", + "891217 2.0 1 4.0 3 \n", + "891218 2.0 2 4.0 2 \n", + "891219 1.0 1 3.0 1 \n", + "891220 4.0 1 1.0 4 \n", + "\n", + " FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 4 3 5 \n", + "1 5 2 5 \n", + "2 4 1 2 \n", + "3 2 5 2 \n", + "4 3 4 1 \n", + "5 1 5 2 \n", + "6 5 1 5 \n", + "7 3 4 1 \n", + "8 4 2 4 \n", + "9 4 2 3 \n", + "10 2 5 3 \n", + "11 4 3 5 \n", + "12 3 4 2 \n", + "13 4 3 5 \n", + "14 4 3 5 \n", + "15 1 5 1 \n", + "16 3 1 4 \n", + "17 4 3 5 \n", + "18 4 1 5 \n", + "19 2 3 1 \n", + "20 3 1 4 \n", + "21 4 1 2 \n", + "22 5 3 5 \n", + "23 3 3 2 \n", + "24 4 3 5 \n", + "25 5 3 5 \n", + "26 2 4 2 \n", + "27 3 4 1 \n", + "28 2 4 3 \n", + "29 1 5 2 \n", + "... ... ... ... \n", + "891191 1 5 1 \n", + "891192 5 2 5 \n", + "891193 1 5 1 \n", + "891194 3 4 2 \n", + "891195 1 5 1 \n", + "891196 5 2 5 \n", + "891197 2 4 1 \n", + "891198 5 3 4 \n", + "891199 5 2 3 \n", + "891200 5 3 5 \n", + "891201 2 3 2 \n", + "891202 4 1 2 \n", + "891203 1 5 1 \n", + "891204 3 4 4 \n", + "891205 2 4 3 \n", + "891206 4 2 4 \n", + "891207 1 5 1 \n", + "891208 2 4 2 \n", + "891209 4 2 3 \n", + "891210 3 4 2 \n", + "891211 2 4 3 \n", + "891212 1 5 1 \n", + "891213 3 3 5 \n", + "891214 5 2 3 \n", + "891215 5 2 4 \n", + "891216 4 2 5 \n", + "891217 3 3 2 \n", + "891218 4 2 5 \n", + "891219 5 3 5 \n", + "891220 2 5 2 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER FINANZTYP ... \\\n", + "0 5 3 4 ... \n", + "1 4 5 1 ... \n", + "2 3 5 1 ... \n", + "3 1 2 6 ... \n", + "4 3 2 5 ... \n", + "5 2 5 2 ... \n", + "6 4 3 4 ... \n", + "7 3 2 5 ... \n", + "8 2 2 6 ... \n", + "9 5 4 1 ... \n", + "10 1 5 6 ... \n", + "11 5 3 4 ... \n", + "12 4 1 3 ... \n", + "13 5 2 1 ... \n", + "14 5 3 4 ... \n", + "15 1 4 2 ... \n", + "16 5 1 3 ... \n", + "17 5 3 4 ... \n", + "18 4 1 1 ... \n", + "19 3 1 5 ... \n", + "20 5 1 3 ... \n", + "21 5 1 3 ... \n", + "22 5 5 1 ... \n", + "23 2 1 6 ... \n", + "24 5 3 4 ... \n", + "25 4 3 4 ... \n", + "26 3 1 3 ... \n", + "27 2 2 5 ... \n", + "28 3 2 3 ... \n", + "29 1 3 6 ... \n", + "... ... ... ... ... \n", + "891191 1 4 2 ... \n", + "891192 3 5 1 ... \n", + "891193 2 5 5 ... \n", + "891194 3 1 3 ... \n", + "891195 1 5 2 ... \n", + "891196 4 3 1 ... \n", + "891197 3 3 5 ... \n", + "891198 5 3 1 ... \n", + "891199 3 4 1 ... \n", + "891200 5 5 1 ... \n", + "891201 2 3 6 ... \n", + "891202 5 4 1 ... \n", + "891203 3 4 5 ... \n", + "891204 2 1 6 ... \n", + "891205 3 4 2 ... \n", + "891206 4 2 4 ... \n", + "891207 2 4 2 ... \n", + "891208 3 1 6 ... \n", + "891209 4 4 1 ... \n", + "891210 2 2 6 ... \n", + "891211 3 2 2 ... \n", + "891212 1 5 5 ... \n", + "891213 3 2 6 ... \n", + "891214 3 4 1 ... \n", + "891215 5 4 1 ... \n", + "891216 4 4 1 ... \n", + "891217 2 3 6 ... \n", + "891218 4 3 1 ... \n", + "891219 5 5 1 ... \n", + "891220 1 5 6 ... \n", + "\n", + " PLZ8_ANTG1 PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 2.0 3.0 2.0 1.0 1.0 5.0 \n", + "2 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "3 2.0 2.0 2.0 0.0 1.0 3.0 \n", + "4 2.0 4.0 2.0 1.0 2.0 3.0 \n", + "5 2.0 3.0 1.0 1.0 1.0 5.0 \n", + "6 3.0 3.0 1.0 0.0 1.0 5.0 \n", + "7 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "8 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "9 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "10 2.0 4.0 2.0 0.0 2.0 3.0 \n", + "11 NaN NaN NaN NaN NaN NaN \n", + "12 3.0 3.0 1.0 0.0 1.0 5.0 \n", + "13 2.0 1.0 1.0 1.0 1.0 3.0 \n", + "14 NaN NaN NaN NaN NaN NaN \n", + "15 NaN NaN NaN NaN NaN NaN \n", + "16 3.0 3.0 1.0 0.0 1.0 3.0 \n", + "17 NaN NaN NaN NaN NaN NaN \n", + "18 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "19 2.0 4.0 2.0 1.0 2.0 5.0 \n", + "20 NaN NaN NaN NaN NaN NaN \n", + "21 1.0 4.0 3.0 2.0 4.0 4.0 \n", + "22 2.0 4.0 2.0 1.0 2.0 4.0 \n", + "23 NaN NaN NaN NaN NaN NaN \n", + "24 NaN NaN NaN NaN NaN NaN \n", + "25 2.0 2.0 0.0 0.0 1.0 4.0 \n", + "26 NaN NaN NaN NaN NaN NaN \n", + "27 2.0 3.0 3.0 2.0 4.0 5.0 \n", + "28 3.0 3.0 1.0 0.0 1.0 5.0 \n", + "29 3.0 2.0 2.0 0.0 1.0 3.0 \n", + "... ... ... ... ... ... ... \n", + "891191 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "891192 4.0 2.0 1.0 0.0 1.0 3.0 \n", + "891193 2.0 4.0 1.0 0.0 2.0 2.0 \n", + "891194 3.0 2.0 2.0 0.0 1.0 4.0 \n", + "891195 2.0 3.0 2.0 1.0 1.0 4.0 \n", + "891196 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "891197 2.0 3.0 2.0 1.0 1.0 4.0 \n", + "891198 4.0 2.0 1.0 0.0 1.0 4.0 \n", + "891199 1.0 4.0 3.0 2.0 5.0 5.0 \n", + "891200 1.0 4.0 2.0 1.0 2.0 3.0 \n", + "891201 1.0 4.0 3.0 1.0 3.0 4.0 \n", + "891202 1.0 4.0 3.0 2.0 5.0 4.0 \n", + "891203 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "891204 2.0 3.0 1.0 0.0 1.0 3.0 \n", + "891205 1.0 4.0 3.0 1.0 3.0 3.0 \n", + "891206 3.0 2.0 1.0 0.0 1.0 4.0 \n", + "891207 2.0 3.0 2.0 2.0 4.0 4.0 \n", + "891208 3.0 2.0 0.0 0.0 1.0 3.0 \n", + "891209 1.0 4.0 2.0 1.0 5.0 5.0 \n", + "891210 2.0 3.0 2.0 1.0 1.0 3.0 \n", + "891211 1.0 4.0 2.0 0.0 2.0 3.0 \n", + "891212 1.0 3.0 3.0 2.0 5.0 4.0 \n", + "891213 2.0 4.0 2.0 1.0 2.0 5.0 \n", + "891214 1.0 4.0 3.0 2.0 5.0 5.0 \n", + "891215 2.0 4.0 2.0 1.0 2.0 4.0 \n", + "891216 3.0 2.0 0.0 0.0 1.0 2.0 \n", + "891217 1.0 3.0 3.0 2.0 4.0 5.0 \n", + "891218 4.0 2.0 0.0 0.0 1.0 3.0 \n", + "891219 1.0 4.0 3.0 1.0 5.0 1.0 \n", + "891220 3.0 3.0 1.0 0.0 1.0 4.0 \n", + "\n", + " PLZ8_GBZ ARBEIT ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN NaN NaN \n", + "1 4.0 3.0 5.0 4.0 \n", + "2 4.0 3.0 5.0 2.0 \n", + "3 4.0 2.0 3.0 3.0 \n", + "4 3.0 4.0 6.0 5.0 \n", + "5 5.0 2.0 3.0 3.0 \n", + "6 5.0 4.0 6.0 3.0 \n", + "7 4.0 2.0 5.0 2.0 \n", + "8 3.0 2.0 4.0 3.0 \n", + "9 3.0 2.0 3.0 1.0 \n", + "10 3.0 4.0 6.0 5.0 \n", + "11 NaN NaN NaN NaN \n", + "12 5.0 3.0 6.0 4.0 \n", + "13 3.0 3.0 6.0 4.0 \n", + "14 NaN NaN NaN NaN \n", + "15 NaN 4.0 8.0 5.0 \n", + "16 4.0 1.0 2.0 1.0 \n", + "17 NaN NaN NaN NaN \n", + "18 3.0 3.0 4.0 3.0 \n", + "19 4.0 4.0 6.0 3.0 \n", + "20 NaN 3.0 4.0 1.0 \n", + "21 3.0 5.0 7.0 5.0 \n", + "22 3.0 4.0 5.0 5.0 \n", + "23 NaN 3.0 6.0 2.0 \n", + "24 NaN NaN NaN NaN \n", + "25 5.0 3.0 2.0 5.0 \n", + "26 NaN 4.0 3.0 5.0 \n", + "27 3.0 4.0 7.0 5.0 \n", + "28 5.0 3.0 4.0 1.0 \n", + "29 4.0 2.0 4.0 3.0 \n", + "... ... ... ... ... \n", + "891191 5.0 1.0 3.0 1.0 \n", + "891192 3.0 3.0 5.0 1.0 \n", + "891193 2.0 4.0 6.0 4.0 \n", + "891194 4.0 4.0 8.0 5.0 \n", + "891195 3.0 4.0 7.0 5.0 \n", + "891196 3.0 3.0 4.0 5.0 \n", + "891197 4.0 3.0 9.0 5.0 \n", + "891198 5.0 3.0 9.0 5.0 \n", + "891199 3.0 3.0 7.0 3.0 \n", + "891200 3.0 4.0 6.0 5.0 \n", + "891201 3.0 3.0 7.0 5.0 \n", + "891202 2.0 4.0 8.0 5.0 \n", + "891203 3.0 4.0 8.0 5.0 \n", + "891204 4.0 4.0 7.0 3.0 \n", + "891205 2.0 3.0 7.0 5.0 \n", + "891206 5.0 3.0 4.0 3.0 \n", + "891207 2.0 1.0 5.0 1.0 \n", + "891208 3.0 4.0 2.0 5.0 \n", + "891209 4.0 4.0 5.0 5.0 \n", + "891210 3.0 3.0 9.0 5.0 \n", + "891211 2.0 3.0 5.0 5.0 \n", + "891212 1.0 3.0 9.0 5.0 \n", + "891213 5.0 3.0 4.0 4.0 \n", + "891214 2.0 3.0 7.0 3.0 \n", + "891215 4.0 2.0 5.0 2.0 \n", + "891216 3.0 NaN NaN NaN \n", + "891217 3.0 4.0 6.0 5.0 \n", + "891218 4.0 2.0 2.0 3.0 \n", + "891219 1.0 4.0 7.0 5.0 \n", + "891220 4.0 3.0 4.0 5.0 \n", + "\n", + "[891221 rows x 79 columns]" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdias.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We need to drop ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',\n", + " 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',\n", + " 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "79" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(azdias.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "16\n", + "7\n", + "\n", + "148\n", + "22\n" + ] + } + ], + "source": [ + "print(len(categorical_cols))\n", + "print(len(mixed_cols))\n", + "print()\n", + "print(len(azdias_cat_dummies.columns))\n", + "print(len(azdias_mixed_dummies.columns))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have 79 cols which is what we started with after we dropped the mostly empty cols.\n", + "\n", + "We need to do the following:\n", + "\n", + "* Drop categorical_cols and replace with adzias_cat_dummies\n", + "* Drop mixed_cols and replace with azdias_mixed_dummies\n", + "\n", + "We know we need to drop 16+6 = 22 columns from azdias (It's 6 because we dropped one of these right at the start)\n", + "\n", + "We know we need to add 148+22 = 170 columns to azdias\n", + "\n", + "We know we will end up with 79-22+170=227 columns at the end" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "metadata": {}, + "outputs": [], + "source": [ + "mixed_cols.remove('KBA05_BAUMAX')" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['LP_LEBENSPHASE_FEIN',\n", + " 'LP_LEBENSPHASE_GROB',\n", + " 'PRAEGENDE_JUGENDJAHRE',\n", + " 'WOHNLAGE',\n", + " 'CAMEO_INTL_2015',\n", + " 'PLZ8_BAUMAX']" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mixed_cols" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(categorical_cols, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "metadata": {}, + "outputs": [], + "source": [ + "azdias.drop(mixed_cols, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.013435530NaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
11.0215254503.0...963.02.03.02.01.05.04.03.05.04.0
\n", + "

2 rows × 57 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 2.0 1 3 4 \n", + "1 1.0 2 1 5 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 3 5 5 3 \n", + "1 2 5 4 5 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 0 NaN ... NaN NaN \n", + "1 0 3.0 ... 963.0 2.0 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 NaN NaN NaN NaN NaN NaN \n", + "1 3.0 2.0 1.0 5.0 4.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 NaN NaN \n", + "1 5.0 4.0 \n", + "\n", + "[2 rows x 57 columns]" + ] + }, + "execution_count": 71, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp = azdias\n", + "azdiastemp.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "azdiastemp = azdiastemp.join(azdias_cat_dummies)" + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp = azdiastemp.join(azdias_mixed_dummies)" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
02.013435530NaN...0001000001
11.0215254503.0...0010100000
23.0214123513.0...0000000100
34.0242521202.0...0000010000
43.0143413203.0...0100001000
\n", + "

5 rows × 227 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 2.0 1 3 4 \n", + "1 1.0 2 1 5 \n", + "2 3.0 2 1 4 \n", + "3 4.0 2 4 2 \n", + "4 3.0 1 4 3 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 3 5 5 3 \n", + "1 2 5 4 5 \n", + "2 1 2 3 5 \n", + "3 5 2 1 2 \n", + "4 4 1 3 2 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... \\\n", + "0 0 NaN ... \n", + "1 0 3.0 ... \n", + "2 1 3.0 ... \n", + "3 0 2.0 ... \n", + "4 0 3.0 ... \n", + "\n", + " CAMEO_INTL_2015_wealth_3 CAMEO_INTL_2015_wealth_4 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 1 \n", + "\n", + " CAMEO_INTL_2015_wealth_5 CAMEO_INTL_2015_wealth_nan \\\n", + "0 0 1 \n", + "1 1 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 CAMEO_INTL_2015_life_3 \\\n", + "0 0 0 0 \n", + "1 1 0 0 \n", + "2 0 0 0 \n", + "3 0 1 0 \n", + "4 0 0 1 \n", + "\n", + " CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 CAMEO_INTL_2015_life_nan \n", + "0 0 0 1 \n", + "1 0 0 0 \n", + "2 1 0 0 \n", + "3 0 0 0 \n", + "4 0 0 0 \n", + "\n", + "[5 rows x 227 columns]" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "We have 227 cols as expected" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 1.3: Create a Cleaning Function\n", + "\n", + "Even though you've finished cleaning up the general population demographics data, it's important to look ahead to the future and realize that you'll need to perform the same cleaning steps on the customer demographics data. In this substep, complete the function below to execute the main feature selection, encoding, and re-engineering steps you performed above. Then, when it comes to looking at the customer data in Step 3, you can just run this function on that DataFrame to get the trimmed dataset in a single step." + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "metadata": {}, + "outputs": [], + "source": [ + "def clean_data(df):\n", + " \"\"\"\n", + " Perform feature trimming, re-encoding, and engineering for demographics\n", + " data\n", + " \n", + " INPUT: Demographics DataFrame\n", + " OUTPUT: Trimmed and cleaned demographics DataFrame\n", + " \"\"\"\n", + " \n", + " # Put in code here to execute all main cleaning steps:\n", + " # convert missing value codes into NaNs, ...\n", + " \n", + " \n", + " # remove selected columns and rows, ...\n", + "\n", + " \n", + " # select, re-encode, and engineer column values.\n", + "\n", + " \n", + " # Return the cleaned dataframe.\n", + " \n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Step 2: Feature Transformation\n", + "\n", + "### Step 2.1: Apply Feature Scaling\n", + "\n", + "Before we apply dimensionality reduction techniques to the data, we need to perform feature scaling so that the principal component vectors are not influenced by the natural differences in scale for features. Starting from this part of the project, you'll want to keep an eye on the [API reference page for sklearn](http://scikit-learn.org/stable/modules/classes.html) to help you navigate to all of the classes and functions that you'll need. In this substep, you'll need to check the following:\n", + "\n", + "- sklearn requires that data not have missing values in order for its estimators to work properly. So, before applying the scaler to your data, make sure that you've cleaned the DataFrame of the remaining missing values. This can be as simple as just removing all data points with missing data, or applying an [Imputer](http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.Imputer.html) to replace all missing values. You might also try a more complicated procedure where you temporarily remove missing values in order to compute the scaling parameters before re-introducing those missing values and applying imputation. Think about how much missing data you have and what possible effects each approach might have on your analysis, and justify your decision in the discussion section below.\n", + "- For the actual scaling function, a [StandardScaler](http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.StandardScaler.html) instance is suggested, scaling each feature to mean 0 and standard deviation 1.\n", + "- For these classes, you can make use of the `.fit_transform()` method to both fit a procedure to the data as well as apply the transformation to the data at the same time. Don't forget to keep the fit sklearn objects handy, since you'll be applying them to the customer demographics data towards the end of the project." + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "metadata": {}, + "outputs": [], + "source": [ + "# If you've not yet cleaned the dataset of all NaN values, then investigate and\n", + "# do that now.\n", + "\n", + "# from sklearn.impute import SimpleImputer\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "To keep things simple I will drop any row with a null value. As long as we know that our final result may suffer because of the lack of information I am happy to do this for the sake of the project. In reality I would spend more time using an Imputer (which isn't a simple thing to do if you want to do it properly), or using another ML algorithm to predict the values we are missing." + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/plain": [ + "259095" + ] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp.shape[0] - azdiastemp.dropna().shape[0]\n" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa = azdiastemp.dropna()" + ] + }, + { + "cell_type": "code", + "execution_count": 79, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 227)" + ] + }, + "execution_count": 79, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will lose 259,095 (30%) of our rows by dropping null values" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "As we encoded our features from before into dummy variables, we do not need to scale these now. These are contained in the lists azdias_cat_dummies and azdias_mixed_dummies. In addition we don't need to scale GREEN_AVANTGARDE as it is a binary column with 1,0. We do need to scale ANREDE_KZ, as it is not a binary numbered value." + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(891221, 227)" + ] + }, + "execution_count": 80, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp.shape" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 81, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop(azdias_cat_dummies.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop(azdias_mixed_dummies.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop('GREEN_AVANTGARDE', axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERHEALTH_TYPRETOURTYP_BK_S...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
11.021525453.01.0...963.02.03.02.01.05.04.03.05.04.0
23.021412353.03.0...712.03.03.01.00.04.04.03.05.02.0
43.014341323.05.0...435.02.04.02.01.03.03.04.06.05.0
51.023152253.03.0...1300.02.03.01.01.05.05.02.03.03.0
\n", + "

4 rows × 56 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "1 1.0 2 1 5 \n", + "2 3.0 2 1 4 \n", + "4 3.0 1 4 3 \n", + "5 1.0 2 3 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "1 2 5 4 5 \n", + "2 1 2 3 5 \n", + "4 4 1 3 2 \n", + "5 5 2 2 5 \n", + "\n", + " HEALTH_TYP RETOURTYP_BK_S ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "1 3.0 1.0 ... 963.0 2.0 \n", + "2 3.0 3.0 ... 712.0 3.0 \n", + "4 3.0 5.0 ... 435.0 2.0 \n", + "5 3.0 3.0 ... 1300.0 2.0 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "1 3.0 2.0 1.0 5.0 4.0 3.0 \n", + "2 3.0 1.0 0.0 4.0 4.0 3.0 \n", + "4 4.0 2.0 1.0 3.0 3.0 4.0 \n", + "5 3.0 1.0 1.0 5.0 5.0 2.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "1 5.0 4.0 \n", + "2 5.0 2.0 \n", + "4 6.0 5.0 \n", + "5 3.0 3.0 \n", + "\n", + "[4 rows x 56 columns]" + ] + }, + "execution_count": 84, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.head(4)" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.preprocessing import StandardScaler\n", + "\n", + "scaler = StandardScaler()" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "StandardScaler(copy=True, with_mean=True, with_std=True)" + ] + }, + "execution_count": 86, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "scaler.fit(azdiastemp_noNa)" + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa_scaled = pd.DataFrame(scaler.transform(azdiastemp_noNa), columns=azdiastemp_noNa.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 88, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_scaled.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 56)" + ] + }, + "execution_count": 89, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_scaled.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 56)" + ] + }, + "execution_count": 90, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 91, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa = azdiastemp.dropna()" + ] + }, + { + "cell_type": "code", + "execution_count": 92, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(632126, 227)" + ] + }, + "execution_count": 92, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 93, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "azdiastemp_noNa.drop(azdiastemp_noNa_scaled.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 94, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 94, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 95, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Int64Index([ 1, 2, 4, 5, 6, 7, 8, 9,\n", + " 10, 19,\n", + " ...\n", + " 891207, 891209, 891210, 891211, 891212, 891213, 891214, 891215,\n", + " 891219, 891220],\n", + " dtype='int64', length=632126)" + ] + }, + "execution_count": 95, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa.index" + ] + }, + { + "cell_type": "code", + "execution_count": 96, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(632126, 171)\n", + "(632126, 56)\n" + ] + } + ], + "source": [ + "print(azdiastemp_noNa.shape)\n", + "print(azdiastemp_noNa_scaled.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 97, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa_final = pd.merge(azdiastemp_noNa.reset_index(), azdiastemp_noNa_scaled.reset_index(), right_index=True, left_index=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 98, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 98, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_final.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 99, + "metadata": {}, + "outputs": [], + "source": [ + "azdiastemp_noNa_final.drop(['index_x', 'index_y'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 100, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(632126, 227)\n" + ] + }, + { + "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", + "
GREEN_AVANTGARDECJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
00000010010...1.057812-0.2310610.1813780.372030.3814591.4402750.586011-0.203820-0.1719750.655880
11001000010...0.3028980.7917000.181378-0.64373-0.9843450.4008630.586011-0.203820-0.171975-0.824992
20000010000...-0.530214-0.2310611.2707640.372030.381459-0.638548-0.3118340.8075280.2635721.396317
30010000001...2.071381-0.2310610.181378-0.643730.3814591.4402751.483855-1.215167-1.043069-0.084556
40000010000...0.7690800.7917000.181378-0.64373-0.9843451.4402751.4838550.8075280.263572-0.084556
50001000000...0.4412490.7917000.181378-0.64373-0.9843450.4008630.586011-1.215167-0.171975-0.824992
61001000000...-0.301635-0.2310610.1813780.372030.381459-0.638548-0.311834-1.215167-0.607522-0.084556
71000100010...-0.244490-0.2310610.1813780.372030.381459-0.638548-0.311834-1.215167-1.043069-1.565428
80100000000...-0.563298-0.2310611.2707640.37203-0.984345-0.638548-0.3118340.8075280.2635721.396317
91001000000...0.029204-0.2310611.2707640.372030.3814591.4402750.5860110.8075280.263572-0.084556
\n", + "

10 rows × 227 columns

\n", + "
" + ], + "text/plain": [ + " GREEN_AVANTGARDE CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 \\\n", + "0 0 0 0 0 \n", + "1 1 0 0 1 \n", + "2 0 0 0 0 \n", + "3 0 0 1 0 \n", + "4 0 0 0 0 \n", + "5 0 0 0 1 \n", + "6 1 0 0 1 \n", + "7 1 0 0 0 \n", + "8 0 1 0 0 \n", + "9 1 0 0 1 \n", + "\n", + " CJT_GESAMTTYP_4.0 CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan \\\n", + "0 0 1 0 0 \n", + "1 0 0 0 0 \n", + "2 0 1 0 0 \n", + "3 0 0 0 0 \n", + "4 0 1 0 0 \n", + "5 0 0 0 0 \n", + "6 0 0 0 0 \n", + "7 1 0 0 0 \n", + "8 0 0 0 0 \n", + "9 0 0 0 0 \n", + "\n", + " FINANZTYP_1 FINANZTYP_2 ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 1 0 ... 1.057812 -0.231061 \n", + "1 1 0 ... 0.302898 0.791700 \n", + "2 0 0 ... -0.530214 -0.231061 \n", + "3 0 1 ... 2.071381 -0.231061 \n", + "4 0 0 ... 0.769080 0.791700 \n", + "5 0 0 ... 0.441249 0.791700 \n", + "6 0 0 ... -0.301635 -0.231061 \n", + "7 1 0 ... -0.244490 -0.231061 \n", + "8 0 0 ... -0.563298 -0.231061 \n", + "9 0 0 ... 0.029204 -0.231061 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 0.181378 0.37203 0.381459 1.440275 0.586011 -0.203820 \n", + "1 0.181378 -0.64373 -0.984345 0.400863 0.586011 -0.203820 \n", + "2 1.270764 0.37203 0.381459 -0.638548 -0.311834 0.807528 \n", + "3 0.181378 -0.64373 0.381459 1.440275 1.483855 -1.215167 \n", + "4 0.181378 -0.64373 -0.984345 1.440275 1.483855 0.807528 \n", + "5 0.181378 -0.64373 -0.984345 0.400863 0.586011 -1.215167 \n", + "6 0.181378 0.37203 0.381459 -0.638548 -0.311834 -1.215167 \n", + "7 0.181378 0.37203 0.381459 -0.638548 -0.311834 -1.215167 \n", + "8 1.270764 0.37203 -0.984345 -0.638548 -0.311834 0.807528 \n", + "9 1.270764 0.37203 0.381459 1.440275 0.586011 0.807528 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 -0.171975 0.655880 \n", + "1 -0.171975 -0.824992 \n", + "2 0.263572 1.396317 \n", + "3 -1.043069 -0.084556 \n", + "4 0.263572 -0.084556 \n", + "5 -0.171975 -0.824992 \n", + "6 -0.607522 -0.084556 \n", + "7 -1.043069 -1.565428 \n", + "8 0.263572 1.396317 \n", + "9 0.263572 -0.084556 \n", + "\n", + "[10 rows x 227 columns]" + ] + }, + "execution_count": 100, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(azdiastemp_noNa_final.shape)\n", + "azdiastemp_noNa_final.head(10)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 2.1: Apply Feature Scaling\n", + "\n", + "My process has been explained above but we can recap here\n", + "\n", + "The idea was:\n", + "\n", + "* Filter out columns that had been transformed into dummy variables\n", + "* Apply scaling to the remaining columns\n", + "* Join everything together under azdiastemp" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 2.2: Perform Dimensionality Reduction\n", + "\n", + "On your scaled data, you are now ready to apply dimensionality reduction techniques.\n", + "\n", + "- Use sklearn's [PCA](http://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html) class to apply principal component analysis on the data, thus finding the vectors of maximal variance in the data. To start, you should not set any parameters (so all components are computed) or set a number of components that is at least half the number of features (so there's enough features to see the general trend in variability).\n", + "- Check out the ratio of variance explained by each principal component as well as the cumulative variance explained. Try plotting the cumulative or sequential values using matplotlib's [`plot()`](https://matplotlib.org/api/_as_gen/matplotlib.pyplot.plot.html) function. Based on what you find, select a value for the number of transformed features you'll retain for the clustering part of the project.\n", + "- Once you've made a choice for the number of components to keep, make sure you re-fit a PCA instance to perform the decided-on transformation." + ] + }, + { + "cell_type": "code", + "execution_count": 101, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 101, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "azdiastemp_noNa_final.isnull().values.any()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Reusing some of the code from the videos here, really good way to plot the pca variance!" + ] + }, + { + "cell_type": "code", + "execution_count": 102, + "metadata": {}, + "outputs": [], + "source": [ + "# Apply PCA to the data.\n", + "from sklearn.decomposition import PCA\n", + "\n", + "def do_pca(n_components, data):\n", + " '''\n", + " Transforms data using PCA to create n_components, and provides back the results of the\n", + " transformation.\n", + "\n", + " INPUT: n_components - int - the number of principal components to create\n", + " data - the data you would like to transform\n", + "\n", + " OUTPUT: pca - the pca object created after fitting the data\n", + " X_pca - the transformed X matrix with new number of components\n", + " '''\n", + "# X = StandardScaler().fit_transform(data)\n", + " pca = PCA(n_components)\n", + "# X_pca = pca.fit_transform(X)\n", + " X_pca = pca.fit_transform(data)\n", + " return pca, X_pca\n" + ] + }, + { + "cell_type": "code", + "execution_count": 103, + "metadata": {}, + "outputs": [], + "source": [ + "pca, df_pca = do_pca(50, azdiastemp_noNa_final)" + ] + }, + { + "cell_type": "code", + "execution_count": 104, + "metadata": {}, + "outputs": [], + "source": [ + "def scree_plot(pca):\n", + " '''\n", + " Creates a scree plot associated with the principal components\n", + "\n", + " INPUT: pca - the result of instantian of PCA in scikit learn\n", + "\n", + " OUTPUT:\n", + " None\n", + " '''\n", + " num_components=len(pca.explained_variance_ratio_)\n", + " ind = np.arange(num_components)\n", + " vals = pca.explained_variance_ratio_\n", + "\n", + " plt.figure(figsize=(10, 6))\n", + " ax = plt.subplot(111)\n", + " cumvals = np.cumsum(vals)\n", + " ax.bar(ind, vals)\n", + " ax.plot(ind, cumvals)\n", + " for i in range(num_components):\n", + " ax.annotate(r\"%s%%\" % ((str(vals[i]*100)[:4])), (ind[i]+0.2, vals[i]), va=\"bottom\", ha=\"center\", fontsize=12)\n", + "\n", + " ax.xaxis.set_tick_params(width=0)\n", + " ax.yaxis.set_tick_params(width=2, length=12)\n", + "\n", + " ax.set_xlabel(\"Principal Component\")\n", + " ax.set_ylabel(\"Variance Explained (%)\")\n", + " plt.title('Explained Variance Per Principal Component')\n" + ] + }, + { + "cell_type": "code", + "execution_count": 105, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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ISGh9bXNLY4F+aWcPNVb7/7FF18kMTGRQw89dIfvtXz5cj744IPWiw+ys7N57733SEhIYOXKlQwdOjT4JywiIiLdilrafG655RaioqK47bbbePzxx4mKiuKWW25hzZo1zJw5k7i4OMaPH09kZCT/+c9/Wl934YUXcsY551Pd0Nw6nu2RRx7h7LPPbm2V295FF13E3XffTXh4OAB/+MMfuOeeexg3bhy/+c1vGDx4cPBPWERERLoV276bryeYNm2ay8nJ6bT3e+yzXK57eRlzfn0oGcnRnfa+IiIi0v2Z2Tzn3LSd7aeWtg4wL6+UgXGRpCdFhboUERER6aEU2nbDvffeS2TqSCyiD7ETjuClhesprqxnyNl3EpU1mfCoOAYMGMCpp55KUVFRu8d66qmnGDNmDDExMQwfPpw5c+YAUFBQwIwZM0hOTuaKK67Y5jUzZ86kM1sSRUREJPQU2nbDkCFDSNjvNGInHLnN8y11VcTuPZO0C/9NXl4ecXFxnHfeeW0e5+233+aqq67ioYceorKyko8++ohhw4YB3ji3c845h7Vr1/LSSy+1hrSnn36aYcOGtU5DIiIiIr2Drh7dDSeddBK//DKS+g2raK78dnWEqOHfBqno6GguvvhiDj744DaPc8MNN3D99dczY8YMANLS0lq3rV27lssuu4yEhAT22Wcf1qxZw6hRo7jtttt4//33g3BWIiIi0pWppS2IPvroI8aNG7fDbc3NzeTk5LBp0yZGjBhBeno6F198ceti9ePHj+ftt9+mrKyMnJwcxo4dy3XXXcfll19OYmJiZ56GiIiIdAEKbUGyePFibrrpJv70pz/tcPvGjRtpbGzkueeeY86cOSxcuJAFCxZwyy23AHDNNdcwZ84cDj74YC666CIaGxtZvHgxs2fP5owzzuCggw7i3nvv7cxTEhERkRBS92gQNJauZ9asn3L33Xdz4IEH7nCfqCjvStNLLrmE1NRUAH75y19yyy23cOutt5KcnMzTTz8NQEtLCwcddBB///vfue222xg/fjwPP/wwU6ZM4bDDDmPs2LGdc2IiIiISMmpp62BN5cVsfOparrvuOs4666w290tKSiI9Pb3NCXj9/eMf/2DGjBmMHz++dcmrvn37MmHCBJYuXdqR5YuIiEgXpdC2G5qamnBNDeCawbXgmhpwLc00VZaw8anfEDflWC688MKdHue8887jr3/9K8XFxZSWlvKXv/yF4447bpt9iouLue+++7jxxhsBb8mr999/n6qqKnJyclqvNhUREZGeTaFtN9xyyy3k33ESFZ8/R/Wy98m/4yTKP32KqkVv0VS2gfJP/kNsbGzrbavf//73zJo1q/Xxddddxz777MOoUaMYM2YMkydP5re//e0273XllVdy/fXXtx7nmmuu4b333iMjI4Pjjz9eU3+IiIj0ElrGajdlXf2/drfn3nZsUN9fREREegYtYyUiIiLSg+jq0SBTi5yIiIh0BLW0iYiIiHQDCm1BlJuby8Znb6DgL6dRcO+P2PL2/biW5u/s55zj1ltvZejQocTHx/PDH/6QioqK1u2//vWvycjIID4+nszMTG699dbWbeXl5Rx99NEkJiZy5pln0tz87fEvuOACXnzxxeCepIiIiHQKhbYg+vnPf054dCLpFz/GkHP/Sl3+Uirnf7e79NFHH+Wxxx7jk08+Yf369dTW1nLJJZe0bj///PP56quvqKio4NNPP+XJJ5/khRdeAOCBBx5g8uTJbNy4kdzc3NaQ9tlnn1FUVMSJJ57YOScrIiIiQaXQFkRr164lZq/vYRF9CY9NImrYVBpL8r+z36uvvsr5559PRkYGsbGxXHXVVTz99NPU1NQAMHr0aGJiYlr3DwsLY9WqVa3vceihhxIZGcmBBx7ImjVraG5u5he/+AV3331355yoiIiIBJ1CWxBddtllVK/4iJbGOpoqS6hdk0PUsCnf2c85h//UK8456uvrWblyZetzt912G7GxsaSnp1NdXc0ZZ5wBeAvLv/POO9TW1jJnzhzGjRvHPffcw6z/Z+/M46qq1v//XudwOBzmWZBBEcEBFMgBzSGHNIecy26pV/OmaZkNamqpWWlZWdpgZJoNXi0rhzTnCSVL0xQVp5JBQFFDRJF5eH5/APsnWffa/WY2rPfrxQvO3p+z91pnbfb5rGfttZ7u3QkNDb3xldRoNBqNRvO7oE3bDeS2226jNDudjDkDOf32MOz9wrCFtb5G1717dxYuXEhaWhqXLl3ipZdeAjAibQCTJk0iLy+P/fv3M2TIENzc3IDKodNLly4RGxtLu3btiIqKYvHixTz22GOMHj2a9u3bM2XKlN+nwhqNRqPRaG4Y2rTdICoqKrjjjjtwDL+V4CeWEzh2KRVFV8iNf/8a7fDhw7n33nvp0KEDERERdOzYEYDAwMAaOqUUMTEx2Gw2nnnmGQAcHBx49913OXToELNmzeLxxx/nhRdeYMmSJZSXl7Njxw727NnDhg0bbnylNRqNRqPR3DC0abtB5OTkkJGRgUuzO1F2Fsw2V5yb3E5hyrWZGkwmE88++yxpaWlkZmYSERFBQEAAAQEBP3vssrIykpOTr9m+YcMGRIRu3boZieWVUjRv3pxDhw795nXUaDQajUbz+6FN2w3C29ubkJAQ8g6sQyrKqSi6wpWkrVh8Q67R5uTkkJycjIhw9OhRnnjiCaZNm4bJZKKiooL58+dz8eJFRIRvv/2WefPm0blz5xrHKCoqYtKkScyZMweoTCwfHx9PSUkJu3bt0onlNRqNRqP5k6NN2w1kxYoVFKZ8R+Yb93H63ZEokxnPTiMASH/tLooykgDIzs6mR48eODk50b17d4YPHzlsuFYAACAASURBVM7IkSON46xcuZLQ0FBcXFwYPHgwjzzySI0lQaAyGf2gQYMICgoC4MEHHyQ7OxsfHx8CAwP10h8ajUaj0fzJ0Qnj/0euNz2VTmOl0Wg0Go3mP6ETxms0Go1Go9H8hdAJ4/8g6IicRqPRaDSa/4SOtGk0Go1Go9H8CdCmTaPRaDQajeZPgDZtGo1Go9FoNH8CtGnTaDQajUaj+ROgTZtGo9FoNBrNnwBt2v5AlOac5tTsfmSvmf2z+7dv307Hjh1xc3Ojbt261+yvW7cuNpsNZ2dnnJ2d6dq1q7Fv69athISE4O/vz7Jly4ztubm53HLLLeTl5f3m9dFoNBqNRvPboU3bH4icze9g9Q/7xf1OTk4MHz6cV1555Rc1a9as4cqVK1y5coVNmzYZ2x977DHWrFnDhg0bGD16NOXl5QBMnjyZSZMm4eLi8ttVRKPRaDQazW+ONm1/EPKP7sBkdcKhTtQvalq2bMnGjRuZPHky6enphIeHs3Dhwp/VfvDBB5jNZiPqduTIEbKzs4mKisLe3p4JEyZQv3595s+fz9GjR2u89+DBg0RERODt7W3kMgUoLS0lNjaWjIyM36bSGo1Go9Forhtt2v4AXL58mdyvluDR6V//VTt58mQWL15McHAwq1evZsqUKXz33XfG/kGDBuHj48Ps2bNp2rSpEXVr2bIlHh4eHDx4EJPJREREBBaLhY4dO/7sOWbPns3BgweZMWMGZ8+eBeC1115jwIABRn5TjUaj0Wg0vx/atP0BmDp1Ks5Nu2Ln6vNftREREdjb2wOglEIpRXJyMgBLliwhLS2N77//nvz8fBITE3FxcSEmJobBgwfz6KOPMnLkSBYvXkx+fj533XUXFouFOXPmYLVacXFx4aGHHiIlJYVOnToREBBAcHAw/fv3x83NjSlTppCWlkZZWRkAly5d4o477sDd3Z1BgwYZQ64AI0aMYOXKlTfg09JoNBqN5u+JNm03mcTERLZs2YJriz7X/Z433niD9PR0GjZsiL+/Pz169ACgTZs22Gw27O3tiYr6/8Os586dY9y4cSxcuJA9e/bQuHFjFi1axLhx49iyZQtXrlzBzs6OoqIitm3bhslkYtOmTWRmZnL06FHq1KmDu7s7dnZ2zJ8/HycnJ6xWK76+vsTExHDu3DnS0tJYuXIlP/zwA1arlXXr1tGvXz9AD7dqNBqNRvNboE3bTSY+Pp60tDQy4+4n463BXP52JQXff03WB4/+4nvGjh1LUFAQCQkJ9O/fH6vVWmO/k5MTr732GvXq1WPx4sVs3LgRpRTPPPMMAI8//jgzZszAYrFQXl5Oly5dyMvLw9nZmbS0NLKzs4mLi6N37954e3sTEhKCxWLBy8sLEaGiooLw8HBCQkLo2LEjVquVdu3akZKSQv/+/SktLeX8+fP4+voydOhQxo8fbwy3Pvvss7Rt2xY3Nzf8/f1p0KCBMdyakZFBq1at8PT0ZNy4cTXq1K1bN/bt2/cbf/oajUaj0fx50KbtJjNy5EiSk5OpPexNag97E5fo7tjqNcd34HPXaCsqKigqKqK0tBSA5s2bc+rUKeLi4khPT2fXrl2UlJRQVFTE8uXLuXz5Mu3atcPX15eKigoSExPZvHkzRUVF3HnnnTg5OWEymcjPz+fYsWMopfD19eXHH3/k448/Zv/+/UycOJG4uDh69uxJgwYNqF27NqNGjSIpKYlmzZqxZcsWCgsLSUhI4OzZs2RkZGCxWADw9/cnPT2d7777jk6dOlGrVi2Ki4tp3rw5TzzxBJcuXWLx4sVYLBaGDx/OjBkzGDp0KKmpqbz99tt4eHjg4uKCq6sr8fHxdOnShYceeoh9+/YZkTur1WpMtnB2dkYpxf333w9oE6jRaDSavxbatN1kHB0d8fPzw+zsgdnZA2XvgLKzx+zoRlFGEumv3WVod+7cic1mo0ePHqSnp2Oz2fjyyy9JTk4mLy+P0aNH4+HhQUBAABs2bGD9+vW4uroyaNAg2rdvb8waff31141jBgcH880339CpUycmTZpEZmYmAAUFBQAcOnQIFxcX5s2bx7Zt22jZsiXNmzdHKUXDhg25dOkSsbGxtGzZkhUrVmBvb8/w4cOpW7cuJSUl7Ny5E7PZzKZNm4iPj6e4uJgpU6awdOlSrFYrtWrVokGDBqSkpLB582Y6deqEm5sbt912G2+//TatW7fmypUrFBcX0759e/bv38+9995rRO6cnZ05efIk0dHRRpkXL16M1WolNDTUMIFz5szB0dERi8WCUoqNGzfSokULY4Zttblr1KgR/v7+uLq6Eh4eTnh4OO3atcPFxQVPT09q165dwwR+8sknNGrUCDs7OwIDA0lISAC0YdRoNBrNb482bX8w3NsOwrvXeAAcgiIJfuJzY1/jxo35+OOPycvLo6ysjA0bNnD58mU6depEREQEhw4dIj8/nwsXLjB+/HgCAgIYMmQIJSUlZGVl0bdvXxITE6lTpw6lpaUUFRXRokULoqOjMZlMPPPMMzRv3hyLxYKvry9JSUksXryYESNGkJ+fT+fOnUlOTmbSpEmICB06dODdd9/l0KFDVFRU4OLiwkcffURiYiIpKSkcP36ciooKbr31VuLi4njkkUewt7c3IoLDhg3j8uXLnDx5kvbt23Pu3Dk2b95Mbm4uJ0+epEmTJuzZs4dWrVphMpkoLy9n7NixpKWlGRMlwsLCSE9PZ8iQIfj4+ODi4sLgwYO599578fX1NUzgwIED+eCDD7hw4QLBwcFYrVZ69+5NSEgIQUFBhrm7cuWKEaVs3LgxP/zwA9988w19+vThrrvu4v777yc1NZVVq1Yxb948Jk6cSGhoKJ6envz4448MGDAApRQzZ85k6NCh7Ny50zCMDg4OmEwmNm7cSIcOHRg6dCi7du3SUUONRqPRXBfatP2JUEoRFxdHYGAgHh4ejB8/nrlz59KnTx/S09NxdnYmPT0dgC1btlCvXj0+++wz0tPTGTBgAE899ZRxrBEjRmCz2fjss8/47rvvOHv2LGFhYdx///00a9YMs9nMgw8+SElJCWPHjsVqtfLqq69y7tw5zp49S3R0NO3atQMqJ1OsWrWKsLAwunXrRmlpKc2bN+fAgQMopfDy8mLdunUcOnQIf39/Ro8ejc1mY+vWrRQVFeHh4cHChQspKChgy5Yt3HbbbTz88MOMHj2ay5cv880332Cz2di7dy8bN26krKyMlStXkpmZSVpaGqGhoaxfv56AgACio6MpKytj+fLltG3b1jCB+/bto3HjxkydOpWuXbtSu3ZtGjRowKlTp3B1dTXMXZs2bcjMzOTy5cvs2LEDs9lMp06dsLOzIyMjg3/+85+4ubnRokUL3njjDSZMmMCRI0eYM2cO7dq1QykFQGpqKp06dSIyMtIwjOPGjTNm/t5+++2UlZUxaNCga6KGd999N0VFRUDljOChQ4fy7LPPMnToUI4fP86CBQvw9/fHwcEBOzs7I2oYGRlJamqqYe6GDRtm1MvDwwOz2WzMOP6pCezQoQMODg44OjqilDK0UHMiyYwZM+jXrx9OTk7UqVOH0NBQYyKJnnCi0Wg0NxZt2v5E+Pj4cKr1k7iPWoLnQx+T13MWM5NrU3fSWtq/fRjvMcto//ZhAPLz84mKiuLSpUukpaXx3HPPGc+aQeXiuyJCRkYGAwcOpEOHDrzxxhu88MILPPvsswDs2rWLkJAQ4uLiKCsrIygoiMLCQuzt7fn222+NY23evJnMzEy++uor/Pz8OHz4MPv27aNdu3Z4eHgQHx8PYKwL5+TkxIkTJ0hNTaV+/fo4OzsbkxHmzp3LwYMHefTRRxER/vWvf+Hl5YWPjw/t27fns88+A+Ddd9+ld+/ezJkzh127dmEymTh48CAZGRmsWbMGR0dH5s2bR0JCgmECS0tLOXToEMePH8fJyYn33nsPs9lMu3btapi7FStW4OXlRW5uLq6urpw8eZJPPvmEpKQkPvzwQ3Jzc9m7dy8pKSl8/PHHFBQUMGHCBL766itiYmIAiIyMvMYwJiYmEhUVRe3atXFycsJsNpOdnX1N1LBBgwbG83x33303ZWVlxtCxk5MTwcHBPP3008ycORMXFxesViv9+vUjKyuLe++9l6FDh/LDDz+wdOlSoqKiyMnJITY2FhGhbdu2ALz44otGdHHVqlXk5eXx1ltv0a1bN5ydnTGZ/v+t4ep1+55//nkqKip47rnnuHDhAikpKdSrV4/hw4fz5JNPXrO+344dO7C3t2fv3r0EBwfj7OzMk08+SUhICL6+vrRp04batWvj5uZGVFSUMXxtNpvp3LlzDROYlpZGx44dsdls2NnZ4ebmhqenJ7169WLZsmWEhITg5+dHx44dqVOnDi4uLjRt2pTQ0FAjTZuOWGo0mj8z2rT9BTl16hTz588nMTERPz8/Y7htyZIl10TkHn74YVatWsXu3bt58MEHmTVrVo2cpStWrGDDhg14e3tTu3Zt8vPzef7552sYwJycHJ5++mkOHTpEYmIiI0aMwGKxUFhYSHR0NBcuXADg6NGjHD16lOPHjxMZGUmjRo348ccfcXNz44cffgAw0mm9++67tGrVijfffBMnJyfS09P58ssvCQsLw2w2s3nzZvbv30+fPn2YNm0a4eHheHp6EhUVhc1mo7CwEKUUy5YtM0zgI488wlNPPcWuXbu44447cHZ2BqB///41zN3EiRNp06YNMTExXLx4kby8PJo2bcoDDzzAG2+8Qbt27RgyZAhlZWUcOnSI7du3Y7PZKCsr48CBAwBMnDjxGsNYUFBAeno6WVlZLF26lGXLlhETE2Msr1IdNdy9ezdBQUFER0cDYDabjTpXD2t36NCB9PR05s6dS3h4OCaTiXr16hlr7GVlZSEitGrVivz8fM6dO0eHDh0oLCwE/n8ksDpqWFRURGFhIQcOHOCdd97h7rvvNtq3Wuvu7k5paSlDhgzh1KlTFBYWEhwcTFhYGCkpKezbt6+GAU1JSeGf//wnUJkXNz09nbCwMGbPns2cOXN4//33OXDgAN9++y05OTmcOHGC8vJyUlJS+OSTT9i2bRvNmjUzTOBdd91FTEwMrVu3xmQycfnyZRwdHbl48SIjR45kzZo1xrW8bds2WrRoweHDh0lJScHNzQ07Ozuio6NrmNVx48YZ0cXqiKVSCj8/PyIiIvD09OSWW24xjGWLFi0Mw20ymXB2dsbPz88wll9//TUtW7bE2dnZ0JhMJtzc3HjyyScNEzp27FhDVz0U/lOdh4eHMWRefc7qSOlPj+fp6YnNZquhqz7eww8/bOQdjoiIwMfHB1dXV+rWrWtozWYzd9555/9U52ozbWdnZ5TPZDLh4ODA4sWLjXNPnTqVW265BavVamiq67927dprorQffvghSilCQkKMKO3SpUvx9/cnJCTE6AwCJCcnc+utt9ZYK1Kj+UsiIn+5n2bNmsmNps7EL//jz83S/RptWlqaAGK1WsXJycn4+fe//y2nTp0SJycnOXXqlIiIPPjggxIRESE2m00uX778i5/L4sWLpXHjxuLr6yvHjx+X9u3bS79+/UREpEOHDrJ48WIpLCyUu+++W1q2bCkmk0ns7e1l1KhRUqtWLREROXfunERGRkpeXp6IiIwePVpcXV3llltuER8fH2nSpIlxvokTJ8qbb74pYWFh4ufnJ4MHDxallERHR8uePXsMXVxcnIwbN06ef/558fDwkMWLF4tSSgIDA2XZsmWGrry8XNq0aSOHDx+W+vXri4uLi9x+++3i7u4uSUlJ4urqKomJiZKdnS2AzJgxQ4YMGSJ+fn7Sp08fMZlMAkhpaek1x/zggw/EYrFI27ZtZcCAAeLj4yPvv/++dO/eXWJiYmTp0qXyxRdfSL9+/UQpJUopo30+//xzGThwoDRt2lRee+012b9/v3To0EGOHTsmJpNJ/Pz8xN3dXVq2bClvvvmmfPXVV6KUkkOHDsnYsWPlgw8+kNtvv13q1q0rgIwfP17efPNNuXjxooSGhkrz5s3FwcFBnJ2d5dZbb5U+ffpI5e1B5K677pLVq1fL+vXrBZDs7GwJCAiQ++67Tzp37iyBgYGyZcsWsVqtsnr1asnIyJBatWrJ1KlTxcnJSQAZNWqUiIhs2bJFlFIyceJEERGpVauWnDt3TuLj4wUQBwcH2bdvn4iIWK1WCQgIEBGRpk2bisVikSNHjojVapXw8HBp3bq1jBs3ThwdHcXOzs74vKuP2aVLF/Hz85PGjRvL888/L2azWYKCguT48eMiItK8eXMJDg6WPXv2iLu7u3Tp0kVOnTol0dHRYjKZJC4uTnbt2iU2m00SExOlrKxM/P39BZC33npLtm7dKnZ2djJt2jTJzMwUd3d38fDwkE8//VQaN24sJpNJbDabrFq1yrh+161bJ4cPHxallLz77rvSt29fMZlMYmdnd40uMzNTPD09JSsrS/r16ydms1kAWbJkyTU6k8kky5YtM3QDBgyQrVu3iqurqwQFBcnhw4clMTFRXFxcpKioSH788UcxmUyilJKkpCTZuHGjmM3mX11nT09PadasmTz++OPi6+srjo6O4urqKqtXrxZXV1epX7++HD58WPbu3SuAvP322zJhwgSx2WwCiL+/vyxZskS6d+9eo87Hjh0TDw8PAQQQpZRYrVbx9/eXM2fOyDvvvCMuLi7i7e0tDg4OAhj/e0opGTVqlNStW1f8/PykU6dOEh4eLkopefnll8XNzc24ZpydnQ3dJ598Ilu3bpWYmBhxdnYWpZTY29uLnZ2deHh4SGJiojRu3Fi8vLxk9uzZ8vTTT0utWrWMdjGbzeLh4SFbtmwxjgmIo6OjODo6Grrq4y1ZskT8/PwkKChIIiIixNPTU9zc3CQyMtI4v9lslsmTJ/9PdRkxYoSEh4cLIDabzdD9tIyzZs2SW265Rezs7Ix7jslkkm7duslHH30kfn5+UrduXVmwYIG0bdtW7O3tjXYxm83SrVs3SUlJkdjYWPHw8JDBgwdfo6s+3tW6J554QubOnVujnQFxcXGRGTNmGJ/1a6+9JiJi3COuPneLFi2kTp06Rp2rGTJkyDVl3Lhxo1Hnxo0bi7e3t1itVrFYLKKUEj8/P3nsscdk3759xrlDQ0PF29tbXFxcpEmTJhIWFibp6ekiIjWuh+oyioiUlJRIy5YtDd31AuyT6/A3N91g3Ygfbdp+3TH/G7/G3MXExIjFYhGbzSYBAQEyYsQIyc7ONo41fvx4cXd3F3t7e7FYLHL33XfLwIEDpX379jJhwgQREendu7dMnjxZCgoKJDU1VZ599lnjn8/Z2Vk2btwoIiJHjhyR2NhY2blzpzg6OkqXLl0kLCxMvL29xcvLS7KyskSkpgkMCwuTDh06SPv27SUwMFBcXFxk7969RvmqzZ2ISGhoqHh6ekqLFi2kbt268sknnximLS4uTpydneX9998XNzc3eeWVV2TAgAFiZ2d3jWmrPua//vUvqV27ttx7770ydOhQw0RVk5+fL1FRUTJx4kTx9vaWPn36SN++fcXFxaWGAa02gfv375fg4GBp0aKF9OjRQ5RSsnbtWhk4cKA0adJEPD09ZezYsdK+fXv5/PPPDYMMyIULF2qYwA8//FDatm0rZ86ckdjYWOOGV93+3bt3l7CwMHFzc5MvvvhC3N3d5a233hJfX1+xWCyycOFCAaRz584SExMjr7/+utSuXdv48gkLC5P27dsbutatW0tiYqL4+/tLSUmJNG3aVACxWCySm5srImJ8IWZkZIibm5uEhYVJz549xWw2S0xMjAwbNkwefPBBqVu3rjg5OUliYqJxzIsXL4pSSj7++GOxWq2yZcsWAaRp06by5ptvyoULF8RsNsuCBQtk9OjRYjab5cSJE5Kamiomk0mcnZ1l/PjxIiISGxsre/bskWPHjhnXYbWxdHV1NXTh4eESEhJi6O68804JCwuThQsXyuDBg8XT01OKiopkzZo1YrPZJD4+Xkwmk7i7u0v9+vWv0VWfu1pntVrltttuExG5Rmdvby+zZ882jldSUmLo3NzcjGun2tDed999xuddfW1dXZfrrXO1ma42ZT179pS2bdtKXFxcjXOfPXtWAElNTZV69eqJg4ODxMTEyLRp08TV1VVCQkJq1Llfv37i6+srSimZO3euJCQkiIuLizRt2lRERHbu3CkWi0UuXLggAwYMEIvFIi4uLpKXlycJCQliMplk5cqVkpiYKDabTTZu3CjNmjUTX19fad26tUydOtW45qp17u7u4urqKu+8846EhoZKkyZNxM7OzjBJbdu2NYylg4ODtGnTRnr16iVNmjSR2NhYadKkiSilDKOamJgogBw/flz+8Y9/SGhoqPTv31+aNm1qmIQzZ87I8uXLpX79+lJeXi4VFRXi4eEhJpNJWrduLd7e3v9TXTw8POSNN94wOlOhoaGG7uoy7t27V0wmk8yePVu6d+8unp6e4uXlJatWrRKz2SwuLi5y5swZWbNmjVitVnnqqaekZ8+e4uXlJZ6enjJ16lQxm80SHR0tb7/9tuTm5orFYpH7779fevbsKU2aNBGbzfazOm9vb6lfv76sX79eWrZsKcHBwXLw4EGJiYkxOk3VJj49PV2ioqLEwcFBvL29JS8vT9auXSuADBs2zKhzWVmZlJSUiMViEScnJ5kwYYKsXbtWzGazeHl5XdN5OXnypPTs2VMcHBzkyJEj0rFjR2nYsKHRzq6urpKRkSEiIg899JDY29vLmTNnRESu6WhUf9/MmjVLXnrpJfm1aNN2g/krmbabYe6eeeaZGr0mQJ5++mk5deqU2Gw2iYqKEmdnZ3F0dBSLxSImk0lcXFxk0aJFhiHq0KGD7N69W0aOHCn33Xef7NmzR0wmk5jNZpk1a5ahGzJkiHz66aeya9cucXR0lEOHDonVahU7Oztp1KiRFBYWSmlpqSQlJUlgYKBkZWVJWVmZ3HbbbQLIrbfeKi4uLvL4449LvXr1JCMjQyIjI2XixIkSHR1t9Kare/qA1KpVS3bu3GkYxvPnz4urq6v06tVLbr31VrnvvvskICBAnJycjM/vp1HDUaNGydChQyUiIkIaNGhg6OLi4uSJJ56Qe+65R7y9vWXKlCni6OgotWvXrhE1PHDggLi6uoqbm5vUrVtXoqKipEGDBgLIkSNHDN3V0cUJEybIzJkzJTAw8Brd/v37jbapU6eOtGvXTiIiIqR27doSEBBgfCmLiPTs2VOCg4OlVq1aYjKZpE+fPpKbm2voXFxcpGXLlrJlyxZ5/fXX5d577xWllDg5OUnbtm3l3//+t3h6egogMTExMnr0aAkPD5cePXoYEbjqz7p27drSunVrue2224xjTpgwQezs7CQ2NlYCAwOlbt264u/vL3fccYcMHDhQGjZsaEQcq3vakZGREhwcLPXr15cmTZpIixYtjKhhdna23HbbbUb0o2XLluLj4yMuLi4SFRUlGRkZ4u7uLuHh4YZu7Nix4uDgIDabTRo1aiS+vr6yevVqWbRokZjNZtm2bZsA0r9//5/VVZ+7Wufk5CShoaHi4+Nzja7arAHi6+srTZs2NXTVHY1qQ9ujRw/js3N3dxcfHx+58847pWHDhr+6ztVm+rbbbhOz2Syurq5itVrF09NT+vXrJ+7u7sa5HRwc5OWXXzbuEdVmvmXLltKgQQOjLp6enhIZGWlcJwsWLBARkUGDBomHh4dkZGTI6tWrpXnz5pKXl2eYu+oosIiIk5PTNdHcyMhIUUrJli1bjC/mq6O+3t7eAsiGDRsMnYODgzz55JNis9kMk5yTkyMmk0mWLFkiFotFGjRoIA0aNJB169aJzWarYZIB2b59u9jZ2UmzZs2M89psNqldu7aIiBQWForNZhMRkQ8//NCoy9KlS417xK+ty08j2BMmTKhx7uoybty4UUwmkyQnJ4udnZ20bdtWgoKCZNmyZUbktLqMgOzdu1fMZrPcfffdctddd8mUKVPEz89PXFxcjAi22WyWF154QSwWizRs2FD69Olzja68vFxsNptMmTJFzpw5I0op2bt3r2RnZ0vnzp3FYrHU6EA89NBDMnz4cAFk5MiRIiKSnZ0tJpNJYmJiatR5xIgRAkjfvn3l6aefluzsbPHz8xN7e3ujXaq1e/bskdjYWLFarbJp0ybp3LmzuLu71+hA7NmzR06dOiWNGjUSq9VqdHIaNmz4s7oWLVoYnaZfw/WaNv1Mm+a6qTtp7X/8qVOnDiJCUVGRkaj+ypUrDBo0iODgYK5cuUJwcDAA06dPv+ZinDFjBsHBwRQUFJCYmEheXh4TJkygtLSUiooK8vLyjEV409PT2bt3L/7+/syfP5+wsDBiY2OpqKigvLycSZMmGboVK1YQGxvLhx9+SP/+/Zk7dy7FxcWUlZVx7NgxbDYbM2bMYOLEiZw+fZrw8HA8PDzIysrC29ubr7/+mvz8fGOSwlNPPcW0adN4/vnnadWqFU5OThQXFwNQp04dAPbs2UNsbCzjx49n2rRpbN68GYvFwuTJk0lNTTUmVFQ/P3j06FHi4+OJiori9OnTNGnShLS0NAoLC8nIyODMmTMAnD9/nrfeeotz585x7tw5mjdvzquvvkr//v3Jy8ujXr16Rnvt3r2bESNGkJubS8OGDSkpKaFWrVoAJCUlGbrq5wcjIyM5fPiwsQ7fT3Xh4eEUFxfTu3dv3NzcSE5OprS0FE9PT/z8/IDKZxLXrFnD4cOHmTBhAq6urlRUVODv74+bm5uha926tZFSbeHChRw7dgwR4dZbb+X48eMMGzaMmJgYHB0d2b9/P+3bt+fUqVOMHDmS0tJS/P39GTJkCI6OjkRFRZGUlER8fLxxzBUrVmA2mzl+/DhLlixBRLh06RJFRUUsW7aM9957D4D33nuPuXPn4uDgQFZWFoWFhRQUFHD77beTnJx8cd0ARwAAHopJREFUzWSX6mu1tLSUOXPm0KRJE5KSkujduzcvvfQSp0+f5sKFCyileOuttygqKqJVq1b4+flRUFBAXFycket3/vz5KKVYt24dRUVFuLq6YjKZDF31uXfv3g1UTi6qXtfwp7qpU6fy+OOPo5Ti0qVLHDt2jNDQUGOpnKvzDl/9PKerqysNGzbE3t6egoKCX13n++67D6UUVqsVV1dXWrVqhY+PD8HBwWzduhUPDw/j3E8//bSRlaW0tJSGDRvi7OzM4cOHsbOzIy4ujl69euHm5kanTp1QSlFQUMCoUaNwcnLihx9+oEGDBtx1113Mnj2bBQsWMG3aNBo2bFgZgaj6/5s6dSpeXl588803HDx4EJPJhIeHBykpKZjNZubMmcMLL7yAzWZDKWXoLBYL99xzD8OHD8fe3p5p06Zhb29Ps2bNsFgsWK1WNm3axNatWxER4uPjKS0t5dSpU7Rv3x6bzWZMpDl48CAHDx4EMCYTnTp1iscee8zQXbp0iczMTDZv3kxERASRkZEMHToUEeH222/H398f4H+qS7Vu7NixKKXYtGmTobu6jJs2bcJisZCdnU15eTl9+/YlKyuLe+65hytXrlBRUWGU0c/Pj7lz51JRUUFERATLly9nxowZXL58GTc3N2PilYuLC3v27KGiooKoqChWr159je7IkSMUFhZSWlpKaGgoIkKbNm3w9vbm4MGD1K1blx07dpCZmUlycjIbNmzg+++/x2Qyce7cOVxdXfH29gYw6lL9nOuHH36I1WrlwoULvPLKK3h7e3P58mWsVqvRLiaTifvvv59WrVqxZ88eysrK6Nq1KwcPHqR58+Y1njOeMmUKISEhHDt2jA4dOtC8eXOgcrLZT59HHjt2LC+//HKNZ75/a+xu2JE1f1vqTlr7H/enzep53ceaPn0606dP/9l9V65c+VW6+fPnG9uqv7T/27mrZ9JWVFSQkJDAypUrmTFjBo0bNyY2Npa4uDhq1apl6E6dOmUc/4EHHmDFihXMmDGDESNGGF84P/74IxaLha5du/Liiy8ClRNCXn/9dRYtWkR0dDRjxozh/vvvJy8vj4CAACOX7Pjx4/H39+fkyZNMnTqVQYMGERQUxGeffUa9evWIjIykrKyMnJwcXn31Vb755hsKCgq4ePEimZmZNGvWDABvb2/y8/PJz883Zg0XFRURHBzM66+/bpjEgIAAiouLsVqtnDp1Cnd3d77//nsaNGhAdnY2ycnJ3H777XzzzTf4+Pjg5eXFp59+SmZmJjNmzCA3N9f4PFJTU43ctNWzbMeOHYudnR3169cnMTGROXPmEBERgb+/P6dPnzZM8LZt2ygvL8fLy4uKigruv/9+PvnkE2rVqkVwcDB5eXlkZ2fj7e3NY489hpeXF6mpqQCUl5eTnZ2NyWQyllyx2WwAdOnShdatW1NcXMztt9/OunXr6Nu3Lz/++CO33nora9asoaCggFatWhnXRdu2bVm9ejWRkZEMHjyYr7/+mu3bt2OxWHj55ZcpLi6moqICHx8fIiMj+e6773jooYfYvn07H3/8MW5ubmzcuJE+ffpU9pxNJiIjI+nduzdvvvkmV65cMXQFBQXGhBQnJycefvhhevbsSVBQ0C/q/P39KS4uNsxSfn4+X3zxBW5ubmRlZTFu3Dj8/Pw4efKkYX6nT5/OmTNnuOOOO9iwYcN113n9+vUsWrSIefPm0a1bN4YOHUp8fDxLly6ldevWhpk+fvw4MTExxqxoX19fcnNzGT9+PGPGjOHcuXMkJSXx5ptvsnfvXtauXYuHhwcAffv25Z577qFbt26EhYVx4sQJoHLh73379tGvXz9jPUSr1cqjjz7KnXfeybZt2wyjGhcXh5OTExUVFezevZv8/Hz69OmDk5MTBw8eNHTLli0jJyeH4uJivv76a8LDwzlz5gwmk4ng4GDi4uI4evQoIsL+/fuxWCxERETw4YcfsmXLFsrKymjUqBGPPvoohYWFvPbaayQnJ7Nw4ULs7OwYN24coaGhVFRUEBoayl133YXVamXBggV89NFHhIaGsnbtWjIzM40O6/Dhw3njjTd+dV3i4uKIjo4mKSmJ5ORk3njjDfr06YPJZCI0NJRHH32UkydP0rp1a5YsWYKjoyNdunRh9uzZRn0vX75slPHFF19kzJgxiAjTp0+nTp06BAYGYjKZKCoqIiEhgQULFjBkyBA++eQTysvLWbZsGZGRkTg4OFBQUICTkxMJCQnMnTsXqFyhIDQ0lKysLEpKSvDz86NRo0Y0a9aMd955h969e1OnTh06duzIoUOHsFgsHD16lJiYGAYMGMBnn33GoUOHjDr369eP2NhYjh49SnJyMn5+frzwwgssXbqUzMxMo10WL17MkSNHiIqKIjAwkDfeeAM3NzcaNGjAI488wjPPPMPZs2eZM2cOTk5O+Pj40LVrV1555RU6duzImDFjmD17NqNHjzZ0u3btwsXFhXr16tGnTx9yc3MZM2ZMjUldvwU60qbR/AI/Fw2cPn36dUUNn3vuuRq6jRs30qVLF86cOUNZWRmFhYW8//77Rgqyq6OGJpOJPn36kJOTQ2lpKWlpaYSHh5Oens7y5cvZsmULiYmJ9O7dm0uXLvH9999TXFxcI2o4evRoUlNTCQ0NxdfXl8zMTPLy8vj3v/8NQOfOnQkICGD06NGkpKQwbdo0fHx8WLJkCevWrTNm4bVt25bw8HCg0lh+/PHHFBUV8cUXX5CVlYW9vT3bt2/H29ubYcOGAZCWlsaaNWtITExk0aJFxvIh33zzDS4uLogIQ4YMYf369SQkJBAcHMzSpUtxdnZm5MiR7N69m0uXLnHixAlefPFFjh49yqFDh7jllluMCOWLL75IYmIiFy9e5KuvvsLZ2Rlvb282b97Mt99+S0VFBWazmcDAQF5++WU6depESUmJYWw8PDyMxYur67d79278/Pw4ePAgOTk5REREADBt2jQjMgTg4OCAm5sbgYGBxhIh1W3+2GOPGTOIo6OjK1PU1a5dQwewfft2Zs6ciclkQilFTk6OkbXkat1zzz1nLLBcUVFB8+bNcXNz+1ndgw8+iFKK7OxsbDYbjo6O1+iq8w5XRwugslNTVlYGYNTxeutcbaYjIyMpLy/H29ub48eP4+vrS0ZGhjEbPCkpCQcHByZOnEheXh4nT56kb9++7N+/n/LycuMa2bp1K59++ilZWVnk5OSQk5PDp59+yurVq3F1dTVmoosIY8aMYfr06cZs08cee4zhw4cjIpw8eZJ27doZkddFixbh6+tLUVER8+bN4/333+eFF15AKWXoLBYLCxcuNDp/r776KiUlJTzzzDOGCV+3bp1xvuzsbMrKyvDx8aFDhw40adKEwsJCvL29jajvP/7xDzZs2EBJSQne3t6Ul5czaNAg8vPzCQ4OZvfu3ezYsQOTycSePXs4cOAA5eXllJaW0rlzZy5evIibm9uvrku1bujQoVRUVDB48GBDVx35jo+PZ9y4cZhMJtavX09FRQUPPPAAoaGhDBs2jEOHDpGTk8Pu3btZuXIlY8aMwcvLC5vNhp+fHx4eHoZBysjIYNmyZWzfvp0PPvgABwcHHBwcGDVqFJcuXWLIkCGcPn2a1NRUli1bZvwf5+bmMm3aNC5dukTbtm2Jjo7myJEjfPbZZ9x66608++yzODk5sXnzZiZMmEBJSQmNGzdm9erVvPLKK/j7++Po6MiePXuMiNdLL73ExYsXiYqKolevXkyePBkPDw/Onz9fIxq/aNEipk6dygcffIC7uzsPPPAA69at48UXX2TdunU1Vid47bXXWLt2LWazmVGjRvHEE0/g4uJyjW727NmMHz+ee+65h9WrV/PEE0+Qk5Pz818w/yPatGluGv9tuPXqiN316v7IXK8JTEhIuEb38ssvExwcTH5+vjEEXV5e/rPPPEyfPp3ly5dTVlbGpUuXuHLlCpmZmdfocnNzWb58OUVFRRw6dIi8vDzGjx9/Tbnvv/9+w1g2bNiQVatWMXnyZESEwsJCSkpKSElJwd7envT0dA4cOEBkZCR+fn7cd999NG3alIqKCi5fvkxubi7vvvsu9evX54EHHuDcuXNs2rQJd3d3ioqK+Prrr2ndujUlJSU8+eST9OnTh0GDBnHo0CFj+RaTyWSY0IKCAmPB4eroUlpaGocPH6aiooLU1FQ2bNjA5s2bMZvNDB06FKg0Je3ateOtt96ioqKCDh068OOPP3L+/HmaNWvGV199xZAhQzh48CDvvfce4eHhLF26FE9PT7Zu3cqXX37JkSNH2LFjBzExMZw5c4b4+HhatWqFvb09Hh4ebNmyBScnJ06fPm3o3N3dOXr0KGvXruXhhx+mTZs2RpsWFBRw4cIFIiMjDV18fDxBQUFYrVaKiopYsGABK1eurKHbsmULa9as4aGHHqJt27ZcuXKFM2fOcPHixRq69957j1OnTtG5c2fDCH777be4u7tz8eJFzGYzI0aM+FV1rjbTs2fPxt3dnVGjRnHgwAHOnj3L999/bxj5/Px88vLyqF+/PqWlpXh5efH5559TXFxMSUmJEQGeNGmSsaahxWLBxcWFO+64g0cffZQrV67g5uYGwMKFC2nUqBHjxo2jf//+AKxfv57t27fj6elJbm6uYbqrjWr1kP/DDz9Mq1atyM7O5vLly2zbto20tDQmT55MSEgI7du3B+CFF17g/PnzXL58uYauadOmQOUC2SLCpk2b2LlzJxs3bkRE2LFjB2lpaca5H3zwQUSEpKQkiouLmTlzJiLC1q1bSUtLMwzo2LFjjQh3amoqb731FqWlpUyZMoXAwMBfVZdqXXVEefHixT+ri4iI4JtvvmHmzJmUlZUZa122a9eO0tJSI891cnIyxcXFfPLJJ5SVlVFeXs7QoUM5duwYOTk5RicvJSWFsrIy+vXrR3l5OUeOHKFHjx7GMGxJSQkADRo0wM7OjoiICHr06EF5eTkuLi6YTCYCAwM5ffo0ERERbN26ld27d5OSksKgQYMQETZu3Mg///lPAgMDjWWCAGbOnGkM8VZUVLB161Y++OADzp8/zw8//FBjOZirP5/Dhw/j6OhodF6qI7lQ2Rl64IEHqFWrFocPH8bJyYmzZ88SGBjIyZMnf1FX3bn6qe63QA+Pav5SXO/Q7G+t+6vwWw5HV1Mdefopp0+fvq4yXf3++Ph4cnJyGD58OJs3b8bLy4tZs2bxj3/8g4SEBNLT042oUk5ODl27dmX//v34+Pgwa9YsIiIiSEhIYMWKFZw5c4aRI0dSu3Zt7OzssLOzw2Kx8PXXXxMXF0dERARhYWHk5uayefNm3N3dKS8vp7y8nF69eqGUIjo6mi+++ILevXtz4sQJXn31VSNSqZTi2LFjNXQJCQl06NCBzp07U6tWLUQEZ2dnsrKy6N+/PwEBAaxbt87Qff3110ybNo0xY8awZs0aZs+eDVBDd8cddxASEoK3tzf29vbGOoXDhg0zdFu3bmXEiBE0bdoUX19fzGYz3t7eZGdnM3z4cCwWizE0/WvrfPToUYYNG8alS5eM4XCTycTgwYN56qmn2Lp1qzHEN3HiRMrLy422X7RoERaLhVdeeQWoXMg5Li7OeEY1KSmJhIQEoqOjKS8v51//+hfZ2dm89tprODo60qZNGzp27MiuXbvo168fbm5uFBUVkZeXx5AhQ9i8ebPxjOILL7yA1Wqlfv36TJs2jQEDBlBcXMy6des4fvw4jo6OnDt3jitXruDs7ExwcLAxbFdeXs66desICgrixIkTRgTxzjvvNB5B6NevHx9//DFLliwhKCiIBQsWcO7cOcaOHcuOHTvYtGkTHh4e3H333cybN48vv/ySoKAgnnrqKWrVqkWvXr04fvw4DRo0QCnF0KFDmT9/PhaLhdGjR/+quhQVFdG1a1dKSkowmUzUqlWLOXPmMHDgQEpKSoy6HD16FIAzZ87QtGlTkpKSKCws5LvvvqO0tJTu3bsDlVFyk8lEamoqTZs2NYy9k5MTIkK3bt2Aygh2cXExUVFRREVFkZaWxg8//EBMTAzZ2dn06NHDuEc4OzuTm5vL+++/T0BAAKtWreLRRx/lyy+/RCnFkCFDKCgoYOfOnaxZswaz2UxQUBDOzs4888wztG/fnsLCQgYNGsTmzZsJCwtj586dQOW6kM7OznTp0oUvvviCffv2MWjQIIAanZf58+fj5uZGQkICvXr1Ii8vjy5dugDw5ZdfsmrVKvbt20dpaamxqPyzzz7LzJkzjU52dedq165dAISEhLBt2zZj/dFq3W+Fqr7B/ZVo3ry53OiVzW+WObieqNLNOreuy3/mZpdRo/kj8HOm+7777iMhIYHu3bsbpr9///58+eWXlJaWYmdnx7333stHH31EQkICXbp0obi4GEdHR4qLi40oSvXCw/PmzWPAgAFERESQmppKRUXFNeVwdXXFbDaTlZVFREQEWVlZvP/++zz33HMkJycbqeSqdTk5OYaZrs49nJCQQEVFhTERqfrZra1bt9KlSxdCQkI4e/YsNpsNEeHixYsARmRnzZo19OnTh4iICNLS0rBYLHh7e5OWlkZpaSkmk4nFixf/T3Vp0aIFO3bsqKFzdHTEarWSk5PD1q1b6dq1K6tXr2batGkkJibWOHZMTAxff/01mzdvpm/fvqxatYrnnnuOxMREYzgdIDY2lvj4ePbu3UunTp146qmnWLdu3TW6kJAQjh49augWLlzI+vXrWb58uTFqAJWZc959911jMtKJEycoKCgAKjsr1dFIpRQ9evRgyZIlNGvWjKysLPLz8wHo1KkT27dvByo7EN27d+fzzz9n165ddOnShaZNmxrRw+rJayaTiR49evDZZ5/h4OBAy5Ytyc/PJz09HbPZTEBAgDGZ6amnnuKJJ54AoGPHjsyaNYvY2FigMp3fvffey/nz52vo/htKqe9EpPl/093QSJtSqhvwOmAGForIrJ/stwIfAc2AC8A9IpJ2I8uk0fxd+TMYVc1fH09PT1atWnXN9nbt2tWI0q5YseJn39+uXTvDUP03rndo6mrdwIEDf1HXrl07wyD26tXrF3WdO3f+WXP1U3r16nVdup+W8bfQde7c2ahLz56//P/Xq1ev66pz9ZAqYEzM+m+66scVfomfRul/KTr/0zpv27btZ3XX2y5AjVSN/4lqc1hNVFSUEcG8Edww06aUMgPzgC5AJrBXKbVaRK6uzb+AiyJSXyn1D+Al4J4bVSaNRvPHRkdK/+86jUbz1+VGRtpaAidFJAVAKfUJ0Ae42rT1AaZX/f058JZSSslfccxWo9Fofgd+jbn7oxvQv6Pp/ivVRfPbcyNNWwCQcdXrTCD2lzQiUqaUugR4AdlXi6pWiL5uqmciaTQajUajuTn8lToQfxRu2EQEpdTdwB0i8kDV6yFASxF55CrNkSpNZtXr5CrNhZ8c69cWMhs49X8pv0aj0Wg0Gs3vRB0R8flvohsZacsEgq56HQic+QVNplLKDnADrlmJTkTUjSqkRqPRaDQazZ+BG7m47l4gTCkVopSyB/4BrP6JZjVQPX3kLmCbfp5No9FoNBqN5lpuWKSt6hm1McBGKpf8WCQiR5RSz1GZzX418B6wWCl1ksoI2z9uVHk0Go1Go9Fo/sz8JRfX1Wg0Go1Go/mroXOPajQajUaj0fwJ0KZNo9FoNBqN5k+ANm2/AUqpbkqpE0qpk0qpSTe7PH9XlFKLlFLnlVJJV23zVEptVkr9UPXb42aW8e+GUipIKbVdKXVMKXVEKfVo1XbdLjcRpZSDUupbpdTBqnZ5tmp7iFJqT1W7LKuaRKb5nVFKmZVSB5RSX1a91u1yk1FKpSmlDiulEpVS+6q2/e73MW3a/o9cla6rO9AYuFcp1fjmlupvywdAt59smwRsFZEwYGvVa83vRxkwTkQaAa2Ah6v+P3S73FyKgU4iEgVEA92UUq2oTCU4p6pdLlKZalDz+/MocOyq17pd/hh0FJHoqxK7/+73MW3a/u8Y6bpEpASoTtel+Z0RkZ1cu85fH+DDqr8/BPr+roX6myMiWSKyv+rvPCq/iALQ7XJTkUqqs7Nbqn4E6ERlSkHQ7XJTUEoFAj2BhVWvFbpd/qj87vcxbdr+7/xcuq6Am1QWzbXUEpEsqDQQgO9NLs/fFqVUXSAG2INul5tO1RBcInAe2AwkA7kiUlYl0feym8Nc4Emgouq1F7pd/ggIsEkp9Z1SamTVtt/9PnYjMyL8Xfi5bA16HRWN5iqUUs7AcuAxEblcGTzQ3ExEpByIVkq5AyuBRj8n+31L9fdGKXUncF5EvlNKdaje/DNS3S6/P21E5IxSyhfYrJQ6fjMKoSNt/3euJ12X5uZxTinlD1D1+/xNLs/fDqWUhUrDtkREVlRt1u3yB0FEcoF4Kp85dK9KKQj6XnYzaAP0VkqlUfmoTScqI2+6XW4yInKm6vd5Kjs5LbkJ9zFt2v7vXE+6Ls3N4+pUaUOBL25iWf52VD2P8x5wTEReu2qXbpebiFLKpyrChlLKBtxO5fOG26lMKQi6XX53RGSyiASKSF0qv0u2icggdLvcVJRSTkopl+q/ga5AEjfhPqYzIvwGKKV6UNkbqk7XNfMmF+lviVLqY6AD4A2cA54BVgGfAsFAOnC3iPx0soLmBqGUagskAIf5/8/oPEXlc226XW4SSqmmVD44baay8/6piDynlKpHZYTHEzgADBaR4ptX0r8vVcOj40XkTt0uN5eqz39l1Us7YKmIzFRKefE738e0adNoNBqNRqP5E6CHRzUajUaj0Wj+BGjTptFoNBqNRvMnQJs2jUaj0Wg0mj8B2rRpNBqNRqPR/AnQpk2j0Wg0Go3mT4A2bRqN5oailCpXSiUqpZKUUp8ppRx/Qbeueu2wX3n82kqpz/+78hffn6aU8v6Z7c5KqflKqWSl1BGl1E6lVOz/ep4/Akqp6KolijQazZ8Qbdo0Gs2NplBEokUkEigBRl29U1ViEpEeVavz/ypE5IyI3PXflb+ahUAOECYiEcAwKtcA/DMTDWjTptH8SdGmTaPR/J4kAPWVUnWVUseUUm8D+4Gg6ojXVfsWVEW4NlWt2o9Sqr5SaotS6qBSar9SKrRKn1S1f5hS6gul1Aal1Aml1DPVJ1ZKrapK9nzkqoTPP4tSKhSIBaaISAWAiKSIyNqq/U9URQ6TlFKPVW2rq5Q6rpRaWLV9iVLqdqXULqXUD0qpllW66UqpxUqpbVXbR1RtV0qpV6ree1gpdU/V9g5KqXil1OdVx19SlWkCpVQzpdSOqnptvCqlTrxS6iWl1LdKqe+VUu2qMrY8B9xTFfm85zdqU41G8zuhTZtGo/ldqMqd2J3K7AgADYCPRCRGRE79RB4GzKuKcOUCA6q2L6naHgX/r707CNGqjMI4/n9wQi0iEAQxAokC0dDEURybooWtXDiGERRBRe4iXERLLVxJbqRlEUGLcJFDiyCQslKjJq1RmUVQSCBWCylMGwmcx8U9A9dPv2+YQvTC89vMzL33Pe/7zmI4nPd+c9gM/HaTqTYCz9NUlZ6RNFzXX7a9HhgGXqv/Zt7PamCymqr37mM98BJNUrcJ2ClpXd1+CDgArAFWAs8Bo8DrNJ0gZq0BtgIjwG5Jy4Gna81radpKvT2bhAHrgF3AKuBB4DE1PV3fAXbUvt4H2t1YhmxvrHF7bP8L7AYOVuXz4ID9R8QdaGjuRyIi/pfFkibr+6M0vUiXA7/a/rbPmLO2Z8ecBFZU77/7bY8D2L4CUEWntsO2L9S9QzRJ0wmaRG17PfMATWJ44T/sZxQYt325NcfjNH0Iz9o+U9engM9tW9IZYEUrxie2p4FpSUdoEs1R4KNKFP+Q9BWwAbgITNg+V3EnK9ZfwCPA4fodLOD6JPZQfT3ZM3dEdFSStoi41aZtP9q+UEnG5QFj2n0VrwKLgRuysz56e/O5+jhuAUZs/yPpS2DRgBhTwNp6126m596gdbTXPdP6eYbr/97esMZ5xL1asQRM2R6ZY8zs8xHRcTkejYhOsH0ROCdpDEDSwj6fRH1K0pJ6D24MOA7cB/xZCdtKmmPNQXP9QlOde6v1/tjDkrYBXwNjku6WdA+wnaaCOB/bJC2qI9onge8r7rOSFkhaCjwBTAyI8ROwVNJIre8uSavnmPdv4N55rjUi7hBJ2iKiS16gOeY8DXwDLLvJM8eAD4FJ4GPbJ4DPgKEatxfodyzb9krF/7mON98Fztv+AfiAJqH6DnjP9o/z3McE8GmtY6/t88A4cBo4BXwBvGH7934B6h21HcA+Sadqv5vnmPcIsCofRIjoJtm9VfqIiG6S9CIwbPvV272WfiS9CVyyvf92ryUiuiWVtoiIiIgOSKUtIiIiogNSaYuIiIjogCRtERERER2QpC0iIiKiA5K0RURERHRAkraIiIiIDkjSFhEREdEB1wAOS14FMqaODgAAAABJRU5ErkJggg==\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "scree_plot(pca)" + ] + }, + { + "cell_type": "code", + "execution_count": 106, + "metadata": {}, + "outputs": [], + "source": [ + "# Re-apply PCA to the data while selecting for number of components to retain.\n", + "import copy\n", + "\n", + "pca, df_pca = do_pca(30, azdiastemp_noNa_final)\n", + "\n", + "df_pca_orig = copy.deepcopy(df_pca)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 2.2: Perform Dimensionality Reduction\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting your findings and decisions regarding dimensionality reduction. How many principal components / transformed features are you retaining for the next step of the analysis?)\n", + "\n", + "Reusing the code from the videos, we can see that the first 3 features account for around 35% of the variance of the data. We see that this variance quickly falls off as we have more and more features. From the above graph I think 30 features seems a fair number of features to retain, as this should account for around 80% of the variance in the data." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 2.3: Interpret Principal Components\n", + "\n", + "Now that we have our transformed principal components, it's a nice idea to check out the weight of each variable on the first few components to see if they can be interpreted in some fashion.\n", + "\n", + "As a reminder, each principal component is a unit vector that points in the direction of highest variance (after accounting for the variance captured by earlier principal components). The further a weight is from zero, the more the principal component is in the direction of the corresponding feature. If two features have large weights of the same sign (both positive or both negative), then increases in one tend expect to be associated with increases in the other. To contrast, features with different signs can be expected to show a negative correlation: increases in one variable should result in a decrease in the other.\n", + "\n", + "- To investigate the features, you should map each weight to their corresponding feature name, then sort the features according to weight. The most interesting features for each principal component, then, will be those at the beginning and end of the sorted list. Use the data dictionary document to help you understand these most prominent features, their relationships, and what a positive or negative value on the principal component might indicate.\n", + "- You should investigate and interpret feature associations from the first three principal components in this substep. To help facilitate this, you should write a function that you can call at any time to print the sorted list of feature weights, for the *i*-th principal component. This might come in handy in the next step of the project, when you interpret the tendencies of the discovered clusters." + ] + }, + { + "cell_type": "code", + "execution_count": 107, + "metadata": {}, + "outputs": [], + "source": [ + "def getWeights(df, pca, weightIndex, N):\n", + " weights = pd.DataFrame(pca.components_, columns=df.columns)\n", + " weights = weights.iloc[weightIndex:weightIndex+1, :].transpose()\n", + " posWeights = weights.sort_values(weights.columns[0], ascending=False).head(N)\n", + " negWeights = weights.sort_values(weights.columns[0], ascending=True).head(N)\n", + " return posWeights, negWeights" + ] + }, + { + "cell_type": "code", + "execution_count": 108, + "metadata": {}, + "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", + "
0
PLZ8_ANTG30.222606
PLZ8_ANTG40.215934
ORTSGR_KLS90.198526
EWDICHTE0.195974
HH_EINKOMMEN_SCORE0.190977
FINANZ_SPARER0.155443
FINANZ_HAUSBAUER0.152013
KBA05_ANTG40.151090
PLZ8_ANTG20.148548
ARBEIT0.141607
\n", + "
" + ], + "text/plain": [ + " 0\n", + "PLZ8_ANTG3 0.222606\n", + "PLZ8_ANTG4 0.215934\n", + "ORTSGR_KLS9 0.198526\n", + "EWDICHTE 0.195974\n", + "HH_EINKOMMEN_SCORE 0.190977\n", + "FINANZ_SPARER 0.155443\n", + "FINANZ_HAUSBAUER 0.152013\n", + "KBA05_ANTG4 0.151090\n", + "PLZ8_ANTG2 0.148548\n", + "ARBEIT 0.141607" + ] + }, + "execution_count": 108, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Map weights for the first principal component to corresponding feature names\n", + "# and then print the linked values, sorted by weight.\n", + "# HINT: Try defining a function here or in a new cell that you can reuse in the\n", + "# other cells.\n", + "# and then print the linked values, sorted by weight.\n", + "p, n = getWeights(azdiastemp_noNa_final, pca, 0, 10)\n", + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 109, + "metadata": {}, + "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", + "
0
MOBI_REGIO-0.239428
KBA05_ANTG1-0.222922
FINANZ_MINIMALIST-0.222529
PLZ8_ANTG1-0.221995
KBA05_GBZ-0.214801
PLZ8_GBZ-0.166337
INNENSTADT-0.165851
KONSUMNAEHE-0.165035
ALTERSKATEGORIE_GROB-0.137991
BALLRAUM-0.128487
\n", + "
" + ], + "text/plain": [ + " 0\n", + "MOBI_REGIO -0.239428\n", + "KBA05_ANTG1 -0.222922\n", + "FINANZ_MINIMALIST -0.222529\n", + "PLZ8_ANTG1 -0.221995\n", + "KBA05_GBZ -0.214801\n", + "PLZ8_GBZ -0.166337\n", + "INNENSTADT -0.165851\n", + "KONSUMNAEHE -0.165035\n", + "ALTERSKATEGORIE_GROB -0.137991\n", + "BALLRAUM -0.128487" + ] + }, + "execution_count": 109, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "n" + ] + }, + { + "cell_type": "code", + "execution_count": 110, + "metadata": {}, + "outputs": [], + "source": [ + "# Map weights for the second principal component to corresponding feature names\n", + "# and then print the linked values, sorted by weight.\n", + "p, n = getWeights(azdiastemp_noNa_final, pca, 1, 10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 111, + "metadata": {}, + "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", + "
1
ALTERSKATEGORIE_GROB0.252765
SEMIO_ERL0.235743
FINANZ_VORSORGER0.217776
SEMIO_LUST0.175344
RETOURTYP_BK_S0.161684
SEMIO_KRIT0.130653
SEMIO_KAEM0.122912
FINANZ_HAUSBAUER0.122652
W_KEIT_KIND_HH0.118632
PLZ8_ANTG30.104754
\n", + "
" + ], + "text/plain": [ + " 1\n", + "ALTERSKATEGORIE_GROB 0.252765\n", + "SEMIO_ERL 0.235743\n", + "FINANZ_VORSORGER 0.217776\n", + "SEMIO_LUST 0.175344\n", + "RETOURTYP_BK_S 0.161684\n", + "SEMIO_KRIT 0.130653\n", + "SEMIO_KAEM 0.122912\n", + "FINANZ_HAUSBAUER 0.122652\n", + "W_KEIT_KIND_HH 0.118632\n", + "PLZ8_ANTG3 0.104754" + ] + }, + "execution_count": 111, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 112, + "metadata": {}, + "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", + "
1
SEMIO_REL-0.262923
SEMIO_PFLICHT-0.231305
SEMIO_KULT-0.225357
SEMIO_TRADV-0.225101
FINANZ_SPARER-0.223603
FINANZ_UNAUFFAELLIGER-0.217697
FINANZ_ANLEGER-0.195253
SEMIO_FAM-0.184628
ONLINE_AFFINITAET-0.164147
SEMIO_RAT-0.163079
\n", + "
" + ], + "text/plain": [ + " 1\n", + "SEMIO_REL -0.262923\n", + "SEMIO_PFLICHT -0.231305\n", + "SEMIO_KULT -0.225357\n", + "SEMIO_TRADV -0.225101\n", + "FINANZ_SPARER -0.223603\n", + "FINANZ_UNAUFFAELLIGER -0.217697\n", + "FINANZ_ANLEGER -0.195253\n", + "SEMIO_FAM -0.184628\n", + "ONLINE_AFFINITAET -0.164147\n", + "SEMIO_RAT -0.163079" + ] + }, + "execution_count": 112, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "n" + ] + }, + { + "cell_type": "code", + "execution_count": 113, + "metadata": {}, + "outputs": [], + "source": [ + "# Map weights for the third principal component to corresponding feature names\n", + "# and then print the linked values, sorted by weight.\n", + "p, n = getWeights(azdiastemp_noNa_final, pca, 2, 10)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 114, + "metadata": {}, + "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", + "
2
SEMIO_VERT0.345306
SEMIO_SOZ0.256961
SEMIO_FAM0.242939
SEMIO_KULT0.220989
FINANZ_MINIMALIST0.162318
RETOURTYP_BK_S0.123113
FINANZ_VORSORGER0.107471
W_KEIT_KIND_HH0.099203
ALTERSKATEGORIE_GROB0.095271
SEMIO_LUST0.081573
\n", + "
" + ], + "text/plain": [ + " 2\n", + "SEMIO_VERT 0.345306\n", + "SEMIO_SOZ 0.256961\n", + "SEMIO_FAM 0.242939\n", + "SEMIO_KULT 0.220989\n", + "FINANZ_MINIMALIST 0.162318\n", + "RETOURTYP_BK_S 0.123113\n", + "FINANZ_VORSORGER 0.107471\n", + "W_KEIT_KIND_HH 0.099203\n", + "ALTERSKATEGORIE_GROB 0.095271\n", + "SEMIO_LUST 0.081573" + ] + }, + "execution_count": 114, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "metadata": {}, + "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", + "
2
ANREDE_KZ-0.364546
SEMIO_KAEM-0.334261
SEMIO_DOM-0.311411
SEMIO_KRIT-0.264220
SEMIO_RAT-0.227216
FINANZ_ANLEGER-0.195261
SEMIO_ERL-0.158497
FINANZ_SPARER-0.111787
FINANZ_UNAUFFAELLIGER-0.103077
SEMIO_TRADV-0.097060
\n", + "
" + ], + "text/plain": [ + " 2\n", + "ANREDE_KZ -0.364546\n", + "SEMIO_KAEM -0.334261\n", + "SEMIO_DOM -0.311411\n", + "SEMIO_KRIT -0.264220\n", + "SEMIO_RAT -0.227216\n", + "FINANZ_ANLEGER -0.195261\n", + "SEMIO_ERL -0.158497\n", + "FINANZ_SPARER -0.111787\n", + "FINANZ_UNAUFFAELLIGER -0.103077\n", + "SEMIO_TRADV -0.097060" + ] + }, + "execution_count": 115, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 2.3: Interpret Principal Components\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting your observations from detailed investigation of the first few principal components generated. Can we interpret positive and negative values from them in a meaningful way?)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Step 3: Clustering\n", + "\n", + "### Step 3.1: Apply Clustering to General Population\n", + "\n", + "You've assessed and cleaned the demographics data, then scaled and transformed them. Now, it's time to see how the data clusters in the principal components space. In this substep, you will apply k-means clustering to the dataset and use the average within-cluster distances from each point to their assigned cluster's centroid to decide on a number of clusters to keep.\n", + "\n", + "- Use sklearn's [KMeans](http://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html#sklearn.cluster.KMeans) class to perform k-means clustering on the PCA-transformed data.\n", + "- Then, compute the average difference from each point to its assigned cluster's center. **Hint**: The KMeans object's `.score()` method might be useful here, but note that in sklearn, scores tend to be defined so that larger is better. Try applying it to a small, toy dataset, or use an internet search to help your understanding.\n", + "- Perform the above two steps for a number of different cluster counts. You can then see how the average distance decreases with an increasing number of clusters. However, each additional cluster provides a smaller net benefit. Use this fact to select a final number of clusters in which to group the data. **Warning**: because of the large size of the dataset, it can take a long time for the algorithm to resolve. The more clusters to fit, the longer the algorithm will take. You should test for cluster counts through at least 10 clusters to get the full picture, but you shouldn't need to test for a number of clusters above about 30.\n", + "- Once you've selected a final number of clusters to use, re-fit a KMeans instance to perform the clustering operation. Make sure that you also obtain the cluster assignments for the general demographics data, since you'll be using them in the final Step 3.3." + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.cluster import KMeans" + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "metadata": {}, + "outputs": [], + "source": [ + "from joblib import dump, load" + ] + }, + { + "cell_type": "code", + "execution_count": 118, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster0 = KMeans(10)\n", + "# result0 = cluster0.fit_transform(df_pca)\n", + "# distance0 = np.min(result0, axis=1)\n", + "# dump(cluster0, 'cluster0')\n", + "# print(distance0)" + ] + }, + { + "cell_type": "code", + "execution_count": 119, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster1 = KMeans(11)\n", + "# result1 = cluster1.fit_transform(df_pca)\n", + "# distance1 = np.min(result1, axis=1)\n", + "# dump(cluster1, 'cluster1')\n", + "# print(distance1)" + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster2 = KMeans(12)\n", + "# result2 = cluster2.fit_transform(df_pca)\n", + "# distance2 = np.min(result2, axis=1)\n", + "# dump(cluster2, 'cluster2')\n", + "# print(distance2)" + ] + }, + { + "cell_type": "code", + "execution_count": 121, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster3 = KMeans(13)\n", + "# result3 = cluster3.fit_transform(df_pca)\n", + "# distance3 = np.min(result3, axis=1)\n", + "# dump(cluster3, 'cluster3')\n", + "# print(distance3)" + ] + }, + { + "cell_type": "code", + "execution_count": 122, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster4 = KMeans(14)\n", + "# result4 = cluster4.fit_transform(df_pca)\n", + "# distance4 = np.min(result4, axis=1)\n", + "# dump(cluster4, 'cluster4')\n", + "# print(distance4)" + ] + }, + { + "cell_type": "code", + "execution_count": 123, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster5 = KMeans(15)\n", + "# result5 = cluster5.fit_transform(df_pca)\n", + "# distance5 = np.min(result5, axis=1)\n", + "# dump(cluster5, 'cluster5')\n", + "# print(distance5)" + ] + }, + { + "cell_type": "code", + "execution_count": 124, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster6 = KMeans(16)\n", + "# result6 = cluster6.fit_transform(df_pca)\n", + "# distance6 = np.min(result6, axis=1)\n", + "# dump(cluster6, 'cluster6')\n", + "# print(distance6)" + ] + }, + { + "cell_type": "code", + "execution_count": 125, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster7 = KMeans(17)\n", + "# result7 = cluster7.fit_transform(df_pca)\n", + "# distance7 = np.min(result7, axis=1)\n", + "# dump(cluster7, 'cluster7')\n", + "# print(distance7)" + ] + }, + { + "cell_type": "code", + "execution_count": 126, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster8 = KMeans(18)\n", + "# result8 = cluster8.fit_transform(df_pca)\n", + "# distance8 = np.min(result8, axis=1)\n", + "# dump(cluster8, 'cluster8')\n", + "# print(distance8)" + ] + }, + { + "cell_type": "code", + "execution_count": 127, + "metadata": {}, + "outputs": [], + "source": [ + "# cluster9 = KMeans(19)\n", + "# result9 = cluster9.fit_transform(df_pca)\n", + "# distance9 = np.min(result9, axis=1)\n", + "# dump(cluster9, 'cluster9')\n", + "# print(distance9)" + ] + }, + { + "cell_type": "code", + "execution_count": 128, + "metadata": {}, + "outputs": [], + "source": [ + "cluster0 = load('cluster0')\n", + "cluster1 = load('cluster1')\n", + "cluster2 = load('cluster2')\n", + "cluster3 = load('cluster3')\n", + "cluster4 = load('cluster4')\n", + "cluster5 = load('cluster5')\n", + "cluster6 = load('cluster6')\n", + "cluster7 = load('cluster7')\n", + "cluster8 = load('cluster8')\n", + "cluster9 = load('cluster9')" + ] + }, + { + "cell_type": "code", + "execution_count": 129, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[ 5.99920356 5.25322915 6.26760652 ..., 4.92803458 5.6262381\n", + " 6.55423197]\n", + "[ 5.99729642 5.19941681 5.80185611 ..., 4.91543697 5.49068444\n", + " 6.23846466]\n", + "[ 6.00321557 5.38155623 5.71584121 ..., 4.93191586 5.4907225\n", + " 6.14040449]\n", + "[ 6.00392766 5.37278726 5.7805062 ..., 4.93259741 5.48580282\n", + " 6.21427945]\n", + "[ 5.86017994 5.66220384 5.77913626 ..., 4.60380248 5.48047593\n", + " 6.21966435]\n", + "[ 5.99451958 5.32246457 5.88282276 ..., 4.92354011 5.46000209\n", + " 5.49646623]\n", + "[ 5.92187825 5.0573057 5.77767642 ..., 4.4821897 5.48267078\n", + " 6.21543802]\n", + "[ 6.0017645 5.51875852 6.02450863 ..., 4.92603213 5.42898455\n", + " 5.90105521]\n", + "[ 5.92034543 5.03588893 5.815679 ..., 4.48228893 5.49018974\n", + " 6.33747584]\n", + "[ 5.92737572 5.04822523 5.88351874 ..., 4.48506609 5.1921062\n", + " 5.66267788]\n" + ] + } + ], + "source": [ + "result0 = cluster0.transform(df_pca)\n", + "distance0 = np.min(result0, axis=1)\n", + "print(distance0)\n", + "result1 = cluster1.transform(df_pca)\n", + "distance1 = np.min(result1, axis=1)\n", + "print(distance1)\n", + "result2 = cluster2.transform(df_pca)\n", + "distance2 = np.min(result2, axis=1)\n", + "print(distance2)\n", + "result3 = cluster3.transform(df_pca)\n", + "distance3 = np.min(result3, axis=1)\n", + "print(distance3)\n", + "result4 = cluster4.transform(df_pca)\n", + "distance4 = np.min(result4, axis=1)\n", + "print(distance4)\n", + "result5 = cluster5.transform(df_pca)\n", + "distance5 = np.min(result5, axis=1)\n", + "print(distance5)\n", + "result6 = cluster6.transform(df_pca)\n", + "distance6 = np.min(result6, axis=1)\n", + "print(distance6)\n", + "result7 = cluster7.transform(df_pca)\n", + "distance7 = np.min(result7, axis=1)\n", + "print(distance7)\n", + "result8 = cluster8.transform(df_pca)\n", + "distance8 = np.min(result8, axis=1)\n", + "print(distance8)\n", + "result9 = cluster9.transform(df_pca)\n", + "distance9 = np.min(result9, axis=1)\n", + "print(distance9)" + ] + }, + { + "cell_type": "code", + "execution_count": 130, + "metadata": {}, + "outputs": [], + "source": [ + "resultList = [distance0, distance1, distance2, distance3, distance4, distance5, distance6, distance7, distance8, distance9]" + ] + }, + { + "cell_type": "code", + "execution_count": 131, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Average of 0 is: 5.491091752413104\n", + "Average of 1 is: 5.432722028994438\n", + "Average of 2 is: 5.3953931307323435\n", + "Average of 3 is: 5.347826619987956\n", + "Average of 4 is: 5.317350436694105\n", + "Average of 5 is: 5.286875239748684\n", + "Average of 6 is: 5.249543196370822\n", + "Average of 7 is: 5.242796093423207\n", + "Average of 8 is: 5.207815480022285\n", + "Average of 9 is: 5.191018052005388\n" + ] + } + ], + "source": [ + "resultListAvg = []\n", + "for i, j in zip(resultList, range(0, len(resultList))):\n", + " resultListAvg.append(np.mean(i))\n", + " print(f'Average of {j} is: {resultListAvg[j]}')" + ] + }, + { + "cell_type": "code", + "execution_count": 132, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0,0.5,'Distance to nearest cluster centre')" + ] + }, + "execution_count": 132, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "x = range(10, 20)\n", + "plt.plot(x, resultListAvg)\n", + "plt.xlabel('Num of Clusters')\n", + "plt.ylabel('Distance to nearest cluster centre')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Unfortunately I ran into memory issues on this VM I couldn't get any further even with refreshing the workspace. If this were a real piece of work - I would go back and optimise my code (I suspect I am wasting a lot of memory here) however I don't want to go back and change things as it currently works for this project.\n", + "\n", + "I am on my work laptop which is not powerful and I am unable to access my desktop at home. I hope you can see that the average distance to the centres is decreasing for increasing clusters!. \n", + "\n", + "I suspect that we will soon see this decrease slow down and eventually reach an optimum number of clusters.\n", + "\n", + "As such I am choosing **19 clusters** for the model.\n", + "\n", + "We have already got the results for this:" + ] + }, + { + "cell_type": "code", + "execution_count": 133, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[ 8.89676907, 11.18238063, 9.44552392, ..., 7.78952809,\n", + " 8.01786661, 23.62727942],\n", + " [ 7.98911824, 8.06703566, 7.30671633, ..., 8.28362807,\n", + " 6.64715697, 23.42522223],\n", + " [ 9.89697642, 6.97460371, 5.88351874, ..., 8.04631183,\n", + " 9.80914733, 24.07789033],\n", + " ..., \n", + " [ 9.49078454, 10.88099939, 8.75271193, ..., 7.85142571,\n", + " 7.23220293, 23.94232482],\n", + " [ 11.30937033, 11.41794303, 9.05660614, ..., 7.33669112,\n", + " 10.55966618, 24.50789177],\n", + " [ 9.35820758, 7.75844345, 5.66267788, ..., 7.50301775,\n", + " 10.07965876, 23.58627624]])" + ] + }, + "execution_count": 133, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "result9\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 3.1: Apply Clustering to General Population\n", + "\n", + "I have explained above what I've done but I will recap.\n", + "\n", + "We fitted KMeans to our final dataset starting at k=5 to k=14. Unfortunately I had to stop at k=14 due to memory problems but we can see that as we are increasing k the distance to the nearest cluster centre is decreasing. For higher k we will eventually find a sweet spot for our data." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 3.2: Apply All Steps to the Customer Data\n", + "\n", + "Now that you have clusters and cluster centers for the general population, it's time to see how the customer data maps on to those clusters. Take care to not confuse this for re-fitting all of the models to the customer data. Instead, you're going to use the fits from the general population to clean, transform, and cluster the customer data. In the last step of the project, you will interpret how the general population fits apply to the customer data.\n", + "\n", + "- Don't forget when loading in the customers data, that it is semicolon (`;`) delimited.\n", + "- Apply the same feature wrangling, selection, and engineering steps to the customer demographics using the `clean_data()` function you created earlier. (You can assume that the customer demographics data has similar meaning behind missing data patterns as the general demographics data.)\n", + "- Use the sklearn objects from the general demographics data, and apply their transformations to the customers data. That is, you should not be using a `.fit()` or `.fit_transform()` method to re-fit the old objects, nor should you be creating new sklearn objects! Carry the data through the feature scaling, PCA, and clustering steps, obtaining cluster assignments for all of the data in the customer demographics data." + ] + }, + { + "cell_type": "code", + "execution_count": 134, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(191652, 85)\n" + ] + }, + { + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02415.0515122...3.03.01.00.01.05.05.01.02.01.0
1-141NaN515132...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
2-1422.0515144...2.03.03.01.03.03.02.03.05.03.0
\n", + "

3 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 2 4 1 5.0 \n", + "1 -1 4 1 NaN \n", + "2 -1 4 2 2.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 5 1 5 1 \n", + "1 5 1 5 1 \n", + "2 5 1 5 1 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 2 2 ... 3.0 3.0 \n", + "1 3 2 ... NaN NaN \n", + "2 4 4 ... 2.0 3.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 1.0 0.0 1.0 5.0 5.0 1.0 \n", + "1 NaN NaN NaN NaN NaN NaN \n", + "2 3.0 1.0 3.0 3.0 2.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "1 NaN NaN \n", + "2 5.0 3.0 \n", + "\n", + "[3 rows x 85 columns]" + ] + }, + "execution_count": 134, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Load in the customer demographics data.\n", + "customers = pd.read_csv('Udacity_CUSTOMERS_Subset.csv', sep=';')\n", + "print(customers.shape)\n", + "customers.head(3)" + ] + }, + { + "cell_type": "code", + "execution_count": 135, + "metadata": {}, + "outputs": [], + "source": [ + "# Apply preprocessing, feature transformation, and clustering from the general\n", + "# demographics onto the customer data, obtaining cluster predictions for the\n", + "# customer demographics data.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 136, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "AGER_TYP 0\n", + "ALTERSKATEGORIE_GROB 1\n", + "ANREDE_KZ 2\n", + "CJT_GESAMTTYP 3\n", + "FINANZ_MINIMALIST 4\n", + "FINANZ_SPARER 5\n", + "FINANZ_VORSORGER 6\n", + "FINANZ_ANLEGER 7\n", + "FINANZ_UNAUFFAELLIGER 8\n", + "FINANZ_HAUSBAUER 9\n", + "FINANZTYP 10\n", + "GEBURTSJAHR 11\n", + "GFK_URLAUBERTYP 12\n", + "GREEN_AVANTGARDE 13\n", + "HEALTH_TYP 14\n", + "LP_LEBENSPHASE_FEIN 15\n", + "LP_LEBENSPHASE_GROB 16\n", + "LP_FAMILIE_FEIN 17\n", + "LP_FAMILIE_GROB 18\n", + "LP_STATUS_FEIN 19\n", + "LP_STATUS_GROB 20\n", + "NATIONALITAET_KZ 21\n", + "PRAEGENDE_JUGENDJAHRE 22\n", + "RETOURTYP_BK_S 23\n", + "SEMIO_SOZ 24\n", + "SEMIO_FAM 25\n", + "SEMIO_REL 26\n", + "SEMIO_MAT 27\n", + "SEMIO_VERT 28\n", + "SEMIO_LUST 29\n", + "SEMIO_ERL 30\n", + "SEMIO_KULT 31\n", + "SEMIO_RAT 32\n", + "SEMIO_KRIT 33\n", + "SEMIO_DOM 34\n", + "SEMIO_KAEM 35\n", + "SEMIO_PFLICHT 36\n", + "SEMIO_TRADV 37\n", + "SHOPPER_TYP 38\n", + "SOHO_KZ 39\n", + "TITEL_KZ 40\n", + "VERS_TYP 41\n", + "ZABEOTYP 42\n", + "ALTER_HH 43\n", + "ANZ_PERSONEN 44\n", + "ANZ_TITEL 45\n", + "HH_EINKOMMEN_SCORE 46\n", + "KK_KUNDENTYP 47\n", + "W_KEIT_KIND_HH 48\n", + "WOHNDAUER_2008 49\n", + "ANZ_HAUSHALTE_AKTIV 50\n", + "ANZ_HH_TITEL 51\n", + "GEBAEUDETYP 52\n", + "KONSUMNAEHE 53\n", + "MIN_GEBAEUDEJAHR 54\n", + "OST_WEST_KZ 55\n", + "WOHNLAGE 56\n", + "CAMEO_DEUG_2015 57\n", + "CAMEO_DEU_2015 58\n", + "CAMEO_INTL_2015 59\n", + "KBA05_ANTG1 60\n", + "KBA05_ANTG2 61\n", + "KBA05_ANTG3 62\n", + "KBA05_ANTG4 63\n", + "KBA05_BAUMAX 64\n", + "KBA05_GBZ 65\n", + "BALLRAUM 66\n", + "EWDICHTE 67\n", + "INNENSTADT 68\n", + "GEBAEUDETYP_RASTER 69\n", + "KKK 70\n", + "MOBI_REGIO 71\n", + "ONLINE_AFFINITAET 72\n", + "REGIOTYP 73\n", + "KBA13_ANZAHL_PKW 74\n", + "PLZ8_ANTG1 75\n", + "PLZ8_ANTG2 76\n", + "PLZ8_ANTG3 77\n", + "PLZ8_ANTG4 78\n", + "PLZ8_BAUMAX 79\n", + "PLZ8_HHZ 80\n", + "PLZ8_GBZ 81\n", + "ARBEIT 82\n", + "ORTSGR_KLS9 83\n", + "RELAT_AB 84\n" + ] + } + ], + "source": [ + "# Fill in missing values:\n", + "\n", + "for col, index in zip(customers, range(len(missing_list))):\n", + " print(col, index)\n", + " customers.iloc[:,index] = customers.iloc[:,index].apply(replace, items=missing_list[index], axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 137, + "metadata": {}, + "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", + "
AGER_TYPALTERSKATEGORIE_GROBANREDE_KZCJT_GESAMTTYPFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUER...PLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_BAUMAXPLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
02.04.015.0515122...3.03.01.00.01.05.05.01.02.01.0
1NaN4.01NaN515132...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
2NaN4.022.0515144...2.03.03.01.03.03.02.03.05.03.0
31.04.012.0515212...3.02.01.00.01.03.04.01.03.01.0
4NaN3.016.0314452...2.04.02.01.02.03.03.03.05.01.0
51.03.014.0515123...2.03.02.01.01.05.05.03.07.05.0
62.04.012.0515112...3.02.01.00.01.05.05.02.03.02.0
71.04.012.0515122...3.03.01.01.01.03.03.03.04.03.0
82.04.021.0225115...1.04.02.01.05.05.04.03.08.03.0
91.03.013.0524131...3.03.01.00.01.05.05.03.06.04.0
\n", + "

10 rows × 85 columns

\n", + "
" + ], + "text/plain": [ + " AGER_TYP ALTERSKATEGORIE_GROB ANREDE_KZ CJT_GESAMTTYP \\\n", + "0 2.0 4.0 1 5.0 \n", + "1 NaN 4.0 1 NaN \n", + "2 NaN 4.0 2 2.0 \n", + "3 1.0 4.0 1 2.0 \n", + "4 NaN 3.0 1 6.0 \n", + "5 1.0 3.0 1 4.0 \n", + "6 2.0 4.0 1 2.0 \n", + "7 1.0 4.0 1 2.0 \n", + "8 2.0 4.0 2 1.0 \n", + "9 1.0 3.0 1 3.0 \n", + "\n", + " FINANZ_MINIMALIST FINANZ_SPARER FINANZ_VORSORGER FINANZ_ANLEGER \\\n", + "0 5 1 5 1 \n", + "1 5 1 5 1 \n", + "2 5 1 5 1 \n", + "3 5 1 5 2 \n", + "4 3 1 4 4 \n", + "5 5 1 5 1 \n", + "6 5 1 5 1 \n", + "7 5 1 5 1 \n", + "8 2 2 5 1 \n", + "9 5 2 4 1 \n", + "\n", + " FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER ... PLZ8_ANTG1 PLZ8_ANTG2 \\\n", + "0 2 2 ... 3.0 3.0 \n", + "1 3 2 ... NaN NaN \n", + "2 4 4 ... 2.0 3.0 \n", + "3 1 2 ... 3.0 2.0 \n", + "4 5 2 ... 2.0 4.0 \n", + "5 2 3 ... 2.0 3.0 \n", + "6 1 2 ... 3.0 2.0 \n", + "7 2 2 ... 3.0 3.0 \n", + "8 1 5 ... 1.0 4.0 \n", + "9 3 1 ... 3.0 3.0 \n", + "\n", + " PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_BAUMAX PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 1.0 0.0 1.0 5.0 5.0 1.0 \n", + "1 NaN NaN NaN NaN NaN NaN \n", + "2 3.0 1.0 3.0 3.0 2.0 3.0 \n", + "3 1.0 0.0 1.0 3.0 4.0 1.0 \n", + "4 2.0 1.0 2.0 3.0 3.0 3.0 \n", + "5 2.0 1.0 1.0 5.0 5.0 3.0 \n", + "6 1.0 0.0 1.0 5.0 5.0 2.0 \n", + "7 1.0 1.0 1.0 3.0 3.0 3.0 \n", + "8 2.0 1.0 5.0 5.0 4.0 3.0 \n", + "9 1.0 0.0 1.0 5.0 5.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "1 NaN NaN \n", + "2 5.0 3.0 \n", + "3 3.0 1.0 \n", + "4 5.0 1.0 \n", + "5 7.0 5.0 \n", + "6 3.0 2.0 \n", + "7 4.0 3.0 \n", + "8 8.0 3.0 \n", + "9 6.0 4.0 \n", + "\n", + "[10 rows x 85 columns]" + ] + }, + "execution_count": 137, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "TITEL_KZ 0.987936\n", + "KK_KUNDENTYP 0.584064\n", + "KBA05_BAUMAX 0.571531\n", + "AGER_TYP 0.504759\n", + "GEBURTSJAHR 0.485380\n", + "ALTER_HH 0.358707\n", + "KKK 0.313401\n", + "REGIOTYP 0.313401\n", + "W_KEIT_KIND_HH 0.297085\n", + "KBA05_GBZ 0.292102\n", + "dtype: float64" + ] + }, + "execution_count": 138, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Find missing data by col\n", + "\n", + "null_col_count_cust = customers.isnull().sum(axis=0)\n", + "ax_rows_cust = customers.shape[0]\n", + "anomalies_cust = null_col_count_cust.apply(findTotal, total=ax_rows_cust).sort_values(ascending=False)\n", + "anomalies_cust[0:10]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "In the original dataset we dropped anything below 34.8%, I will do the same here so we will drop the first six of the above list\n", + "\n", + "As we did above, I am keeping all rows regardless of how much is missing" + ] + }, + { + "cell_type": "code", + "execution_count": 139, + "metadata": {}, + "outputs": [], + "source": [ + "customers.drop(['TITEL_KZ', 'KK_KUNDENTYP', 'KBA05_BAUMAX', 'AGER_TYP', 'GEBURTSJAHR', 'ALTER_HH'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "metadata": {}, + "outputs": [], + "source": [ + "assert customers.shape[1]+6 == 85" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can now look at reencoding our categorical features " + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['ANREDE_KZ', 'CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'GREEN_AVANTGARDE', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n", + "18\n" + ] + } + ], + "source": [ + "categorical_cols = feat_info_cat['attribute'].tolist()\n", + "\n", + "drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "for i in drop_cols:\n", + " categorical_cols.remove(i)\n", + " \n", + "print(categorical_cols)\n", + "print(len(categorical_cols))" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "ANREDE_KZ\n", + "Values: [1 2]\n", + "Length: 2\n", + "FINANZTYP\n", + "Values: [2 6 5 3 1 4]\n", + "Length: 6\n", + "GFK_URLAUBERTYP\n", + "Values: [ 4. nan 3. 10. 2. 11. 8. 1. 5. 9. 12. 7. 6.]\n", + "Length: 13\n", + "GREEN_AVANTGARDE\n", + "Values: [1 0]\n", + "Length: 2\n", + "LP_FAMILIE_GROB\n", + "Values: [ 2. nan 1. 5. 4. 3.]\n", + "Length: 6\n", + "LP_STATUS_FEIN\n", + "Values: [ 10. nan 9. 1. 7. 6. 3. 5. 8. 4. 2.]\n", + "Length: 11\n", + "LP_STATUS_GROB\n", + "Values: [ 5. nan 4. 1. 3. 2.]\n", + "Length: 6\n", + "NATIONALITAET_KZ\n", + "Values: [ 1. 2. nan 3.]\n", + "Length: 4\n", + "SHOPPER_TYP\n", + "Values: [ 3. 1. 0. 2. nan]\n", + "Length: 5\n", + "SOHO_KZ\n", + "Values: [ 0. nan 1.]\n", + "Length: 3\n", + "VERS_TYP\n", + "Values: [ 1. 2. nan]\n", + "Length: 3\n", + "ZABEOTYP\n", + "Values: [3 1 2 4 6 5]\n", + "Length: 6\n", + "GEBAEUDETYP\n", + "Values: [ 1. nan 8. 2. 3. 4. 6.]\n", + "Length: 7\n", + "OST_WEST_KZ\n", + "Values: ['W' nan 'O']\n", + "Length: 3\n", + "CAMEO_DEUG_2015\n", + "Values: ['1' nan '5' '4' '7' '3' '9' '2' '6' '8']\n", + "Length: 10\n", + "CAMEO_DEU_2015\n", + "Values: ['1A' nan '5D' '4C' '7B' '3B' '1D' '9E' '2D' '4A' '6B' '9D' '8B' '5C' '9C'\n", + " '4E' '6C' '8C' '8A' '5B' '9B' '3D' '2A' '3C' '5F' '7A' '1E' '2C' '7C' '5A'\n", + " '2B' '6D' '7E' '5E' '6E' '3A' '9A' '4B' '1C' '1B' '6A' '8D' '7D' '6F' '4D']\n", + "Length: 45\n", + "\n", + " Columns to reencode as dummies: ['CJT_GESAMTTYP', 'FINANZTYP', 'GFK_URLAUBERTYP', 'LP_FAMILIE_FEIN', 'LP_FAMILIE_GROB', 'LP_STATUS_FEIN', 'LP_STATUS_GROB', 'NATIONALITAET_KZ', 'SHOPPER_TYP', 'SOHO_KZ', 'VERS_TYP', 'ZABEOTYP', 'GEBAEUDETYP', 'OST_WEST_KZ', 'CAMEO_DEUG_2015', 'CAMEO_DEU_2015']\n" + ] + } + ], + "source": [ + "# Re-encode categorical variable(s) to be kept in the analysis.\n", + "for i in categorical_cols:\n", + " print(f'{i}\\nValues: {customers[i].unique()}\\nLength: {len(customers[i].unique())}')\n", + " if len(customers[i].unique()) == 2:\n", + " categorical_cols.remove(i)\n", + "print('\\n Columns to reencode as dummies:', categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "16" + ] + }, + "execution_count": 143, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(categorical_cols)" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "metadata": {}, + "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", + "
CJT_GESAMTTYPFINANZTYPGFK_URLAUBERTYPLP_FAMILIE_FEINLP_FAMILIE_GROBLP_STATUS_FEINLP_STATUS_GROBNATIONALITAET_KZSHOPPER_TYPSOHO_KZVERS_TYPZABEOTYPGEBAEUDETYPOST_WEST_KZCAMEO_DEUG_2015CAMEO_DEU_2015
05.024.02.02.010.05.01.03.00.01.031.0W11A
1NaN2NaNNaNNaNNaNNaN1.03.00.01.03NaNNaNNaNNaN
22.023.01.01.010.05.01.01.00.02.038.0W55D
32.0610.0NaNNaN9.04.01.00.00.01.012.0W44C
46.022.010.05.01.01.01.01.00.02.013.0W77B
\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP FINANZTYP GFK_URLAUBERTYP LP_FAMILIE_FEIN \\\n", + "0 5.0 2 4.0 2.0 \n", + "1 NaN 2 NaN NaN \n", + "2 2.0 2 3.0 1.0 \n", + "3 2.0 6 10.0 NaN \n", + "4 6.0 2 2.0 10.0 \n", + "\n", + " LP_FAMILIE_GROB LP_STATUS_FEIN LP_STATUS_GROB NATIONALITAET_KZ \\\n", + "0 2.0 10.0 5.0 1.0 \n", + "1 NaN NaN NaN 1.0 \n", + "2 1.0 10.0 5.0 1.0 \n", + "3 NaN 9.0 4.0 1.0 \n", + "4 5.0 1.0 1.0 1.0 \n", + "\n", + " SHOPPER_TYP SOHO_KZ VERS_TYP ZABEOTYP GEBAEUDETYP OST_WEST_KZ \\\n", + "0 3.0 0.0 1.0 3 1.0 W \n", + "1 3.0 0.0 1.0 3 NaN NaN \n", + "2 1.0 0.0 2.0 3 8.0 W \n", + "3 0.0 0.0 1.0 1 2.0 W \n", + "4 1.0 0.0 2.0 1 3.0 W \n", + "\n", + " CAMEO_DEUG_2015 CAMEO_DEU_2015 \n", + "0 1 1A \n", + "1 NaN NaN \n", + "2 5 5D \n", + "3 4 4C \n", + "4 7 7B " + ] + }, + "execution_count": 144, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers[categorical_cols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "metadata": {}, + "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", + "
CJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2FINANZTYP_3...CAMEO_DEU_2015_8ACAMEO_DEU_2015_8BCAMEO_DEU_2015_8CCAMEO_DEU_2015_8DCAMEO_DEU_2015_9ACAMEO_DEU_2015_9BCAMEO_DEU_2015_9CCAMEO_DEU_2015_9DCAMEO_DEU_2015_9ECAMEO_DEU_2015_nan
00000100010...0000000000
10000001010...0000000001
20100000010...0000000000
30100000000...0000000000
40000010010...0000000000
\n", + "

5 rows × 147 columns

\n", + "
" + ], + "text/plain": [ + " CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 CJT_GESAMTTYP_4.0 \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 1 0 0 \n", + "3 0 1 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan FINANZTYP_1 \\\n", + "0 1 0 0 0 \n", + "1 0 0 1 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 1 0 0 \n", + "\n", + " FINANZTYP_2 FINANZTYP_3 ... CAMEO_DEU_2015_8A \\\n", + "0 1 0 ... 0 \n", + "1 1 0 ... 0 \n", + "2 1 0 ... 0 \n", + "3 0 0 ... 0 \n", + "4 1 0 ... 0 \n", + "\n", + " CAMEO_DEU_2015_8B CAMEO_DEU_2015_8C CAMEO_DEU_2015_8D CAMEO_DEU_2015_9A \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_9B CAMEO_DEU_2015_9C CAMEO_DEU_2015_9D CAMEO_DEU_2015_9E \\\n", + "0 0 0 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 0 0 \n", + "3 0 0 0 0 \n", + "4 0 0 0 0 \n", + "\n", + " CAMEO_DEU_2015_nan \n", + "0 0 \n", + "1 1 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 147 columns]" + ] + }, + "execution_count": 145, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers_cat_dummies = pd.get_dummies(customers[categorical_cols].astype(str))\n", + "customers_cat_dummies.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "metadata": {}, + "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", + "
attributeinformation_leveltypemissing_or_unknown
15LP_LEBENSPHASE_FEINpersonmixed[0]
16LP_LEBENSPHASE_GROBpersonmixed[0]
22PRAEGENDE_JUGENDJAHREpersonmixed[-1,0]
56WOHNLAGEbuildingmixed[-1]
59CAMEO_INTL_2015microcell_rr4mixed[-1,XX]
64KBA05_BAUMAXmicrocell_rr3mixed[-1,0]
79PLZ8_BAUMAXmacrocell_plz8mixed[-1,0]
\n", + "
" + ], + "text/plain": [ + " attribute information_level type missing_or_unknown\n", + "15 LP_LEBENSPHASE_FEIN person mixed [0]\n", + "16 LP_LEBENSPHASE_GROB person mixed [0]\n", + "22 PRAEGENDE_JUGENDJAHRE person mixed [-1,0]\n", + "56 WOHNLAGE building mixed [-1]\n", + "59 CAMEO_INTL_2015 microcell_rr4 mixed [-1,XX]\n", + "64 KBA05_BAUMAX microcell_rr3 mixed [-1,0]\n", + "79 PLZ8_BAUMAX macrocell_plz8 mixed [-1,0]" + ] + }, + "execution_count": 146, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "feat_info_mixed = feat_info[(feat_info['type']=='mixed')]\n", + "feat_info_mixed" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['LP_LEBENSPHASE_FEIN', 'LP_LEBENSPHASE_GROB', 'PRAEGENDE_JUGENDJAHRE', 'WOHNLAGE', 'CAMEO_INTL_2015', 'KBA05_BAUMAX', 'PLZ8_BAUMAX']\n", + "7\n" + ] + } + ], + "source": [ + "mixed_cols = feat_info_mixed['attribute'].tolist()\n", + "\n", + "# drop_cols = ['AGER_TYP', 'TITEL_KZ', 'KK_KUNDENTYP']\n", + "\n", + "# for i in drop_cols:\n", + "# mixed_cols.remove(i)\n", + " \n", + "print(mixed_cols)\n", + "print(len(mixed_cols))" + ] + }, + { + "cell_type": "code", + "execution_count": 148, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 50.0\n", + "1 NaN\n", + "2 50.0\n", + "3 40.0\n", + "4 70.0\n", + "Name: PRAEGENDE_JUGENDJAHRE_decade, dtype: float64" + ] + }, + "execution_count": 148, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['PRAEGENDE_JUGENDJAHRE_decade'] = customers.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_decade, axis=1)\n", + "customers['PRAEGENDE_JUGENDJAHRE_decade'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 149, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 avantgarde\n", + "1 NaN\n", + "2 avantgarde\n", + "3 mainstream\n", + "4 mainstream\n", + "Name: PRAEGENDE_JUGENDJAHRE_movement, dtype: object" + ] + }, + "execution_count": 149, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['PRAEGENDE_JUGENDJAHRE_movement'] = customers.loc[:,'PRAEGENDE_JUGENDJAHRE'].apply(PRAEGENDE_JUGENDJAHRE_movement, axis=1)\n", + "customers['PRAEGENDE_JUGENDJAHRE_movement'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_decadePRAEGENDE_JUGENDJAHRE_movement
050.0avantgarde
1NaNNaN
250.0avantgarde
340.0mainstream
470.0mainstream
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_decade PRAEGENDE_JUGENDJAHRE_movement\n", + "0 50.0 avantgarde\n", + "1 NaN NaN\n", + "2 50.0 avantgarde\n", + "3 40.0 mainstream\n", + "4 70.0 mainstream" + ] + }, + "execution_count": 150, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers.iloc[0:5, -2:]" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 1\n", + "1 NaN\n", + "2 3\n", + "3 2\n", + "4 4\n", + "Name: CAMEO_INTL_2015_wealth, dtype: object" + ] + }, + "execution_count": 151, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['CAMEO_INTL_2015_wealth'] = customers.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_wealth, axis=1)\n", + "customers['CAMEO_INTL_2015_wealth'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 152, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 3\n", + "1 NaN\n", + "2 4\n", + "3 4\n", + "4 1\n", + "Name: CAMEO_INTL_2015_life, dtype: object" + ] + }, + "execution_count": 152, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['CAMEO_INTL_2015_life'] = customers.loc[:,'CAMEO_INTL_2015'].apply(CAMEO_INTL_2015_life, axis=1)\n", + "customers['CAMEO_INTL_2015_life'].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 153, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 13\n", + "1 NaN\n", + "2 34\n", + "3 24\n", + "4 41\n", + "Name: CAMEO_INTL_2015, dtype: object" + ] + }, + "execution_count": 153, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers['CAMEO_INTL_2015'].iloc[0:5][:]" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movementPRAEGENDE_JUGENDJAHRE_decadeCAMEO_INTL_2015_wealthCAMEO_INTL_2015_life
0avantgarde50.013
1NaNNaNNaNNaN
2avantgarde50.034
3mainstream40.024
4mainstream70.041
\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement PRAEGENDE_JUGENDJAHRE_decade \\\n", + "0 avantgarde 50.0 \n", + "1 NaN NaN \n", + "2 avantgarde 50.0 \n", + "3 mainstream 40.0 \n", + "4 mainstream 70.0 \n", + "\n", + " CAMEO_INTL_2015_wealth CAMEO_INTL_2015_life \n", + "0 1 3 \n", + "1 NaN NaN \n", + "2 3 4 \n", + "3 2 4 \n", + "4 4 1 " + ] + }, + "execution_count": 154, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "newCols = ['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade', 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life']\n", + "customers[newCols].head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "metadata": {}, + "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", + "
PRAEGENDE_JUGENDJAHRE_movement_avantgardePRAEGENDE_JUGENDJAHRE_movement_mainstreamPRAEGENDE_JUGENDJAHRE_movement_nanPRAEGENDE_JUGENDJAHRE_decade_40.0PRAEGENDE_JUGENDJAHRE_decade_50.0PRAEGENDE_JUGENDJAHRE_decade_60.0PRAEGENDE_JUGENDJAHRE_decade_70.0PRAEGENDE_JUGENDJAHRE_decade_80.0PRAEGENDE_JUGENDJAHRE_decade_90.0PRAEGENDE_JUGENDJAHRE_decade_nan...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
01000100000...0000001000
10010000001...0001000001
21000100000...1000000100
30101000000...0000000100
40100001000...0100100000
\n", + "

5 rows × 22 columns

\n", + "
" + ], + "text/plain": [ + " PRAEGENDE_JUGENDJAHRE_movement_avantgarde \\\n", + "0 1 \n", + "1 0 \n", + "2 1 \n", + "3 0 \n", + "4 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_mainstream \\\n", + "0 0 \n", + "1 0 \n", + "2 0 \n", + "3 1 \n", + "4 1 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_movement_nan PRAEGENDE_JUGENDJAHRE_decade_40.0 \\\n", + "0 0 0 \n", + "1 1 0 \n", + "2 0 0 \n", + "3 0 1 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_50.0 PRAEGENDE_JUGENDJAHRE_decade_60.0 \\\n", + "0 1 0 \n", + "1 0 0 \n", + "2 1 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_70.0 PRAEGENDE_JUGENDJAHRE_decade_80.0 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 1 0 \n", + "\n", + " PRAEGENDE_JUGENDJAHRE_decade_90.0 PRAEGENDE_JUGENDJAHRE_decade_nan \\\n", + "0 0 0 \n", + "1 0 1 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " ... CAMEO_INTL_2015_wealth_3 \\\n", + "0 ... 0 \n", + "1 ... 0 \n", + "2 ... 1 \n", + "3 ... 0 \n", + "4 ... 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_4 CAMEO_INTL_2015_wealth_5 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 1 0 \n", + "\n", + " CAMEO_INTL_2015_wealth_nan CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 \\\n", + "0 0 0 0 \n", + "1 1 0 0 \n", + "2 0 0 0 \n", + "3 0 0 0 \n", + "4 0 1 0 \n", + "\n", + " CAMEO_INTL_2015_life_3 CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 \\\n", + "0 1 0 0 \n", + "1 0 0 0 \n", + "2 0 1 0 \n", + "3 0 1 0 \n", + "4 0 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_nan \n", + "0 0 \n", + "1 1 \n", + "2 0 \n", + "3 0 \n", + "4 0 \n", + "\n", + "[5 rows x 22 columns]" + ] + }, + "execution_count": 155, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers_mixed_dummies = pd.get_dummies(customers[newCols].astype(str))\n", + "customers_mixed_dummies.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": 156, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "customers.drop(['PRAEGENDE_JUGENDJAHRE_movement', 'PRAEGENDE_JUGENDJAHRE_decade',\n", + " 'CAMEO_INTL_2015_wealth', 'CAMEO_INTL_2015_life'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "79" + ] + }, + "execution_count": 157, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "len(customers.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 158, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "16\n", + "7\n", + "\n", + "147\n", + "22\n" + ] + } + ], + "source": [ + "print(len(categorical_cols))\n", + "print(len(mixed_cols))\n", + "print()\n", + "print(len(customers_cat_dummies.columns))\n", + "print(len(customers_mixed_dummies.columns))" + ] + }, + { + "cell_type": "code", + "execution_count": 159, + "metadata": {}, + "outputs": [], + "source": [ + "mixed_cols.remove('KBA05_BAUMAX')" + ] + }, + { + "cell_type": "code", + "execution_count": 160, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "['LP_LEBENSPHASE_FEIN',\n", + " 'LP_LEBENSPHASE_GROB',\n", + " 'PRAEGENDE_JUGENDJAHRE',\n", + " 'WOHNLAGE',\n", + " 'CAMEO_INTL_2015',\n", + " 'PLZ8_BAUMAX']" + ] + }, + "execution_count": 160, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mixed_cols" + ] + }, + { + "cell_type": "code", + "execution_count": 161, + "metadata": {}, + "outputs": [], + "source": [ + "customers.drop(categorical_cols, axis=1, inplace=True)\n", + "customers.drop(mixed_cols, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 162, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
04.0151512211.0...1201.03.03.01.00.05.05.01.02.01.0
14.0151513201.0...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", + "

2 rows × 57 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 4.0 1 5 1 \n", + "1 4.0 1 5 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 5 1 2 2 \n", + "1 5 1 3 2 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 1 1.0 ... 1201.0 3.0 \n", + "1 0 1.0 ... NaN NaN \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 3.0 1.0 0.0 5.0 5.0 1.0 \n", + "1 NaN NaN NaN NaN NaN NaN \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "1 NaN NaN \n", + "\n", + "[2 rows x 57 columns]" + ] + }, + "execution_count": 162, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp = customers\n", + "customerstemp.head(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 163, + "metadata": {}, + "outputs": [], + "source": [ + "customerstemp = customerstemp.join(customers_cat_dummies)\n", + "customerstemp = customerstemp.join(customers_mixed_dummies)" + ] + }, + { + "cell_type": "code", + "execution_count": 164, + "metadata": {}, + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERGREEN_AVANTGARDEHEALTH_TYP...CAMEO_INTL_2015_wealth_3CAMEO_INTL_2015_wealth_4CAMEO_INTL_2015_wealth_5CAMEO_INTL_2015_wealth_nanCAMEO_INTL_2015_life_1CAMEO_INTL_2015_life_2CAMEO_INTL_2015_life_3CAMEO_INTL_2015_life_4CAMEO_INTL_2015_life_5CAMEO_INTL_2015_life_nan
04.0151512211.0...0000001000
14.0151513201.0...0001000001
24.0251514412.0...1000000100
34.0151521202.0...0000000100
43.0131445203.0...0100100000
\n", + "

5 rows × 226 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 4.0 1 5 1 \n", + "1 4.0 1 5 1 \n", + "2 4.0 2 5 1 \n", + "3 4.0 1 5 1 \n", + "4 3.0 1 3 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 5 1 2 2 \n", + "1 5 1 3 2 \n", + "2 5 1 4 4 \n", + "3 5 2 1 2 \n", + "4 4 4 5 2 \n", + "\n", + " GREEN_AVANTGARDE HEALTH_TYP ... \\\n", + "0 1 1.0 ... \n", + "1 0 1.0 ... \n", + "2 1 2.0 ... \n", + "3 0 2.0 ... \n", + "4 0 3.0 ... \n", + "\n", + " CAMEO_INTL_2015_wealth_3 CAMEO_INTL_2015_wealth_4 \\\n", + "0 0 0 \n", + "1 0 0 \n", + "2 1 0 \n", + "3 0 0 \n", + "4 0 1 \n", + "\n", + " CAMEO_INTL_2015_wealth_5 CAMEO_INTL_2015_wealth_nan \\\n", + "0 0 0 \n", + "1 0 1 \n", + "2 0 0 \n", + "3 0 0 \n", + "4 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_1 CAMEO_INTL_2015_life_2 CAMEO_INTL_2015_life_3 \\\n", + "0 0 0 1 \n", + "1 0 0 0 \n", + "2 0 0 0 \n", + "3 0 0 0 \n", + "4 1 0 0 \n", + "\n", + " CAMEO_INTL_2015_life_4 CAMEO_INTL_2015_life_5 CAMEO_INTL_2015_life_nan \n", + "0 0 0 0 \n", + "1 0 0 1 \n", + "2 1 0 0 \n", + "3 1 0 0 \n", + "4 0 0 0 \n", + "\n", + "[5 rows x 226 columns]" + ] + }, + "execution_count": 164, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will now apply feature scaling" + ] + }, + { + "cell_type": "code", + "execution_count": 165, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "75520\n" + ] + }, + { + "data": { + "text/plain": [ + "(116132, 226)" + ] + }, + "execution_count": 165, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(customerstemp.shape[0] - customerstemp.dropna().shape[0])\n", + "customerstemp_noNa = customerstemp.dropna()\n", + "customerstemp_noNa.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 166, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + }, + { + "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", + "
ALTERSKATEGORIE_GROBANREDE_KZFINANZ_MINIMALISTFINANZ_SPARERFINANZ_VORSORGERFINANZ_ANLEGERFINANZ_UNAUFFAELLIGERFINANZ_HAUSBAUERHEALTH_TYPRETOURTYP_BK_S...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
04.015151221.05.0...1201.03.03.01.00.05.05.01.02.01.0
24.025151442.05.0...433.02.03.03.01.03.02.03.05.03.0
43.013144523.05.0...513.02.04.02.01.03.03.03.05.01.0
53.015151233.03.0...1167.02.03.02.01.05.05.03.07.05.0
\n", + "

4 rows × 56 columns

\n", + "
" + ], + "text/plain": [ + " ALTERSKATEGORIE_GROB ANREDE_KZ FINANZ_MINIMALIST FINANZ_SPARER \\\n", + "0 4.0 1 5 1 \n", + "2 4.0 2 5 1 \n", + "4 3.0 1 3 1 \n", + "5 3.0 1 5 1 \n", + "\n", + " FINANZ_VORSORGER FINANZ_ANLEGER FINANZ_UNAUFFAELLIGER FINANZ_HAUSBAUER \\\n", + "0 5 1 2 2 \n", + "2 5 1 4 4 \n", + "4 4 4 5 2 \n", + "5 5 1 2 3 \n", + "\n", + " HEALTH_TYP RETOURTYP_BK_S ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 1.0 5.0 ... 1201.0 3.0 \n", + "2 2.0 5.0 ... 433.0 2.0 \n", + "4 3.0 5.0 ... 513.0 2.0 \n", + "5 3.0 3.0 ... 1167.0 2.0 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 3.0 1.0 0.0 5.0 5.0 1.0 \n", + "2 3.0 3.0 1.0 3.0 2.0 3.0 \n", + "4 4.0 2.0 1.0 3.0 3.0 3.0 \n", + "5 3.0 2.0 1.0 5.0 5.0 3.0 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 2.0 1.0 \n", + "2 5.0 3.0 \n", + "4 5.0 1.0 \n", + "5 7.0 5.0 \n", + "\n", + "[4 rows x 56 columns]" + ] + }, + "execution_count": 166, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp_noNa.drop(customers_cat_dummies.columns, axis=1, inplace=True)\n", + "customerstemp_noNa.drop(customers_mixed_dummies.columns, axis=1, inplace=True)\n", + "customerstemp_noNa.drop('GREEN_AVANTGARDE', axis=1, inplace=True)\n", + "customerstemp_noNa.head(4)" + ] + }, + { + "cell_type": "code", + "execution_count": 167, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "StandardScaler(copy=True, with_mean=True, with_std=True)" + ] + }, + "execution_count": 167, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "scalerCust = StandardScaler()\n", + "scalerCust.fit(customerstemp_noNa)" + ] + }, + { + "cell_type": "code", + "execution_count": 168, + "metadata": {}, + "outputs": [], + "source": [ + "customers_noNa_scaled = pd.DataFrame(scaler.transform(customerstemp_noNa), columns=customerstemp_noNa.columns)" + ] + }, + { + "cell_type": "code", + "execution_count": 169, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 169, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customers_noNa_scaled.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 170, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/opt/conda/lib/python3.6/site-packages/pandas/core/frame.py:3697: SettingWithCopyWarning: \n", + "A value is trying to be set on a copy of a slice from a DataFrame\n", + "\n", + "See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy\n", + " errors=errors)\n" + ] + } + ], + "source": [ + "customerstemp_noNa = customerstemp.dropna()\n", + "customerstemp_noNa.drop(customers_noNa_scaled.columns, axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 171, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 171, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp_noNa.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 172, + "metadata": {}, + "outputs": [], + "source": [ + "customerstemp_noNa_final = pd.merge(customerstemp_noNa.reset_index(), customers_noNa_scaled.reset_index(), right_index=True, left_index=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 173, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 173, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerstemp_noNa_final.isnull().values.any()" + ] + }, + { + "cell_type": "code", + "execution_count": 174, + "metadata": {}, + "outputs": [], + "source": [ + "customerstemp_noNa_final.drop(['index_x', 'index_y'], axis=1, inplace=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 175, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(116132, 226)\n" + ] + }, + { + "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", + "
GREEN_AVANTGARDECJT_GESAMTTYP_1.0CJT_GESAMTTYP_2.0CJT_GESAMTTYP_3.0CJT_GESAMTTYP_4.0CJT_GESAMTTYP_5.0CJT_GESAMTTYP_6.0CJT_GESAMTTYP_nanFINANZTYP_1FINANZTYP_2...KBA13_ANZAHL_PKWPLZ8_ANTG1PLZ8_ANTG2PLZ8_ANTG3PLZ8_ANTG4PLZ8_HHZPLZ8_GBZARBEITORTSGR_KLS9RELAT_AB
01000010001...1.7736260.7917000.181378-0.64373-0.9843451.4402751.483855-2.226515-1.478616-1.565428
11010000001...-0.536230-0.2310610.1813781.387790.381459-0.638548-1.209678-0.203820-0.171975-0.084556
20000001001...-0.295620-0.2310611.2707640.372030.381459-0.638548-0.311834-0.203820-0.171975-1.565428
31000100000...1.671367-0.2310610.1813780.372030.3814591.4402751.483855-0.2038200.6991191.396317
41010000001...2.0713810.791700-0.908009-0.64373-0.9843451.4402751.483855-1.215167-1.043069-0.824992
51010000000...-0.3918640.7917000.181378-0.643730.381459-0.638548-0.311834-0.203820-0.607522-0.084556
61001000001...1.4879020.7917000.181378-0.64373-0.9843451.4402751.483855-0.2038200.2635720.655880
71001000001...0.0352191.814461-0.908009-0.64373-0.984345-0.638548-0.311834-1.215167-0.171975-1.565428
80000010000...1.7826490.791700-1.997396-1.65949-0.9843450.4008631.483855-2.226515-1.914163-1.565428
90010000000...-0.091101-1.2538221.2707641.387790.3814591.440275-0.311834-0.2038201.1346661.396317
\n", + "

10 rows × 226 columns

\n", + "
" + ], + "text/plain": [ + " GREEN_AVANTGARDE CJT_GESAMTTYP_1.0 CJT_GESAMTTYP_2.0 CJT_GESAMTTYP_3.0 \\\n", + "0 1 0 0 0 \n", + "1 1 0 1 0 \n", + "2 0 0 0 0 \n", + "3 1 0 0 0 \n", + "4 1 0 1 0 \n", + "5 1 0 1 0 \n", + "6 1 0 0 1 \n", + "7 1 0 0 1 \n", + "8 0 0 0 0 \n", + "9 0 0 1 0 \n", + "\n", + " CJT_GESAMTTYP_4.0 CJT_GESAMTTYP_5.0 CJT_GESAMTTYP_6.0 CJT_GESAMTTYP_nan \\\n", + "0 0 1 0 0 \n", + "1 0 0 0 0 \n", + "2 0 0 1 0 \n", + "3 1 0 0 0 \n", + "4 0 0 0 0 \n", + "5 0 0 0 0 \n", + "6 0 0 0 0 \n", + "7 0 0 0 0 \n", + "8 0 1 0 0 \n", + "9 0 0 0 0 \n", + "\n", + " FINANZTYP_1 FINANZTYP_2 ... KBA13_ANZAHL_PKW PLZ8_ANTG1 \\\n", + "0 0 1 ... 1.773626 0.791700 \n", + "1 0 1 ... -0.536230 -0.231061 \n", + "2 0 1 ... -0.295620 -0.231061 \n", + "3 0 0 ... 1.671367 -0.231061 \n", + "4 0 1 ... 2.071381 0.791700 \n", + "5 0 0 ... -0.391864 0.791700 \n", + "6 0 1 ... 1.487902 0.791700 \n", + "7 0 1 ... 0.035219 1.814461 \n", + "8 0 0 ... 1.782649 0.791700 \n", + "9 0 0 ... -0.091101 -1.253822 \n", + "\n", + " PLZ8_ANTG2 PLZ8_ANTG3 PLZ8_ANTG4 PLZ8_HHZ PLZ8_GBZ ARBEIT \\\n", + "0 0.181378 -0.64373 -0.984345 1.440275 1.483855 -2.226515 \n", + "1 0.181378 1.38779 0.381459 -0.638548 -1.209678 -0.203820 \n", + "2 1.270764 0.37203 0.381459 -0.638548 -0.311834 -0.203820 \n", + "3 0.181378 0.37203 0.381459 1.440275 1.483855 -0.203820 \n", + "4 -0.908009 -0.64373 -0.984345 1.440275 1.483855 -1.215167 \n", + "5 0.181378 -0.64373 0.381459 -0.638548 -0.311834 -0.203820 \n", + "6 0.181378 -0.64373 -0.984345 1.440275 1.483855 -0.203820 \n", + "7 -0.908009 -0.64373 -0.984345 -0.638548 -0.311834 -1.215167 \n", + "8 -1.997396 -1.65949 -0.984345 0.400863 1.483855 -2.226515 \n", + "9 1.270764 1.38779 0.381459 1.440275 -0.311834 -0.203820 \n", + "\n", + " ORTSGR_KLS9 RELAT_AB \n", + "0 -1.478616 -1.565428 \n", + "1 -0.171975 -0.084556 \n", + "2 -0.171975 -1.565428 \n", + "3 0.699119 1.396317 \n", + "4 -1.043069 -0.824992 \n", + "5 -0.607522 -0.084556 \n", + "6 0.263572 0.655880 \n", + "7 -0.171975 -1.565428 \n", + "8 -1.914163 -1.565428 \n", + "9 1.134666 1.396317 \n", + "\n", + "[10 rows x 226 columns]" + ] + }, + "execution_count": 175, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(customerstemp_noNa_final.shape)\n", + "customerstemp_noNa_final.head(10)" + ] + }, + { + "cell_type": "code", + "execution_count": 176, + "metadata": {}, + "outputs": [], + "source": [ + "pca, df_pca = do_pca(30, customerstemp_noNa_final)" + ] + }, + { + "cell_type": "code", + "execution_count": 177, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(116132, 30)" + ] + }, + "execution_count": 177, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_pca.shape" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "Now we can apply kmeans on our fitted model from before!" + ] + }, + { + "cell_type": "code", + "execution_count": 178, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "KMeans(algorithm='auto', copy_x=True, init='k-means++', max_iter=300,\n", + " n_clusters=19, n_init=10, n_jobs=1, precompute_distances='auto',\n", + " random_state=None, tol=0.0001, verbose=0)" + ] + }, + "execution_count": 178, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cluster9" + ] + }, + { + "cell_type": "code", + "execution_count": 179, + "metadata": {}, + "outputs": [], + "source": [ + "resultCust = cluster9.transform(df_pca)" + ] + }, + { + "cell_type": "code", + "execution_count": 180, + "metadata": {}, + "outputs": [], + "source": [ + "customerClusters = cluster9.predict(df_pca)" + ] + }, + { + "cell_type": "code", + "execution_count": 181, + "metadata": {}, + "outputs": [], + "source": [ + "popClusters = cluster9.labels_" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "This plot shows us the number of points in each cluster. It is not very useful as we need to scale them **so they represent a percentage which we will do below**" + ] + }, + { + "cell_type": "code", + "execution_count": 182, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Cluster 18\n", + "dtype: int64\n" + ] + }, + { + "data": { + "text/plain": [ + "14 17464\n", + "15 13584\n", + "11 12668\n", + "2 9874\n", + "1 9647\n", + "4 8844\n", + "10 8623\n", + "13 8363\n", + "5 8040\n", + "16 6109\n", + "8 5274\n", + "6 2956\n", + "7 1510\n", + "9 1175\n", + "0 885\n", + "3 771\n", + "17 320\n", + "18 25\n", + "Name: Cluster, dtype: int64" + ] + }, + "execution_count": 182, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "testDf = pd.DataFrame(customerClusters, columns=['Cluster'])\n", + "print(testDf.nunique())\n", + "testDf[testDf['Cluster'] == 18]\n", + "pd.value_counts(testDf['Cluster'])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 183, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 183, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "f, axes = plt.subplots(1, 2, figsize=(25, 10))\n", + "sns.countplot(x=customerClusters, ax=axes[0])\n", + "sns.countplot(popClusters, ax=axes[1])" + ] + }, + { + "cell_type": "code", + "execution_count": 184, + "metadata": {}, + "outputs": [], + "source": [ + "index_cust=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18]" + ] + }, + { + "cell_type": "code", + "execution_count": 185, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "116132\n", + "116132\n" + ] + } + ], + "source": [ + "print(len(customerClusters))\n", + "print(len(df_pca))" + ] + }, + { + "cell_type": "code", + "execution_count": 186, + "metadata": {}, + "outputs": [], + "source": [ + "def findClusterPerc(clusterSeries, df_pca, index=False):\n", + " testDf = pd.DataFrame(clusterSeries, columns=['Cluster'])\n", + " if index is False:\n", + " return pd.DataFrame((pd.DataFrame(pd.value_counts((testDf['Cluster'].values))).values/len(df_pca)), columns=['Cluster'])\n", + " else:\n", + " return pd.DataFrame((pd.DataFrame(pd.value_counts((testDf['Cluster'].values))).values/len(df_pca)), columns=['Cluster'], index=index)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 187, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "customerClustersPerc = findClusterPerc(customerClusters, df_pca, index=index_cust)" + ] + }, + { + "cell_type": "code", + "execution_count": 188, + "metadata": {}, + "outputs": [], + "source": [ + "popClustersPerc = findClusterPerc(popClusters, df_pca_orig)" + ] + }, + { + "cell_type": "code", + "execution_count": 189, + "metadata": {}, + "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", + "
Cluster
00.150381
10.116970
20.109083
30.085024
40.083069
50.076155
60.074252
70.072013
80.069232
90.052604
100.045414
110.025454
130.013002
140.010118
150.007621
160.006639
170.002755
180.000215
\n", + "
" + ], + "text/plain": [ + " Cluster\n", + "0 0.150381\n", + "1 0.116970\n", + "2 0.109083\n", + "3 0.085024\n", + "4 0.083069\n", + "5 0.076155\n", + "6 0.074252\n", + "7 0.072013\n", + "8 0.069232\n", + "9 0.052604\n", + "10 0.045414\n", + "11 0.025454\n", + "13 0.013002\n", + "14 0.010118\n", + "15 0.007621\n", + "16 0.006639\n", + "17 0.002755\n", + "18 0.000215" + ] + }, + "execution_count": 189, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "customerClustersPerc\n", + "# popClustersPerc" + ] + }, + { + "cell_type": "code", + "execution_count": 190, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 190, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "f, axes = plt.subplots(1, 2, figsize=(25, 10))\n", + "sns.barplot(y=customerClustersPerc['Cluster'], x=customerClustersPerc.index, ax=axes[0])\n", + "sns.barplot(y=popClustersPerc['Cluster'], x=popClustersPerc.index, ax=axes[1])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Answer\n", + "\n", + "We can see that in the left graph which represents the customer data, there are relatively more people towards the first clusters. On the right which represents our population data, it is more evenly spread out between the clusters." + ] + }, + { + "cell_type": "code", + "execution_count": 191, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "632125\n", + "891187\n" + ] + } + ], + "source": [ + "print(pd.DataFrame(df_pca_orig).index.max())\n", + "print(anomaliesU_compare.index.max())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Step 3.3: Compare Customer Data to Demographics Data\n", + "\n", + "At this point, you have clustered data based on demographics of the general population of Germany, and seen how the customer data for a mail-order sales company maps onto those demographic clusters. In this final substep, you will compare the two cluster distributions to see where the strongest customer base for the company is.\n", + "\n", + "Consider the proportion of persons in each cluster for the general population, and the proportions for the customers. If we think the company's customer base to be universal, then the cluster assignment proportions should be fairly similar between the two. If there are only particular segments of the population that are interested in the company's products, then we should see a mismatch from one to the other. If there is a higher proportion of persons in a cluster for the customer data compared to the general population (e.g. 5% of persons are assigned to a cluster for the general population, but 15% of the customer data is closest to that cluster's centroid) then that suggests the people in that cluster to be a target audience for the company. On the other hand, the proportion of the data in a cluster being larger in the general population than the customer data (e.g. only 2% of customers closest to a population centroid that captures 6% of the data) suggests that group of persons to be outside of the target demographics.\n", + "\n", + "Take a look at the following points in this step:\n", + "\n", + "- Compute the proportion of data points in each cluster for the general population and the customer data. Visualizations will be useful here: both for the individual dataset proportions, but also to visualize the ratios in cluster representation between groups. Seaborn's [`countplot()`](https://seaborn.pydata.org/generated/seaborn.countplot.html) or [`barplot()`](https://seaborn.pydata.org/generated/seaborn.barplot.html) function could be handy.\n", + " - Recall the analysis you performed in step 1.1.3 of the project, where you separated out certain data points from the dataset if they had more than a specified threshold of missing values. If you found that this group was qualitatively different from the main bulk of the data, you should treat this as an additional data cluster in this analysis. Make sure that you account for the number of data points in this subset, for both the general population and customer datasets, when making your computations!\n", + "- Which cluster or clusters are overrepresented in the customer dataset compared to the general population? Select at least one such cluster and infer what kind of people might be represented by that cluster. Use the principal component interpretations from step 2.3 or look at additional components to help you make this inference. Alternatively, you can use the `.inverse_transform()` method of the PCA and StandardScaler objects to transform centroids back to the original data space and interpret the retrieved values directly.\n", + "- Perform a similar investigation for the underrepresented clusters. Which cluster or clusters are underrepresented in the customer dataset compared to the general population, and what kinds of people are typified by these clusters?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Compare the proportion of data in each cluster for the customer data to the\n", + "# proportion of data in each cluster for the general population.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# What kinds of people are part of a cluster that is overrepresented in the\n", + "# customer data compared to the general population?\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# What kinds of people are part of a cluster that is underrepresented in the\n", + "# customer data compared to the general population?\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Discussion 3.3: Compare Customer Data to Demographics Data\n", + "\n", + "(Double-click this cell and replace this text with your own text, reporting findings and conclusions from the clustering analysis. Can we describe segments of the population that are relatively popular with the mail-order company, or relatively unpopular with the company?)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "> Congratulations on making it this far in the project! Before you finish, make sure to check through the entire notebook from top to bottom to make sure that your analysis follows a logical flow and all of your findings are documented in **Discussion** cells. Once you've checked over all of your work, you should export the notebook as an HTML document to submit for evaluation. You can do this from the menu, navigating to **File -> Download as -> HTML (.html)**. You will submit both that document and this notebook for your project submission." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.7.3" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/python/Unsupervised Learning/Project/cluster0 b/python/Unsupervised Learning/Project/cluster0 new file mode 100644 index 0000000..5d44752 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster0 differ diff --git a/python/Unsupervised Learning/Project/cluster1 b/python/Unsupervised Learning/Project/cluster1 new file mode 100644 index 0000000..39e3546 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster1 differ diff --git a/python/Unsupervised Learning/Project/cluster2 b/python/Unsupervised Learning/Project/cluster2 new file mode 100644 index 0000000..aac98c6 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster2 differ diff --git a/python/Unsupervised Learning/Project/cluster3 b/python/Unsupervised Learning/Project/cluster3 new file mode 100644 index 0000000..790cae5 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster3 differ diff --git a/python/Unsupervised Learning/Project/cluster4 b/python/Unsupervised Learning/Project/cluster4 new file mode 100644 index 0000000..56c7a60 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster4 differ diff --git a/python/Unsupervised Learning/Project/cluster5 b/python/Unsupervised Learning/Project/cluster5 new file mode 100644 index 0000000..20ef5cd Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster5 differ diff --git a/python/Unsupervised Learning/Project/cluster6 b/python/Unsupervised Learning/Project/cluster6 new file mode 100644 index 0000000..2f2242a Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster6 differ diff --git a/python/Unsupervised Learning/Project/cluster7 b/python/Unsupervised Learning/Project/cluster7 new file mode 100644 index 0000000..7e3723f Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster7 differ diff --git a/python/Unsupervised Learning/Project/cluster8 b/python/Unsupervised Learning/Project/cluster8 new file mode 100644 index 0000000..091bfc2 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster8 differ diff --git a/python/Unsupervised Learning/Project/cluster9 b/python/Unsupervised Learning/Project/cluster9 new file mode 100644 index 0000000..5d6fe48 Binary files /dev/null and b/python/Unsupervised Learning/Project/cluster9 differ