{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Retail Product Recommender Engine\n", "**By [Czarina Luna](https://czarinaluna.com)**\n", "\n", "### Contents\n", "* [I. Overview](#I.-Overview)\n", "* [II. Business Problem](#II.-Business-Problem)\n", "* [III. Data Understanding](#III.-Data-Understanding)\n", "* [IV. Recommendation Systems](#IV.-Recommendation-Systems)\n", " * [Popularity Recommendations](#Popularity-Recommendations)\n", " * [Content-Based Recommenders](#Content-Based-Recommenders)\n", " * [Collaborative Filtering Systems](#Collaborative-Filtering-Systems)\n", "* [V. Results and Recommendations](#V.-Results-and-Recommendations)\n", "* [VI. Further Research](#VI.-Further-Research)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## I. Overview\n", "\n", "A recommender engine is developed to increase revenue of clothing rental companies by predicting user preferences and recommending products for users to rent. I apply different algorithms to create personalized recommendations using content-based and collaborative filtering systems. The algorithm that attained the lowest mean absolute error of 0.5 is the Singular Value Decomposition." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## II. Business Problem\n", "\n", "The clothing rental industry grows as more companies follow suit of the retailer Rent the Runway, which pioneered online services and subscriptions for designer rentals. To help grow the revenue of clothing rental companies, I develop recommendation systems that predict a set of user preferences and recommend the top preferences for the user. Doing so will conveniently expose users to relevant products to rent that tailor to their preferences. Using data from Rent the Runway, I conduct an analysis of the product reviews, model the data to predict user ratings, and provide recommendations accordingly." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## III. Data Understanding\n", "\n", "The Rent the Runway reviews ([data source](https://cseweb.ucsd.edu/~jmcauley/datasets.html#clothing_fit)) contain 200,000 ratings of 6,000 unique items rented between 2010 and 2018 by over 100,000 unique users.\n", "\n", "A quick look at the data structure:" ] }, { "cell_type": "code", "execution_count": 1, "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", "
fituser_idbust sizeitem_idweightratingrented forreview_textbody typereview_summarycategoryheightsizeagereview_date
0fit42027234d2260466137lbs10.0vacationAn adorable romper! Belt and zipper were a lit...hourglassSo many compliments!romper5' 8\"1428.0April 20, 2016
1fit27355134b153475132lbs10.0otherI rented this dress for a photo shoot. The the...straight & narrowI felt so glamourous!!!gown5' 6\"1236.0June 18, 2013
\n", "
" ], "text/plain": [ " fit user_id bust size item_id weight rating rented for \\\n", "0 fit 420272 34d 2260466 137lbs 10.0 vacation \n", "1 fit 273551 34b 153475 132lbs 10.0 other \n", "\n", " review_text body type \\\n", "0 An adorable romper! Belt and zipper were a lit... hourglass \n", "1 I rented this dress for a photo shoot. The the... straight & narrow \n", "\n", " review_summary category height size age review_date \n", "0 So many compliments! romper 5' 8\" 14 28.0 April 20, 2016 \n", "1 I felt so glamourous!!! gown 5' 6\" 12 36.0 June 18, 2013 " ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "\n", "raw_data = pd.read_csv('data/data.csv')\n", "raw_data.head(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Missing values:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "fit 0\n", "user_id 0\n", "bust size 18411\n", "item_id 0\n", "weight 29982\n", "rating 82\n", "rented for 10\n", "review_text 62\n", "body type 14637\n", "review_summary 345\n", "category 0\n", "height 677\n", "size 0\n", "age 960\n", "review_date 0\n", "dtype: int64" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "raw_data.isna().sum()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Target variable:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "10.0 124537\n", "8.0 53391\n", "6.0 10697\n", "4.0 2791\n", "2.0 1046\n", "Name: rating, dtype: int64" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "raw_data['rating'].value_counts()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Data Cleaning** \n", "\n", "To perform the pre-processing steps, I define the function `preprocess_data`:\n", "- Drop missing values for `rating` and change the scale for from 2-10 to 1-5.\n", "- Remove the units of measurement for `weight` and `height` to only keep the numerical values.\n", "- Impute missing values with the median for `age` and a few other features and with mode for `rented_for`.\n", "- Impute missing value for `bust_size` with the median value by `body_type` and vice versa.\n", "- Count the number of words in `text_summary` and `text_review` together to create new feature `length`.\n", "- Create new features `review_month`, `review_season`, and `review_year` based on `review_date`." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "def convert_height(x):\n", " '''\n", " Converts height from string format as feet and inches to integer in inches.\n", " '''\n", " height = [int(i) for i in x.replace('\\'', '').replace('\"', '').split()]\n", " return height[0]*12 + height[1]\n", "\n", "def preprocess_data(df):\n", " '''\n", " Cleans the dataframe using imputation and feature engineering.\n", " '''\n", " df.columns = df.columns.str.replace(' ', '_')\n", " df = df.dropna(subset=['rating'])\n", " \n", " df['weight'] = df['weight'].str.replace('lbs', '')\n", " df['rating'] = df['rating']/2\n", " df['height'] = df['height'].apply(lambda x: convert_height(x) if pd.notnull(x) else x)\n", " \n", " to_num = ['rating', 'weight', 'age']\n", " df[to_num] = df[to_num].apply(pd.to_numeric, errors='coerce')\n", " \n", " for col in ['height', 'age']:\n", " df[col] = df[col].fillna(df[col].median())\n", " \n", " weight_map = dict(df.groupby('height')['weight'].median())\n", " df['weight'] = df['weight'].fillna(df['height'].map(weight_map))\n", " \n", " for col in ['review_text', 'review_summary']:\n", " df[col] = df[col].replace('-', np.nan)\n", " df['review'] = df['review_summary'] + ' ' + df['review_text']\n", " df['review'] = df['review'].fillna('')\n", " df['review_length'] = df['review_text'].fillna('').apply(lambda x: len(x.split()))\n", " \n", " age_limit = (df['age'] > 60) | (df['age'] < 13)\n", " df['age'] = np.where(age_limit==True, df['age'].median(), df['age'])\n", " \n", " for col in ['bust_size', 'body_type']:\n", " to_map = dict(df.groupby('size')[col].last())\n", " df[col] = df[col].fillna(df['size'].map(to_map))\n", " \n", " df['rented_for'] = df['rented_for'].fillna(df['rented_for'].value_counts().index[0])\n", " \n", " df['review_date'] = pd.to_datetime(df['review_date'])\n", " df['review_month'] = pd.DatetimeIndex(df['review_date']).month\n", " df['review_season'] = pd.cut(df['review_month'].replace(12, 0), [0, 3, 6, 9, 11], include_lowest=True, labels=['Winter', 'Spring', 'Summer', 'Fall'])\n", " df['review_year'] = pd.DatetimeIndex(df['review_date']).year\n", " return df\n", "\n", "import warnings\n", "warnings.filterwarnings('ignore')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "# Create new dataframe for processed data\n", "data = preprocess_data(raw_data)" ] }, { "cell_type": "code", "execution_count": 6, "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", "
countmeanstdmin25%50%75%max
weight192462.00136.9220.4350.00125.00135.00145.00300.00
rating192462.004.550.721.004.005.005.005.00
height192462.0065.312.6654.0063.0065.0067.0078.00
size192462.0012.258.500.008.0012.0016.0058.00
age192462.0033.607.3914.0029.0032.0037.0060.00
review_length192462.0058.4043.040.0027.0050.0079.00398.00
review_month192462.006.853.381.004.007.0010.0012.00
review_year192462.002015.691.332010.002015.002016.002017.002018.00
\n", "
" ], "text/plain": [ " count mean std min 25% 50% 75% max\n", "weight 192462.00 136.92 20.43 50.00 125.00 135.00 145.00 300.00\n", "rating 192462.00 4.55 0.72 1.00 4.00 5.00 5.00 5.00\n", "height 192462.00 65.31 2.66 54.00 63.00 65.00 67.00 78.00\n", "size 192462.00 12.25 8.50 0.00 8.00 12.00 16.00 58.00\n", "age 192462.00 33.60 7.39 14.00 29.00 32.00 37.00 60.00\n", "review_length 192462.00 58.40 43.04 0.00 27.00 50.00 79.00 398.00\n", "review_month 192462.00 6.85 3.38 1.00 4.00 7.00 10.00 12.00\n", "review_year 192462.00 2015.69 1.33 2010.00 2015.00 2016.00 2017.00 2018.00" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.options.display.float_format = '{:.2f}'.format\n", "\n", "# Summary statistics for numerical features\n", "data.drop(columns=['user_id', 'item_id']).describe().T" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Data Visualization\n", "\n", "Let's explore and visualize the processed data!\n", "***\n", "\n", "**User Data** I create a separate table for user information by grouping the data by `user_id` and adding new features:\n", "- `rating_count` is the total number of items the user rated and reviewed.\n", "- `rating_average` is the average rating of the items reviewed by the user.\n", "- `rented_for_top` is the user's most common reason for renting an item.\n", "- `category_top` is the most common clothing category among the items reviewed by the user.\n", "- `review_length_average` is the average length of text review posted by the user.\n", "- `review_month_top` and `review_season_top` are the most common month and season the user posted the review.\n", "- `rented_for_all` is a list of all the user's reasons for renting the items.\n", "- `category_for_all` is a list of all the clothing categories of the items reviewed by the user." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "def create_user_data(df):\n", " '''\n", " Groups the data by user and returns dataframe containing user information. \n", " '''\n", " user_df = pd.DataFrame(df.groupby('user_id').count().reset_index()['user_id'])\n", " \n", " for col in df.columns:\n", " if col in ['bust_size', 'weight']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('user_id')[col].first()\n", " user_df = user_df.merge(feature, on='user_id')\n", " if col == 'item_id':\n", " feature = df.groupby(df['user_id']).count()[col]\n", " user_df = user_df.merge(feature, on='user_id')\n", " if col == 'rating':\n", " feature = df.groupby(df['user_id']).mean()[col]\n", " user_df = user_df.merge(feature, on='user_id')\n", " if col in ['body_type', 'height', 'size', 'age']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('user_id')[col].first()\n", " user_df = user_df.merge(feature, on='user_id')\n", " if col == 'review_length':\n", " feature = df.groupby(df['user_id']).mean()[col]\n", " user_df = user_df.merge(feature, on='user_id')\n", " if col in ['review_month', 'review_season']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('user_id')[col].agg(lambda x: x.value_counts().index[0])\n", " user_df = user_df.merge(feature, on='user_id')\n", " if col in ['rented_for', 'category']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('user_id')[col].agg(pd.Series.mode).apply(lambda x: x[0] if type(x)==np.ndarray else x)\n", " user_df = user_df.merge(feature, on='user_id')\n", " else:\n", " continue\n", " \n", " for col in ['rented_for', 'category']:\n", " feature = df.groupby('user_id')[col].apply(set).apply(lambda x: list(x))\n", " user_df = user_df.merge(feature, on='user_id')\n", " \n", " user_df.columns = ['user_id', 'bust_size', 'rating_count', 'weight', 'rating_average', 'rented_for_top', \n", " 'body_type', 'category_top', 'height', 'size', 'age', 'review_length_average', \n", " 'review_month_top', 'review_season_top', 'rented_for_all', 'category_all']\n", " \n", " return user_df" ] }, { "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", "
user_idbust_sizerating_countweightrating_averagerented_for_topbody_typecategory_topheightsizeagereview_length_averagereview_month_topreview_season_toprented_for_allcategory_all
0932c2145.005.00formal affairpeardress66.00832.00121.503Winter[formal affair, wedding][dress, gown]
12534ddd/e1130.005.00partyfull bustlegging67.00840.0014.0012Winter[party][legging]
\n", "
" ], "text/plain": [ " user_id bust_size rating_count weight rating_average rented_for_top \\\n", "0 9 32c 2 145.00 5.00 formal affair \n", "1 25 34ddd/e 1 130.00 5.00 party \n", "\n", " body_type category_top height size age review_length_average \\\n", "0 pear dress 66.00 8 32.00 121.50 \n", "1 full bust legging 67.00 8 40.00 14.00 \n", "\n", " review_month_top review_season_top rented_for_all category_all \n", "0 3 Winter [formal affair, wedding] [dress, gown] \n", "1 12 Winter [party] [legging] " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Create new dataframe for user data\n", "user_data = create_user_data(data)\n", "user_data.head(2)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABJoAAAQPCAYAAABYwoF2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAACl9klEQVR4nOzdd3RUdf7/8Ve6kAQxVgTCLiUYSqiCKERAv6IsXVqCQZAmCiwgSG8iIF16R9kAAQQUWBBXVEAQ+a1hQYkBFZcmRUgoSSSTdn9/eDJL6JDPnWTg+TiHc5g7d97znjvDO5MXt3hYlmUJAAAAAAAAyCXPvG4AAAAAAAAAdweCJgAAAAAAABhB0AQAAAAAAAAjCJoAAAAAAABgBEETAAAAAAAAjCBoAgAAcIF75UK/98rrBAAA10bQBAAAbktUVJS6det2zfvi4+NVtmxZ7d6928Vd5ezh7bffVt26dRUWFqYGDRpo/PjxSkxMzJN+Ll68qLfeektxcXHXXWfGjBmqUqWK8ecuW7Zsjj8VKlRQ/fr1NXHiRDkcDqPPderUKXXq1Ennzp274XpnzpzRqFGjVK9ePVWoUEFPP/20evXqpfj4+Kt6X7RokdEeAQCA/bzzugEAAABT1q1bpyFDhqhKlSrq27evHnnkER06dEjz58/Xl19+qWXLlumhhx5yaU/x8fH65z//qQ4dOrj0ebNFRUWpUaNGkiSHw6GDBw/q/fffV1JSkt555x1jz/PNN99ox44dN1wnJSVFkZGRKlCggP7+97/r8ccf19mzZ7V06VK1bdtWy5YtU4UKFSRJK1eu1OOPP26sPwAA4BoETQAA4K7w66+/atiwYXrxxRc1ceJEeXh4SJKeeuop1alTR02bNtWUKVM0duzYPO7UtYoUKaLKlSs7b9esWVMXL17U3LlzNWzYMPn4+Lisl3/96186duyYvv76az388MPO5fXr19dLL72kBQsWaNq0aZKUo2cAAOA+OHQOAADYJjMzUxMmTFDdunVVoUIFNWzYUDExMTnWOXLkiN544w1VqVJF1atXV//+/XMc5jZw4EC98cYbeuutt1S1alX16dPnms+1bNkyZWVlaeDAgc6QKVtwcLD69eun0NBQ57KUlBSNHz9e9evXV1hYmFq2bJljj5zdu3erbNmy+uGHH3LUql69umbMmCFJWrt2rWrWrKldu3apadOmztf4xRdfOGu0b99ektSyZUsNHDjwhtvrk08+Ub169VSpUiV169ZNR44ckSQdPHhQZcuW1ebNm3Osv2HDBlWoUOGmh6tdKTAwMMftax26d+VhkH/88YeGDBmi2rVrKywsTM2bN9e//vUv53YYNGiQJKlWrVrO7XOlhIQESVJWVlaO5ffdd58GDhyo559/3rns8kPn6tevf9VhgGXLllX9+vWd69/scwQAAFyDoAkAANhm0aJFWrNmjXr37q1FixapTp06GjlypL7++mtJ0tmzZxUZGakTJ05owoQJGjVqlPbu3atOnTopLS3NWWfbtm1yOByaNWuW2rRpc83n2rFjh8qXL3/dQ+PatWunqKgoSX8GHZ07d9batWvVtWtXzZgxQ48//ri6du3q7O1WpaSkaPDgwWrXrp3mzZunBx54QH369NH58+dVvnx5DR8+XJI0btw4vfHGG9etc+nSJU2aNEm9evXShAkTdPjwYb322mtKT09X2bJlFRoaqo0bN+Z4zIYNG/Tss8/qgQceuG7drKwsZWRkKCMjQ6mpqdq3b5+io6PVsmXL29qbafz48fr22281ZMgQzZs3T6VKldLf//53HTp0SHXr1lX37t0lSQsXLlSrVq2uWaN27dry9PRUu3bttHDhQh04cMAZOjVo0ECNGze+5uNmzpyplStXOv+MHDlSktS8eXNJt/45AgAA9uPQOQAAYJvvvvtOFSpUULNmzST9edjWfffdpwIFCkiSlixZIofDocWLFysoKEiSnCfw3rRpk/NxGRkZeuedd5zrXMvp06dVrly5W+pr69at2rNnjxYuXKg6depIkp599lm1adNGU6dOdS67Fenp6erfv78aNmwoSXrwwQfVtGlT7d69Ww0aNFDp0qUlSWXKlFFwcPB161iWpYkTJ6pWrVqSpJIlS6px48bauHGjmjVrpmbNmmny5MlKSkpSYGCgEhMTtXPnTk2dOvWG/U2aNEmTJk3KsSw4OFg9evS45dco/flePvPMM3rppZckSdWqVdNDDz2kjIwMBQUFOV9b+fLlr/s+PfHEE5o0aZJGjRqliRMnauLEibr//vtVu3ZtdejQQWFhYdd83OXv67lz59S3b1/Vrl1bb775pqRb/xwBAAD7sUcTAAAwLvvQtSpVqmjHjh2KiorSkiVLdOzYMfXp00fVq1eX9OehZZUrV1ah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VqyYVq1aJUn661//qqVLl161TuvWrdW6descywoUKKDp06dftW7lypWd9QAAAAAAAJD/uOTQOQAAAAAAANz9CJoAAAAAAABgBEETAAAAAAAAjCBoAgAAAAAAgBEETQAAAAAAADCCoAkAAAAAAABGEDQBAAAAAADACIImAAAAAAAAGEHQBAAAAAAAACMImgAAAAAAAGAEQRMAAAAAAACMIGgCAAAA8qF0R1q+rAUAwI1453UDAAAAAK7m4+erN0KbGKk1O369kToAANwMezQBAAAAAADACIImAAAAAAAAGEHQBAAAAAAAACMImgAAAAAAAGAEQRMAAAAAAACMIGgCAAAAAACAEQRNAAAAAAAAMIKgCQAAAAAAAEYQNAEAAAAAAMAIgiYAAAAAAAAYQdAEAAAAAAAAIwiaAAAAAAAAYARBEwAAAAAAAIwgaAIAAAAAAIARBE0AAAAAAAAwgqAJAAAAAAAARhA0AQAAAAAAwAiCJgAAAAAAABhB0AQAAAAAAAAjCJoAAAAAAABgBEETAAAAAAAAjCBoAgAAAAAAgBEETQAAAAAAADCCoAkAAAAAAABGEDQBAAAAAADACIImAAAAAAAAGEHQBAAAAAAAACMImgAAAAAAAGDETYOmjz76KMftf/zjH7Y1AwAAAAAAAPflfb07/vnPf+rLL7/U7t279e2330qSMjMz9fPPP6t9+/YuaxAAAAAAAADu4bpBU506dfTwww/r/PnzatOmjSTJ09NTxYsXd1lzAAAAAAAAcB/XDZruv/9+1axZUzVr1lRCQoIcDoekP/dqAgAAAAAAAK503aAp26hRo7Rt2zY98sgjsixLHh4eWrFihSt6AwAAAAAAgBu5adC0b98+bdmyRZ6eXKAOAAAAAAAA13fT9KhEiRLOw+YAAAAAAACA67npHk0nT55UvXr1VKJECUni0DkAAAAAAABc002DpsmTJ7uiDwAAAAAAALi5mwZNH3/88VXLevTocdtPlJ6eroEDB+q3336Tp6enRo8eLW9vbw0cOFAeHh4qU6aMRowYIU9PT61atUorVqyQt7e3unfvrnr16ik1NVX9+/dXQkKC/P39NX78eAUFBd12HwAAAAAAALDHTYOmhx56SJJkWZZ+/PFHZWVl3dETbdu2TRkZGVqxYoV27typ999/X+np6erdu7dq1qyp4cOH64svvlDlypUVHR2tNWvWyOFwKDIyUs8884xiYmIUEhKinj17auPGjZo9e7aGDh16R70AAAAAAADAvJsGTW3bts1xu3Pnznf0RH/961+VmZmprKwsJScny9vbW3v37lWNGjUkSeHh4dq5c6c8PT1VpUoV+fr6ytfXV8HBwTpw4IBiY2Odzx0eHq7Zs2ffUR8AAAAAAACwx02Dpv/+97/Ov585c0YnT568oycqWLCgfvvtN7300ks6d+6c5s6dq3//+9/y8PCQJPn7+yspKUnJyckKDAx0Ps7f31/Jyck5lmevezMOh0Px8fF31C8AwB6hoaFG61055+2sb3fvAHA5Zg4AwB3dNGgaPny48+9+fn56++237+iJPvzwQ9WuXVtvvfWWTp48qVdffVXp6enO+1NSUlSoUCEFBAQoJSUlx/LAwMAcy7PXvRk/Pz/jP6ABAPmL3XPezvr8jALgSswcAIApN/rPi5sGTdHR0Tp37pyOHTumYsWK3fEJuAsVKiQfHx9J0v3336+MjAyVK1dOu3fvVs2aNbV9+3Y99dRTCgsL0/vvvy+Hw6G0tDQdOnRIISEhqlq1qrZt26awsDBt375d1apVu6M+AAAAAAAAYI+bBk2ffvqp3n//fZUqVUo///yzevTooaZNm972E3Xo0EGDBw9WZGSk0tPT1adPH1WoUEHDhg3TlClTVLJkSTVo0EBeXl6KiopSZGSkLMtSnz595Ofnp4iICA0YMEARERHy8fHR5MmT7+gFAwAAAAAAwB43DZo+/PBDrV271nmupFdfffWOgiZ/f39NmzbtquVLly69alnr1q3VunXrHMsKFCig6dOn3/bzAgAAAAAAwDU8b7aCh4eH/P39JUkBAQHy8/OzvSkAAAAAAAC4n5vu0RQcHKz33ntP1atX13fffafg4GBX9AUAAAAAAAA3c9M9msaOHavixYvrm2++UfHixTV69GhX9AUAAADke2mOtHxZCwCAvHLDPZp27NihZ555Ru3atdOBAwf0+++/O68cBwAAANzrfP181b50QyO1/vHLJiN1AADIS9fdo2n58uWaOXOmUlJSnMtmzZqllStXuqQxAAAAAAAAuJfrBk0ff/yxlixZooCAAEnSE088ocWLF2vVqlUuaw4AAAAAAADu47pB03333XfVFeb8/f2dV6ADAAAAAAAALnfdoMnHx0eJiYk5liUmJiozM9P2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I8y0q7nzdzRJknWPa968uWVZlvX+++9bO3bssCzLsl566SUjtRs0aGBZlmW9++671r59+6wLFy5YjRs3NlLbsv7X++WaNWtmrH6rVq2sbdu2OW9/8803VkREhLH6LVq0uGrZtV7TnahXr55Vv359q0KFClb9+vWt+vXrG6mbrW3bttYff/zhvJ2ammq1bt3aWP3sbdO0aVPnskaNGhmrP3bsWGO1rnStz2D2+3r567lTpj4jV3I4HNb06dOtgQMHWlu3bs1x3zvvvOOS+t9//32unsPOeWZZzLQbsXOeWRYz7UbsnGeW5b4z7VqGDh3qstq5nWeWxUy7EXf+jmZZ7j3T3Pk7mmW550xLS0uz5s+fb50+fdq6dOmSNXbsWKt169bW6NGjreTkZJfUz+8zzZ3nmWW590xz53lmWfbNtHt+jyZvb29duHBBJUqU0Pfff69nnnnGyDGJklS4cGFJUokSJfTzzz8rLCzshrvu3arsY5ErVKigRYsWqW3btvL09NTatWv11FNP5bp+tiFDhujNN9+Ut7e3PDw85OHhoenTpxurf+nSJf36668qWbKkJOngwYPO3WxzKzo6WpZlqVu3bpo/f76RmpdLSEiQr6+v87aHh4fR49tDQkK0bNkyZWZm6tdff9WHH36oJ554Itd109LSNG/ePF28eFHbtm3Ts88+67xv9OjRGjZsWK6fIyMjQz/99JNCQkIkST/99JOysrLkcDhydWK/7M995cqV9eGHH6pRo0by9v7fCMv+93anRo0apdTUVIWGhmro0KGKiopS165dJf35Pwm5dSv1K1asmKvnsHOeSXfXTJMkT09PzZgxw0htO+eZxEy7kct3LR82bJhGjx5tpG42d51p77777lXLvvjiC/n5+UlSrnaJv5XauZ1nEjPtRuycZxIz7Ubsmmfp6en68MMP1alTJ6Wmpmrq1Knau3evKlasqD59+sjf399A9+450wYPHiyHw6GXX35ZEyZM0IULF/TGG29oy5YtGj58uCZPnnzHtW+1fn6fae48zyT3nmnuPM8k+2baPR80tW7dWt26ddPcuXPVrFkzff75584PYG6VKFFCY8aMUfPmzTVkyBD98ccfRs6gf+XxwxMnTnTe9vDw0IABA3L9HJJUqVIlbd26VT/99JO8vLz017/+NceHPLd69+6tNm3aqGzZsrIsS7/88osm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WlqavL29lZaWZuSXbbu3/d0w0+yaZ+3atdMjjzySI+xYuXKlM+zILXc+z1FiYqK+/vprlS5dWm+//bY6deqkX375RR999JHq1q2b65ljd/3t27dfM0xp1KiRWrRokava2eyaZ3b3blmWvLy8nH8KFCgg6c/zHZk4x5Sd/d8N80yyb6bds0GTZG+YIv159v9KlSopNDRUCQkJ6t69u7EvSHb2XrFiRQ0cONC510uFChU0fPhwdenSJde1s9nV/wMPPCBJ2r9/v0aNGuVc3r59eyPD0O76//73v6+5PHsA5JbdYYrd/6bsrD9s2DAFBwfr+PHjioqKUo8ePfTyyy9r/fr1eueddzRv3rx8W9/OIOVyds00V/TfpUsXhYWFqXPnzho0aJCxz6TdvTPTrs/usMPu99bu+nbOHLvnpd1hSja7Zpqd/b/88stq27atOnbsqCeffFLdu3d37vWS33uX3Hum2f0dze6ww+731s76l8+c9u3b2/odzY76docpkn3zzO7en3zySXXo0EGXLl1SWFiYBg8erJdfflmbNm1SuXLlcl3fzv7deZ5J9s+0ezZockWYYtclLO3u3c69XiTXbHu7L8trV/133nnHWf/EiRMqXbq0vL299dNPP6l06dK5PmzRzl8O7H5f7a5/9OhRzZo1Sw6HQ88++6xatWolSWrWrJmWLFmS7+vbFaRczs7L8rqif7v2fHFF78y0q9kddkj2v7d21rdz5tg9z+wOU7LZNdPs7N/uvV5cte3dcaa58juaHWGH3e+tnfXd/Tua3WGKZN88s7v34cOHa926dcrKylLz5s01c+ZMjRo1ShUrVtSwYcPyff+Se84zyf6Zds+eDDw1NdWaOnWqtXPnTuey8+fPW19++aXVoEEDI8/x0UcfWW3atLHOnTtnPfvss1bz5s2t119/Pdd17e49ISHBGjZsmDVlyhTryJEj1nPPPWeVK1fOatq0qXX8+PFc13fFtv/ss8+s6tWrW+3atbMiIyOtGjVqWNu3bzdS2xX1//73v1uxsbHO2/v377d69OiR67rZJwNPTU21atasmeO+3J7I1e731e76f/vb35wnq/z888+dy8+dO3fVSdTzY/1sp06dsiIjI62qVasaq5ntWjOte/fuRp/Djv4TEhKs4cOHO2da/fr1rdDQUGMzLZud2/7ymRMREWHrTLOjvh0zzc55diU731u76ts5c1wxz/71r39Zb7zxhtWwYUPrhRdesBo3bmwtXbrUyJV2stk50+zq//LvaIcPH7aee+454/PMFdvenWeaO35Hy2b3e2tXfXf/jpaZmWmtXbvWWr16tZWZmWlNmzbNatiwoTVgwADr3Llzua5vWfbNM7t7v9bvnSZnmiu2vTvPM8uyb6bds0GT3WFKtisvYZmamprrmnb3/sYbb1jvvfee1bdvXys8PNxatWqVlZmZaX388cdW165d833/2ey+1Lid9Zs0aXLVssaNG+e6rp0/SO1+X+2uHx0dbdWvX9/KyMhwLvvuu++s8PBwKyYmJl/Xd1WQYln2XJbX7v7tnGmu3PbMtJzs/sXA7vfW7vp2zhy756UrwpRsds00u/p35Xc0u7d99syx61LjdtV3x+9olmX/e2tnfXf+jmZZ9ocp2eyeZ3b0nhe/d9qx7c+cOWPrPLOzvl0z7Z4Nmuz8UNt9GXa7/0Ha/T8q7rzt7a6frXXr1taaNWusjIwMKz093Vq+fLnVrl27XNe18wep3Z9Lu+tb1p8J/uWOHDli/fvf/zZS2876rtg2VzJ5GXZ3nmnuvu1dVd+OmWb3LwbMtLyrbfe2sfMy7Hb3787f0Szr6m0/ZswYo9ve7vqW5Z7f0SzL/Weau35Hsyz7t83mzZutr776yrIsy/rggw+sbt26WXPmzLHS09NzXdudv6NZlmu3/eLFi61u3bpZc+fONbLtXVHfsuybafds0GTnh3rw4MFW3759rQULFli1a9e25s2bZ6y2Zdn/D9Lu/1Fx521vd/1sP//8s9WsWTMrNDTUKleunNWqVSvr6NGjRmrb9YPU7s+lKw+TcTd2b5vRo0df9adWrVrOv+eWO880d9/2dtfPZtdMs/MXA2Za3rF72/Tr18/q2bOnlZCQYI0aNcrq27evtXXrVmvo0KFW3759c13fzv7d+TuaZdm/7e2ub1nu+R3NsphpecnObTN+/Hjr5Zdftpo0aWL17NnTioqKstauXWv16NHDevfdd3NV27Lc+zuaZbn3tre7fja7Zto9ezJwy7KUkpIif39/vfvuu87l58+fz/UZ6O2+DLudvUtS27Zt1aRJE/3rX//S888/L+nPy5T27dtX3bt3z3V9d972dtfPVrp0aX388cc6f/68JBm9TH358uVz3A4ODlZwcHCu69r9ubS7vjuze9vYfRl2d55p7r7t7a6fza6ZZtc8k5hpecnubWP3Zd7t7N+dv6NJ9m97u+tL7vkdTWKm5SU7t8327du1bt06paamKjw8XNu2bVNAQIAaNWpk5Mpk7vwdTXLvbW93/Wx2zbR7Nmiy+0Nt52XY7e79lVdeUZUqVeTl5eVc9vDDD2vy5MmqXr16ruu787a3u/6gQYNueP+4ceNy/Rx2sft9tbu+O7N729h9GXZ3nmnuvu3trs9My7v67szubWP3Zd7t7N/dv6PZve3trO/O80xipuUlu//Dy8vLy/mnQIECkiQfHx+3CILceabZve3trm/3TPOwTO6G4Wbi4uJy/M/B0aNH9fvvv+f6Qz148GBlZWU5L8MuSRs3btSYMWMkSd98802u6kv29e4q7rrt7a6/ePFiSdKePXt04sQJNWnSRF5eXtq0aZOKFy+uCRMm5Kq+3ez+XLr7595Ortg2u3fv1rhx4zRo0CC99957+vjjj43Vduf31t23vZ31mWl5W9+d2bltli1bpuXLl6tjx45KSEjQN99847wMe61atfTmm2/m+jnc+b11521vZ313n2cSMy0v2bVtRo4cqcOHD+vSpUsKDAzUgw8+qJdfflmbNm1SUlKSJk+enNvW3f59dddtb3d9u2faPR002cXhcGjOnDmqUaOGnn76aUnShQsXtGfPHo0fP16bN2/O4w7vXnZve1e9txEREVq8eLEzuXY4HGrfvr1WrlxppD5wp06fPq2+ffvqwIEDio2Nzet27il2b3s76zPTkN98/vnn+uSTT3T48GFlZGTIz89Pbdq0UUREhJE9a3B9dm97u+szz5CfZGVlad26dcrKylLz5s01c+ZMffbZZ6pYsaIGDhxo/FB4/I/d295V761dM42fpDZISUlRYmKidu/eraNHj+r555/X008/rWnTpmnRokV53d5dze5t76r3NiEhQb6+vs7bHh4eOnfunLH6wO1ITEzUiBEjNHXqVDkcDp06dUqXLl1Ss2bN9Ntvv+V1e3c1u7e9q95bZhryk8TERH399dcqXbq0Zs+erczMTP3yyy/66KOPdPLkybxu765m97Z3xXvLPEN+cv78ef3nP//R0aNHdfz4ca1fv17//e9/deDAAaWkpOR1e3c1u7e9q95bu2YaQZMNhg0bJn9/fx0/flxRUVHq1q2bfvjhB3Xo0EHvvPNOXrd3V7N727vqva1Vq5Y6d+6sNWvWaPXq1erUqZPq169vrD5wO4YNG6aCBQs6P/evv/669u/fz0xzAbu3vaveW2Ya8pPLf5a3b99e3bp1Y6a5iN3b3hXvLfMM+cm1fjdhnrmG3dveVe+tbTMt19etw1W4vGfeuVsu3Zqenm59+OGHVrdu3axu3bpZy5YtszIzM43VB24HMy3vMNMA85hpeedumGnMM+QnzLO8czfMM8uyb6bds1eds5PF5T3zjN3b3lXvrbe3t1599VW9+uqrxmoCd4qZlneYaYB5zLS8czfMNOYZ8hPmWd65G+aZZN9M49A5G2RfRjEzMzPHZRSbNm2qdu3a5XF3dze7t73d9Z944gmFhoZe9w+QF5hpeYeZBpjHTMs77jzTmGfIj5hneced55lk/0zjqnM2cffLQLozd75067lz52RZlqZNm6aiRYuqTZs28vLy0tq1a3XixAkNHDgw188B3AlmWt5hpgHmMdPyjrvONOYZ8ivmWd5x13km2T/TCJqAfOjll1/WmjVrcixr0aKF1q5dm0cdAcCdY6YBuFswzwDcTeyaaRw6B+RDly5d0q+//uq8ffDgQaWnp+dhRwBw55hpAO4WzDMAdxO7ZhonAwfyod69e6tNmzYqW7asLMvSL7/8okmTJuV1WwBwRy6faVlZWTp06BAzDYBbYp4BuJvYNdM4dA7IpxISEhQbGytJql69uoKCgvK4IwC4c8w0AHeL7Hnm4eGhatWqMc8AuLWzZ89qz549Rmcah84B+UhaWppmzJihQYMGaf/+/XrhhRf0wgsvKCgoSKNHj87r9gDgjj344IN64YUX9PXXX/NLGQC3k56ergULFuj333+Xv7+/vvvuOy1cuFCzZ89WSkpKXrcHALfts88+09atW/XQQw/pt99+05o1a/TRRx8pIyMj17XZownIR4YMGaLU1FSFhoZqyZIlioqKUteuXSVJzZs318cff5zHHQLArXv33XevWrZp0yY1bNhQkjR06FBXtwQAd6R///5yOBwaOXKkZs6cqQsXLqhJkybasmWL/vjjD02ePDmvWwSAWzZhwgT9v//3/5Senq4SJUro/Pnzat68ub788ks99thjGjJkSK7qc44mIB/5/vvvtX79enl4eOill17SK6+8omLFiqlhw4YiEwbgbk6dOqU9e/aobdu28vT8cydqT09PFS5c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WZefTNuyrNveU+lWXbx48aplZ8+eVUhIiPN206ZN1a9fP/3000/au3dvjqvJXWnz5s0aMWKENmzYoEceecS53M/PT127dtWmTZt06NChaz720qVL6tGjhwoXLqxx48bluC8wMFCSNGvWLD366KNXPfavf/3rjV8oAADIlzh0DgAA5Iknn3xSv/zyi3799der7tuyZYuKFi2qIkWKSJJee+01Z1Dx+OOPq3379nr++eedex5Vq1ZNv/76q8qWLauKFSuqYsWKCgkJ0cyZMxUbG3tbfUVGRsrDw0Pjx4+/6kprhw4d0ieffKLnnntO/v7+qlatmlJSUvT111/nWO/TTz9V+fLl5efnp4CAAEly7lEk/XnYWEZGxm315eXldUvrJSYmKi4uznk7Li5Ox48fV40aNZzLnnvuORUsWFCjRo1SsWLFVK1atevWK1OmjM6fP6+lS5dedd8ff/yh33//XWXKlLnmYwcPHqwjR45oxowZzu2QrVKlSvLx8VFCQoLzPatYsaJ+/vlnzZo165ZeKwAAyH/YowkAAOSJRo0a6YMPPlDHjh3VrVs3lS5dWgkJCdqyZYs2bdqkyZMnO9etVq2a5syZo4cfflgVK1bUoUOHtHnzZr366quSpI4dO2rdunXq3Lmz2rdvLx8fHy1evFh79+51nmj6VpUoUUKDBg3S6NGjdfr0abVq1UpBQUGKi4vTwoUL9eijj2rw4MGS/ryyWqVKldS/f3/nVefWrl2rffv2ae7cuZKksmXL6tFHH9W0adPk7e2t5ORkTZ8+3blHz63KXn/btm0qWLCgSpUqdc31fH191bdvX/Xr10/p6emaNGmSnnjiCTVo0CDHOi+99JJWrlypN99884bPW6pUKbVv317z5s3TsWPH9NJLLykoKEjHjx/XkiVLVLBgwRxX4su2aNEibdq0ST179lRaWpr27t3rvC8oKEjBwcGKiorSe++9pwsXLigsLEwHDhzQ1KlT9dxzz10VTAEAAPdA0AQAAPKEr6+vli1bppkzZ2rx4sU6ffq0ChYsqCeeeELz58/PcYLt119/XVlZWYqJidH777+vhx56SK+++qp69Ogh6c+9nJYvX66JEyeqf//+8vDwUPny5fXBBx8oNDT0tntr166d/vKXv2jJkiUaN26cLl68qMcff1wtW7ZUly5ddP/990v6cy+jhQsXatKkSZo6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urqoqqpqrldZWRmvvPJKm300NDTEihUrcn52O55NIWEWO/LrYPulZ9sBAAB0Lu32GU0t/eY3v4mbb745brvttujevXtzuNS1a9eIiDjooINi5cqVUVVVFfX19RERUV9fH926ddvsvg/e35aKiopc3qiSndchG9svPdsOAAAgX1v6g36HfOvcPffcE3Pnzo3a2tro1atXRES8+OKLMXz48Ghqaor169fH448/HgMGDIhBgwbFokWLIiJi8eLFMXjw4KiqqoqysrJ4+eWXI0mSeOihh2LIkCEd0ToAAAAAH1K7n9HU1NQU06ZNi1133TUuvvjiiIj4/Oc/H5dcckkcf/zxMWzYsCgrK4sTTjgh9txzz+jZs2eMGzcuampqoqysLGbOnBkREVdffXVcfvnl0dTUFIceemjsu+++7d06AAAAAFuhKEmSZFs30V5WrFjhspmc9Dj+ktRj3/rV7Bw76Zw+eea01GPfmHtljp10PruNmpN67Gu3XJBjJwAAAERsOW/pkEvnAAAAAPjoEzQBAAAAkAtBEwAAAAC5EDQBAAAAkAtBEwAAAAC5aDNo+tnPfrbZ7f/4j/9ot2YAAAAA6LxKW/uPX//61/H73/8+Hn300XjkkUciIqKpqSmee+65OOusszqsQQAAAAA6h1aDpsMOOyw+8YlPxLvvvhtf/epXIyKiuLg4evXq1WHNAQAAANB5tBo07bTTTnHggQfGgQceGKtXr46GhoaIeP+sJgAAAABoqdWgaZOrr746Fi1aFLvsskskSRJFRUUxf/78jugNAAAAgE6kzaBp2bJlcf/990dxsS+oAwAAAKB1baZHffr0ab5sDgAAAABa0+YZTa+//nocccQR0adPn4gIl84BAAAAUFCbQdPMmTM7og8AAAAAOrk2g6a77777n+676KKL2qUZAAAAADqvNoOmHj16REREkiTxzDPPxMaNG9u9KQAAAAA6nzaDptNPP32z2+eee267NQMAAABA59Vm0PTCCy80//vNN9+M119/vV0bAgAAAKBzajNouuqqq5r/XVFREd/+9rfbtSEAAAAAOqc2g6ba2tp455134pVXXomePXtG9+7dO6IvAAAAADqZ4rYecO+998bpp58et9xyS3z1q1+Ne+65pyP6AgAAAKCTafOMph/96Edx1113RWVlZdTV1cXXvva1OOGEEzqiNwAAAAA6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uivuvvvuiIhoaGiIFStWxB//+Mfo1q1bqnrr16+P8ePHx6uvvhrFxcUxderUTNuvsbExrrjiinjllVeiqqoqrrrqqth9991T1frg/H3ppZdi/PjxUVRUFHvuuWdMnjw5iou3Lp9uuR7uu++++O1vfxszZ87M3N+KFSti6tSpUVJSEuXl5TFjxozo0aNH6nrPP/98TJo0KZIkib333jsmTZoUJSUlqett8qtf/Srmzp0bP/3pT7eqVst6y5cvj1GjRjW/tjU1NXHsscemrrd69eqYOHFirFmzJpqamuLf/u3ftnqf8MF6Y8aMibfeeisiIl599dXYd99944Ybbkhdb8WKFTF58uQoKSmJ3XffPaZNm7ZV86/ltps8eXKUl5dH//7948orr9yqWoX2x5/5zGdSrY8t7dunT58effv2jZqamky97bbbbqnXRqF6ffr0Sb02tvR806yNQvU+9alPpV4bhertt99+qddGoXq//vWvU6+N1l7ftGujte2Xdn0UOrZIkiT1745C9err61PP50L1GhsbU8/nLR1LpZnPheqtXbs29XwuVK+ysjL1fC5U74Ybbkg1n1t7bdPO5da2XZZ9fcTmx7alpaWZj4MKHSun2dcXqtfY2Jj5OOiD9ZIkyXwcVOj5ZjkO+mC9devWZT4O+mC9nXfeOfNxUMvXI8txS8vnmnUut3xfNWrUqEzzubX3aWnnc8t6Z511Vur53Fpvaedey3pnnnlmprnXst7ll1+eae61rLdu3bpMx+CFXossczkiIpId2O9+97tk3LhxSZIkyX//938no0aNylzztttuS4477rjktNNOy1zrzjvvTK655pokSZLk7bffTr7whS9kqnffffcl48ePT5IkSR555JHMz7exsTG54IILkqOPPjp5/vnnM9VKkiRZt25dcsIJJ2SukyTvP79vfOMbSVNTU1JXV5fMnj07l7pJkiRTpkxJ5s+fn6nGfffdl1xyySVJkiTJQw89lFx00UWZ6tXW1iYTJ05MkiRJVq1alZxzzjmp6rScv9/4xjeSRx55JEmSJJk0aVLyn//5n5nqTZ06NTnmmGOSSy+9NJf+zjjjjOSZZ55JkiRJ5s2bl0yfPj1TvdGjRyd/+tOfkiRJknHjxmV+vkmSJM8880xy1llnpdontKy3YMGC5Ac/+MFW12mt3rhx45KFCxcmSZIkS5YsSf7whz9kqrfJu+++m3zlK19J3njjjUz1LrjgguTBBx9MkiRJLrvssuSBBx5IXeukk05Kli5dmiRJksyaNSv5xS9+sVW9Fdofp10fhWqtXr06GTlyZHLkkUcmd9xxR+besqyNQvWyrI3WfpelXRuF6mVZG4XqZVkbW/rdnWZtFKqXZW0UqpdlfRQ6tsjyu6NQvSzzuVC9LPO5tWOptPO5UL0s87lQvSzzeUvHjls7nwvVyjKXC9XLuq9veWyb9TioZb0s+/pC9bIeB7Wsl/U4qNB7gyzHQS3rZT0Oalkv63FQy3pZ5nPLWlnncqH3VVnmc6F6WeZzoXpp53Nr7yHTzr1C9bLMvUL1ssy9Lb1nTnOcUahelrm8yQ596dzSpUvjsMMOi4iI/fbbL55++unMNXv37h033nhj5joREV/60pfim9/8ZvPtrf2LQktf/OIXY+rUqRER8dprr231XzxamjFjRpx++umxyy67ZKqzycqVK+O9996Lc845J84666x44oknUtd66KGHol+/fnHhhRfGqFGj4vDDD8+lx6eeeiqef/75+OpXv5qpTt++faOpqSk2btwYdXV1UVqa7eTC559/PoYOHRoREXvssUesWrUqVZ2W83f58uVxwAEHRETE0KFD4+GHH85Ub9CgQTFlypRUvRWqN2vWrOjfv39EvP+XzYqKikz1brzxxvj85z8fjY2N8eabb8a//Mu/ZKr3zjvvxPXXXx8TJkzYqjqt1Xv66afjwQcfjDPOOCMmTJgQdXV1meo9/vjj8cYbb8TXv/71+NWvftX8Wqett8mNN94YZ5555lbvG1rW69+/f7z77ruRJEnU19dv1TppWeuNN96IQYMGRcT783Dp0qVb1Vuh/XHa9VGoVn19fVx88cVxwgknbFVfrdXLsjYK1cuyNgrVy7I2CtXLsjYK1cuyNrb0uzvN2ihUL8vaKFQvy/oodGyR5XdHoXpZ5nOhelnmc6F6WeZzoXpZ5nOhelnm85aOHbd2PheqlWUuF6qXdV/f8tg263FQy3pZ9vWF6mU9DmpZL+txUMt6WY+DWtbLehzUsl7W46CW9bLM55a1ss7lQu+rssznQvWyzOdC9dLO50K1ssy9QvWyzL1C9bLMvS29Z05znFGoXpa5vMkOHTTV1dVFVVVV8+2SkpLYsGFDpprHHHNM5tBgk8rKyqiqqoq6urq45JJL4tJLL81cs7S0NMaNGxdTp06NY445JnWdu+66K7p3794c1OWhS5cuMXLkyPjBD34QV199dVx++eWpX4933nknnn766fjud7/bXCtJksw93nrrrXHhhRdmrvOxj30sXn311fjyl78ckyZNihEjRmSq179///jDH/4QSZLEE088EW+88UY0NTVtdZ2W8zdJkigqKoqI9+fj2rVrM9U79thjm+ul0bLeBw8U5s6dG1//+tcz1SspKYlXX301jjvuuHjnnXeib9++qes1NTXFlVdeGRMmTIjKysqtqtNafwMHDoxvf/vb8ZOf/CR69eoVN910U6Z6r776anTr1i1+9KMfxa677hq33357pnoR75/2vWTJkjj55JO3qlaheptO1f3yl78cq1evjgMPPDB1rV69esWf/vSniIj4wx/+EO+9995W9VZof5x2fRSq1atXr9h33323qqct1cuyNgrVy7I2Wtb75je/mWltFOovy9ooVC/L2mjtd3fatVGoXpa10dr8y7I+Wh5bZP3d0bJe1n19y3pZ9/UfrHf00Udn3te37C/rvr5lvaz7+kLHjmnnc8taWeZyoXpZ5nKhY9ssc7lQvSz7+kL1sqyNQvWyrI2W9TZu3JhpbRTqL8vaKFQvy9ooVC/tfG5trmTZLxd6X5VlPheqt+uuu6aez4Xqde/ePSK2fj63rHXZZZfF+PHjU8+9Qr0NGDAg9dwrVO+ll15KPfdae8+cdr9cqF7Pnj0z7ZsjYse+dG769OnNp6wlSZIcdthhudR95ZVXcrl0LkmS5LXXXktOOumk5Gc/+1ku9Tb529/+lhx++OFJfX19qvHDhw9PzjjjjOTMM89MBg8enJxyyinJ3/72t0w9NTQ0JO+9917z7VNOOSV57bXXUtX6zne+s9npjccff3zy1ltvZerv73//e/LlL385U41Npk+fnlx//fVJkrz/Gh911FHJunXrUtdbv359Mm3atOTMM89MZs2alZxyyimpa31w/n5wTdx3333J1Vdfnalekrx/envaS+cK1Vu4cGFy3HHHJS+//HIu9TZZsGBB8u1vfzt1vWXLliXHHntscuaZZyannXZasv/++zdfrpK2v7///e/N9z/33HPJWWedlanewQcfnLz99ttJkiTJ8uXLk3PPPTdTvSRJkrlz5yZz5szZ6jqF6h100EHJs88+21x3ypQpqWttuqT0vPPOS2bPnp1MmzZtq3truT/Osj5a27fPnj071eUUheplWRtb+t2TZm18sF4ea6Nlf1nXRst6WddGoe2XZW20rJd1bbSsl8f6SJL/O7YYMmRI831pf3d8sF59fX3mfX3Lepuk3ddvqve5z30uOeKIIzLv6z/Y3//+7/8235d2X//BegceeGDmff0H69XX12fe13+wtyxzuWW9FStWpJ7LhY5t+/fv3/z/WzuXt3SsnGZf31q9tGujrWP5rV0bLevttddeyZFHHpl6bbTV39aujUL19tlnn9Rro1C9AQMGpJrPhWo9+uijmfbLhd5X7b333s23t3Y+b+l9Wpr53Fq9NPO5Za2sc6+t96RbO/daey3Szr3W+ku7Xy5Ur1+/fpn3zTv0GU2DBg2KxYsXR0TEE088Ef369dvGHW3urbfeinPOOSfGjh0bp556auZ6v/jFL+LWW2+NiIiuXbtGUVFR6svxfvKTn8TcuXOjtrY2+vfvHzNmzIhPfOITmfq7884747rrrouI908XraurS11z8ODB8V//9V+RJEm88cYb8d5778XOO++cqb/HHnssDj744Ew1NunWrVvzB67ttNNOsWHDhlRnIG3y1FNPxeDBg6O2tja++MUvRq9evXLp87Of/Ww8+uijERGxePHiGDJkSC5183LPPfc0z8M8nvOoUaPixRdfjIj3/9Kz1R969wEDBw6MhQsXRm1tbcyaNSs+85nPxJVXXpmpv5EjR8aTTz4ZERFLliyJAQMGZKo3ePDgWLRoUUS8P78/85nPZKq3qa9Nl3FmtdNOOzWfdbrLLrvEmjVrUtdatGhRTJ8+PW677bZ4991345BDDtmq8YX2x2nXR9779kL1sqyNQvWyrI2W9bKujUL9ZVkbheplWRutvb5p10ahelnWRqF6WdZHoWOLffbZJ/XvjkL17rvvvtTzuVC9iy66KPV8blmvR48ece+996aez631l3Y+F6p3wAEHpJ7PrR07ppnPhWrtvPPOqedyoXoPPvhg6rlc6Nh26NChqedy3sfKheo9/PDDqddGoXqTJk1KvTZa1lu4cGHcf//9qddGof4uuOCC1GujUL0jjjgi9dooVK9nz56p5nOhWsuXL8903FLofdUhhxySej7n+T6ttXp/+tOfUs3nlrV23333+O1vf5t67hXq7cILL0w99wrVO+qoo1LPvdZei7THGYXq9e7dO/Mx+A79rXNHHXVU/PGPf4zTTz89kiSJ6dOnb+uWNnPLLbfEmjVrYs6cOTFnzpyIiLj99tujS5cuqeodffTRccUVV8QZZ5wRGzZsiAkTJmz1tdzt6dRTT40rrrgiampqoqioKKZPn576MsQjjjgiHnvssTj11FMjSZK46qqrMn/G1QsvvBA9e/bMVGOTr3/96zFhwoQYPnx4rF+/PsaMGRMf+9jHUtfr06dPfPe7340f/vCHUV1dHdOmTculz3HjxsWkSZNi1qxZsccee2S63DJvTU1NMW3atNh1113j4osvjoiIz3/+83HJJZekrnn++efH+PHjo6ysLLp27RrXXHNNXu3mYsqUKTF16tQoKyuLHj16NH82RVrjxo2LiRMnxvz586Oqqir1NwF+0AsvvJBb0HnNNdfEmDFjorS0NMrKyjI93z59+sT5558fXbt2jQMPPDC+8IUvbNX4QvvjK6+8Mq655pqtXh9579tb1mtqaornnnsudtttt1Rro1B/l156aeq10d7PNyJi/PjxMX369FRro1C96667LvXaaO35pl0bheplWRuF6p199tmp10ehY4tPf/rTqX93FKo3YcKE1Pv6QvW6d++eej7nfSxVqN6uu+6ael9fqF7//v1Tz+fWnm+a+Vyo1s4775x6LheqV1xcnGlf39L2fBy0ceNGx0Hb2XHQ9nTcUuh91cc//vHU8znP92mF6k2bNi1Gjx6daj63d2/Tp0+PioqK1HOvUL1PfvKTqedea8837XFGoXobN27MPJeLkiSHD64BAAAAYIe3Q186BwAAAEB+BE0AAAAA5ELQBAAAAEAuBE0AAAAA5ELQBAAAAEAu0n/vHwAAH9ptt90WDz/8cBQXF0dRUVGMGTMm7rnnnjj77LNjt91229btAQDkQtAEANDOnn/++fj9738f8+bNi6KiolixYkWMGzcufvnLX27r1gAAclWUJEmyrZsAAPgoe/vtt+PEE0+Miy++OIYOHRqf/OQno7GxMUaOHBlTpkyJhQsXxmOPPRYREc8++2yMGDEivva1r8WVV14Z77zzTkRETJw4Mfbaa69t+TQAANokaAIA6ADLly+PuXPnxpIlS6JLly4xZsyYmDt3bkyZMiU+/elPR0TEgw8+GLW1tXHzzTfHd7/73fjXf/3XGD58eLz44otxxRVXxLx587bxswAA2DKXzgEAtLOXXnopqqqq4tprr42IiKeeeirOP//86NGjR/Nj/vznP8ctt9wS3//+96O8vDyeffbZeOSRR+Lee++NiIg1a9Zsk94BALaGoAkAoJ395S9/iXnz5sUtt9wSFRUV0bdv36iuro6SkpKIiHjmmWdi2rRpcdttt0VVVVVEROyxxx7xla98JY4//vhYvXp1/OxnP9uWTwEA4ENx6RwAQAe4+eab4957742PfexjkSRJnHfeefHjH/84pkyZEpdcckmUlJTETjvtFBERn/vc5+K8886LK6+8MtauXRt1dXVx0UUXxZFHHrmNnwUAwJYJmgAAAADIRfG2bgAAAACAjwZBEwAAAAC5EDQBAAAAkAtBEwAAAAC5EDQBAAAAkAtBEwAAAAC5EDQBAAAAkIv/H6ThQfb8ZYbJAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "\n", "# Sort data by bust size\n", "bust_size_sorted_data = user_data.loc[(user_data['bust_size']>='32a') & (user_data['bust_size']<='38ddd/e')].sort_values('bust_size')\n", "\n", "sns.set_style('whitegrid')\n", "fig, axes = plt.subplots(nrows=2, figsize=(20, 18))\n", "\n", "# Plot the distribution of users by bust size\n", "sns.countplot(x='bust_size', data=bust_size_sorted_data, palette='twilight', ax=axes[0])\n", "axes[0].set_title('User Count by Bust Size', fontsize=16)\n", "axes[0].set_xlabel('Bust Size')\n", "axes[0].set_ylabel('User Count')\n", "axes[0].set_xticklabels(bust_size_sorted_data['bust_size'].unique(), rotation=90, fontsize=12)\n", "\n", "# Plot the distribution of users by size\n", "sns.countplot(x='size', data=user_data, palette='PuBu_r', ax=axes[1])\n", "axes[1].set_title('User Count by Size', fontsize=16)\n", "axes[1].set_xlabel('Size')\n", "axes[1].set_ylabel('User Count')\n", "plt.savefig('data/images/fig0.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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oygKzz77LPfeey/vvfdeg/Oc/X4/N910E/v27eOJJ57g/vvv509/+hMFBQV12v72t7/l0ksv5cUXX2TQoEE88sgj7Nixg86dO0evT7/4xS9kPrOIO3INM/Ya9vHHH1NUVMQVV1xBly5dmDBhQvRmUo3i4mJuuOEG/H4/8+fP59Zbb+Xxxx/n6NGj0TY+n48bbriBgoICHn74YX73u99RXFzMj3/8YyoqKs7o+9XeyPizNu6LL75g+PDhXHXVVUBk6GJCQgJ2ux2IzA/z+/288sorpKamAkQnI7/33nvR14VCIf7nf/4n2qY+x48fZ+jQoc2K68MPP2Tjxo384Q9/YPLkyQBceOGFXHfddTzzzDPRbc0RDAa57777uPzyywFIS0vjyiuvZMOGDUybNo0BAwYAMHDgwGivW310Xeepp56KJmT9+vXjiiuuYNWqVVx11VVcddVVzJs3D7fbjcvlorS0lI8//phnnnmmwX2OGzcuevdM13XWr1/PPffcA8AFF1wQvQMWCATYtm0beXl5QOSC/+mnn/LHP/6RCy64AIDJkyfzX//1Xzz//PM88cQTtY7j8Xj44x//yO23385Pf/pTAKZMmcKVV17Jzp07a7Xt27cv8+fPR1EULrjgAj799NNoD+WAAQNwOp0kJiYyatSoJr7zQpw7uUYZe40CWLp0KUuXLm3yPBYtWkRaWhovvfQSVqsVgD59+jBjxgw+//xzzjvvvFrt33rrLY4cOcLf//53evfuHY35Rz/6UZ1933HHHdx4440ADB06lPHjx/PZZ58xePDgaE9H7969o98rIeKFXMOMvYa99dZbDB06lKysLCBSSOb+++9nz5499O/fH4D8/Hw0TePll1+O1lno1KkTd911V3Q/b775Jvv27eOdd96Jvm7ChAlMnTqV/Px87rzzzmZ/v9ob6Rlso2qGD4wePZp169Yxc+ZMXnvtNQ4ePMjs2bMZO3YsEOneHzVqFElJSdG7wd26daN///6sX78+ur/U1NRGL1AAqqrWuZPckM8//xyHw1HnYnT55Zezffv26LDF5jo9cenatStAraFLzeFyuWrN1xs4cCC9evWKDp+44oor0DSNf//73wC89957OBwOLrroogb3OX78eL755hvKy8spLCykrKwseowJEyawf/9+jhw5wtatWwkEApx//vlA5Odit9s577zzoj8XgEmTJvHpp5/WOc6WLVsIBAJ897vfjW5TFIXvfe97ddqOHDmy1vCSnj171pq7KERrkGtUfFyjAC677DL+8pe/1Pn69oefDRs2MHHiRFRVjf4sRo0ahdPprPWzOL39wIEDo4kgwPDhw+nZs2edtqdXGUxJScHhcMh1ScQ1uYYZfw3zeDysXr2aSy65hMrKSiorKzn//POx2+21egc3bNjAuHHjahXc++53v1ur5sKGDRvo3bs3vXv3jv6cEhISyMnJqfdzV0ciPYNxyG631xpacLpgMAhAQkICALfddht2u52//OUv/Pa3v+W3v/0t48aN4+mnn6ZLly6Ul5ezZcsWhg0bVmdfGRkZ0f+npaU1GVePHj1qdbl/W3l5OTabDbvdTmVlZb3DHGq2eb3eJo93uprzhcjFEmj2BbNGfeeYmprKiRMnos9PnjyZVatWcfXVV/POO+9w6aWXRu+Q1ycnJweTycSWLVvYtWsXvXv3jn4QysnJISEhgc8//5zjx48zcODA6Pe8vLyc6upqhg8fXmefFoulzraasfTf/kNS3/e45m5lDUVR2kUVQxE/5BpVV7xeo2r2MWLEiDrbTy9+BZHvz4oVK1ixYkWdtkVFRXW2lZeX1/vhtr7v6+nfH4h8j+S6JIwi17C64vEa9o9//IPq6mp+//vf11mu68033+QXv/gFVquVsrKyOqMKTCZTraGnNRXd6/s59enT54zOs72RZDAOpaWlsW3btnqfO3bsGHDqAmMymbjpppu46aabOHLkCO+//z4LFizgoYce4g9/+ANOp5MpU6bU6iqv4XA4ziiuCy64gNdff53S0tJ6PwD8/ve/5+2332bt2rUkJyfXW/645gNFSkpK9K7b6R8IdF0/4ztRzVXfXeji4uLo0AOIDD+499572bVrF5s3b+b+++9vdJ8Oh4Phw4fz5Zdfsnnz5lp3xKxWKzk5OWzatIljx45FewUhcvcsLS2NF198sVmx18ztKy0tpUuXLtHtRq05JDo2uUa1nWvUmXA6nXznO98hNze3znP1zefp3LlzraJXNUpLS+nbt2/M4hIi1uQa1jauYW+99RbZ2dnce++9tbZ//fXX/M///A+rV6/msssuo3PnznU+D2maRnl5efSxy+Vi8ODB/OY3v6lznKZuqLV3Mkw0Dp133nl8/fXX7N27t85z77//Pj169KBbt24A/Pd//3d0fln37t254YYb+O53vxu9s5STk8PevXsZNGgQI0aMYMSIEWRlZbFw4cJ6J/k3Ji8vD0VRePLJJ+vc0d2zZw9vvvkm3/nOd3A4HOTk5OD1eutMYv773//OsGHDsNlsOJ1OgOgdI4DNmzef8VpTJpOpWe1KS0trLZi6fft2Dh06xLhx46LbvvOd75CYmMhjjz1Gz549ycnJaXK/48ePZ9u2bWzatImJEyfWem7ChAnRC97piWJOTg6lpaUkJiZGfy4jRozgnXfe4e23365zjCFDhuBwOOosyvyf//ynWed+upo7fkKcLblGta1rVHPV/CyGDx8e/Vl069aNefPm1elFhEhFwt27d9eqxrdr164zrs7X3O+PELEi17D4v4YdOXKEzz//nCuvvJLx48fX+rr++uvJyMiIrjl43nnn8dlnn9UaGrt27dpoLy/AmDFjOHToED169Ij+nIYPH86rr77Khx9+eCbfjnZHegbj0Pe//33++Mc/8pOf/ITbb7+dAQMGUFJSwvvvv897771Xq4JkTk4Ozz//PBkZGYwYMYI9e/bwj3/8IzpR/yc/+QlvvfUWt9xyCzfccAMWi4VXXnmFzZs3N1ghriG9e/fml7/8Jb/+9a85fvw41157LampqWzfvp0//OEPdOnShQcffBCILJg+cuRI7rvvPmbPnk23bt3461//ypYtW3jhhRcAGDRoEF26dOH3v/89ZrMZj8fDc889h8vlOqO4atqvWbOGxMTE6MTgb7NarfziF7/g3nvvJRgM8vTTTzN48GCmTZtWq81ll13GihUr+PnPf96s448fP55XXnmFcDjM+PHjaz13wQUX8Pvf/x5N02pdDKdOncqIESO47bbbuPPOO+nWrRv/+te/WLJkCY899li953jjjTfy4osvYrVaGTJkCG+99Rbbt2+vU366KUlJSRQWFrJhwwZGjhxZZ/iWEE2Ra1TbukY1189+9jOuv/56/t//+3/86Ec/IhAIsGjRIo4ePVpvUYsf/OAHvPDCC/z0pz/lrrvuIhwO88wzz6Aoyhldl2q+P5988gl9+vRh8ODBMTsnIeoj17D4v4a9+eabDdZGMJlMXHbZZbz++uscPnyYmTNn8vrrr3Pbbbdx6623UlpaGi1KU3Mtuuaaa8jPz+e///u/ue2220hJSWHFihX861//4gc/+MEZfT/aG0kG45DVamXJkiUsXLiQV155hePHj5OYmMjgwYN56aWXak0W/ulPf4qmaSxbtoxnn32W9PR0brzxxmhhgO7du7N06VKeeuop7rvvPhRFYdiwYfzxj3+stVZNc82YMYM+ffrw2muv8cQTT1BZWUn37t255ppruPXWW0lOTgYiv6h/+MMfePrpp3nmmWeorq5myJAhvPTSS0yZMiXa5tlnn+Xxxx/nzjvvpGfPntx33308//zzZxTTwIEDufLKK3nxxRfZtm1b9CL4bT169OCmm27isccew+v1cuGFF/LII4/UGR4wZcoUVqxY0eyLw5gxYwAYNmxY9PxrDB06FIfDQWZmZq2Lr8lkYvHixTz99NM89dRTeDweevfuzRNPPMHVV19d73HuvPNOwuEwr732Gh6Ph4suuoi8vDz+9re/NSvOGjfddBOzZ8/mlltu4bXXXovGL0RzyTWqbV2jmmv48OG89tprPPvss9x1113YbDbGjBnD7373u1rD02tYLBYWL17MY489xv3334/L5eK2227j1VdfPaPhcU6nk1tvvZXXX3+dTZs28c4778TytISoQ65h8X8Ne/vttxkzZkyDS2BdccUV/OlPf+KNN97grrvu4pVXXuE3v/kNd911F507d+aXv/wlv/jFL6LXIqfTyZIlS/jd737Hr371KwKBAAMHDmTRokVceOGFZ/T9aG8UXWZwC1HLr371K3bu3FlnUVkjBQIB3nvvPSZNmlRrwvg999zD3r17zzghFEK0XfFyjdq5c2etReMhUv1vwoQJ3HfffdGFqoUQ4nSxvoZt2rQJn89XazrOvn37uPTSS1m0aFGta5SoS3oGhTjpL3/5C4WFhaxcuZL58+cbHU4tVquVRYsW8ec//5lbbrkFu93O+vXree+99+qdDC2EaH/i7Rrldrv52c9+xk9/+lMuuOACPB5PtFfwv/7rv4wOTwgRZ1rqGnbgwAEeeughfvGLXzBixAiKi4t54YUX6NOnD5MmTYrZcdorSQaFOGnbtm289dZb/PjHP+bSSy81Opw6XnzxRZ5++ml++ctfUlVVRd++ffntb3/LD3/4Q6NDE0K0gni7Ro0dO5annnqKV155hddeew2LxcLYsWNZsmRJs8roCyE6lpa6hl155ZWUlZWxYsUKnn32WRwOBxMnTuS+++7DZrPF7DjtlQwTFUIIIYQQQogOSGrM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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "weight_data = user_data.loc[(user_data['weight']>=90) & (user_data['weight']<=210)]\n", "\n", "sns.set_style('whitegrid')\n", "fig, axes = plt.subplots(ncols=3, figsize=(15, 5))\n", "\n", "# Plot the distribution of users by weight\n", "sns.histplot(x='weight', data=weight_data, bins=24, color='darksalmon', kde=True, ax=axes[0])\n", "axes[0].set_title('User Count by Weight', fontsize=16)\n", "axes[0].set_xlabel('Weight')\n", "axes[0].set_ylabel('User Count')\n", "axes[0].grid(axis='x')\n", "\n", "# Plot the distribution of users by height\n", "sns.histplot(x='height', data=user_data, bins=24, color='midnightblue', ax=axes[1])\n", "axes[1].set_title('User Count by Height', fontsize=16)\n", "axes[1].set_xlabel('Height')\n", "axes[1].set(ylabel=None)\n", "axes[1].grid(axis='x')\n", "\n", "# Plot the distribution of users by age\n", "sns.histplot(x='age', data=user_data, bins=24, color='rebeccapurple', kde=True, ax=axes[2])\n", "axes[2].set_title('User Count by Age', fontsize=16)\n", "axes[2].set_xlabel('Age')\n", "axes[2].set(ylabel=None)\n", "axes[2].grid(axis='x')\n", "\n", "plt.savefig('data/images/fig1.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Normally distributed and diverse ranges of weight, height, and age above." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAe8AAAHTCAYAAAAOMZAbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAABwRUlEQVR4nO3dd5wU9f3H8dfMbL3ej6PXox7SVbBQBFFsqGhCxJJCNMbEGI0mxp/EJCaWRGOJpohir6ixIyiCKIqFIoL0445yXL/b29s68/tj4eSk3+3e7M5+no/HKXe7O/PZK/ve73e+RTEMw0AIIYQQCUM1uwAhhBBCHBsJbyGEECLBSHgLIYQQCUbCWwghhEgwEt5CCCFEgpHwFqKNZKKGEMIsEt4WNGvWLH76058e9LZ169bRv39/Pvnkkw6uCu6//3769+/f6mPIkCFMmjSJ22+/Ha/X2+E1tdXChQu59dZbzS4DgPLycvr378/bb78d1ePedNNNrX5WAwYMYMyYMVx55ZVs2rQpKufo378/jzzySJseO2vWrAN+n777MX/+/KjUKUS8sZldgEguLpeLefPmtXweCAT4/PPPue+++9i9ezf33XefidUdvXnz5pGSkmJ2GTHXrVs37r77bgBCoRDV1dXMnTuXyy67jLfeeouMjAzTarv11lvxeDwtn19xxRWceeaZzJgxo+Vr3bt3N6M0IWJOwlt0KFVVGTZsWKuvjRkzhh07dvDiiy9SUVFBYWGhOcWJA7hcrgN+XkOGDGHixIksWrSI6dOnm1MY0Ldv31afa5pGp06dDqhXCCuSbvMkFw6HufPOOxk/fjxDhgzhzDPP5Jlnnml1n9LSUn72s58xfPhwRo0axQ033EBNTU3L7TfddBM/+9nP+PWvf82IESP41a9+dcx1DBo0CMMw2L17d8vXHn/8caZMmcKQIUOYNm0ab775Zstt+7qK582bx8SJExk3bhxffPEFAAsWLOD888/nuOOOY+LEiTz88MOtrk8vW7aMGTNmMHToUE455RT+8Y9/EA6HW26fOHEi//nPf7j11lsZM2YMI0aM4MYbb2xp5c2aNYtPP/2UxYsX079/f8rLywFYunQpl1xyCcOHD6ekpIRzzz2XBQsWtHqey5cv58ILL2To0KFMmzaNpUuXMmjQoFbdu0f6fh9KWVkZs2bNoqSkhDPOOIPXXnut5bbzzz//gEspfr+fkSNH8uSTTx7x2Ps7WGu7qamJO+64g4kTJzJ06FAuvPBCPvzww1b32bp1Kz/60Y8YPnw4kydPZunSpS23hUIhxo0bx2233dbqMRUVFQwcOJD333//mGrc55prruGss8464Ounn346d9xxR8vv0VtvvcUll1zC0KFDOfPMM1v9rgF4vV7++Mc/MnbsWIYOHcqsWbP4+uuv21STENEg4Z3kHnnkEV566SWuvfZaHnnkEU4++WTmzJnT8sJaVVXFzJkz2blzJ3feeSd/+MMfWLlyJT/60Y8IBAItx/nggw/w+/08+OCDXHzxxcdcR2lpKQBdu3YF4IEHHuCOO+7gzDPP5OGHH2bs2LFcd911vPXWW60e949//IPrr7+eG264gSFDhvDOO+9wzTXX0L9/fx544AEuvfRSHnjgAf7zn/8A8PHHH/OTn/yErl278sADD/CjH/2IRx99lD/96U+tjvuvf/2LhoYG/v73v3Pttdfyxhtv8NBDDwGR7tpBgwYxYsQInnvuOQoKCli9ejWzZ8+mX79+/POf/+See+7B7Xbz61//uiV4v/nmG37yk5+Ql5fH/fffz/Tp07n22mtbvXE42u/3wdx7770MGjSIf/7znxx33HFcf/31fPTRRwCce+65LFu2jNra2pb7v/fee/h8Ps4888zDHjcUChEKhQgGg1RUVHD77bdTUFDApEmTANB1nR//+MfMnz+f2bNnc//999O5c2dmz57d8nvk8XiYNWsW1dXV3HXXXcyePZubbrqp5Rw2m41p06bx9ttvt/p+vPbaa2RmZnLSSScdtsZDOffcc9m4cSPffPNNy9dWr17Ntm3bOPfcc1u+dssttzBgwAAeeOABBg8ezHXXXdfy5sMwDK666ireeOMNrr32Wv7xj3/gcDiYNWsW27dvb1NdQrSbISznkksuMWbPnn3Q277++mujuLjYWL58uWEYhvGTn/zE+OEPf9jqPn//+9+NFStWGIZhGHfffbcxcuRIo7q6uuX27du3GwMHDjRefvllwzAM48YbbzSKi4tb3edg7rvvPmPYsGFGMBhs+aiqqjJeeeUV47jjjjOuuuoqwzAMo76+3igpKTH+/ve/t3r8b3/7W2PSpEmGYRhGWVmZUVxcbPzhD39odZ9zzz3XuPTSS1t97c477zR++tOfGoZhGBdddJHxve99r9XtL7/8sjFgwACjrKzMMAzDmDBhgjFt2jRD1/WW+1x99dXGWWed1fL5d7/HL774onHNNde0Ou7atWuN4uJi47333jMMwzCuu+4647TTTjOCwWDLfR555BGjuLjYeOmllwzDOLrv93ft+15cf/31rb5+4YUXtnwvqqurjcGDBxvPPPNMy+1XXXVVy/flYPb9XL/70b9/f+PNN99sud+iRYuM4uJiY8mSJa0ef9FFFxnTp083DMMw5s2bZwwaNMjYuXNny+3vvPOOUVxcbPz3v/81DOPb3839j3POOecYf/zjHw9Z4/5Gjhxp3Hfffa2+FggEjBNOOMG4++67W772pz/9qeVnue97d+2117Z63AUXXGBccsklhmEYxpIlS4zi4mJj2bJlLbcHg0FjypQpxk033XRUtQkRbdLyTlKKogAwfPhwPvzwQ2bNmsW8efMoKyvjV7/6FaNGjQLgk08+YdiwYWRkZLS0wIqKiujTpw8ff/xxy/FycnLIyck54nm9Xi+DBw9u+Rg7diw33XQTJ5xwQkuX6cqVK/H7/YwfP77lnKFQiFNOOYWysjLKyspajtenT5+Wf/t8PtatW8eECRNanfOGG27g4Ycfprm5mdWrVzNhwoQDjqvreqsR+CUlJS3fI4BOnToddjT8BRdcwH333YfX62XNmjW89tprPPXUUwAtLeZPP/2U8ePHY7N9O9Rk6tSprY5ztN/vgzn99NNbfT5hwgRWr14NRH4+J510Em+88QYAdXV1LFmypFXr82C6d+/Oiy++yIsvvsgLL7zAww8/zOTJk7nuuut49913AVixYgWpqamcfPLJrR575plnsnbtWjweD1988QXFxcUUFRW13D5p0iQ0TWv5fODAgRQXF7fUuHHjRtavX88555xz2BoPx263M23atJZjhsNh3nzzzQOe97Rp01p9PnHiRL788suW3wu3283o0aNbfiYAJ510EsuXL29zbUK0hwxYsyC3233ILtZgMAhEBiIBzJ49G7fbzYsvvsjtt9/O7bffzpgxY7j77rspLCykrq6OVatWMXjw4AOOlZ+f3/Lv3Nzco6rN5XK1XGNVFAWn00lRURFpaWkt96mrqwPge9/73kGPUVlZSUFBwQHnra+vP2wtDQ0N6LrO3/72N/72t78d9Lj7uN3uVrcpinLYed1er5f/+7//a+nW79WrFwMGDAC+nQ9eW1t7wBucvLy8Vp8f7ff7YL77vHNycvB6vXg8HtLS0pg+fTq//OUv2b17N4sXL8blcjFx4sTDHtPpdFJSUtLqa6eeeipnnXUW//jHP5g8eTINDQ0HPI/9n1tTUxMNDQ1kZ2e3ul3TtAO+H9OnT+fBBx/kD3/4A//73//o1asXQ4cOPWyNR3LeeefxxBNP8OWXX+LxeKipqeHss89udZ/vfm9zcnIIBoN4vV7q6upobm5myJAhBxzbbre3qzYh2krC24Jyc3P56quvDnrbvgFh+16sNE3j8ssv5/LLL2fnzp0sXLiQ+++/n5tvvpn//ve/pKWlccopp/CLX/zigGOlpqYec22qqh4QBt+Vnp4OwIMPPnjQkee9evVqCfiD1fPdwV27d++mtLSUQYMGAXDVVVe1XK/d3743BG3xxz/+kWXLlvHvf/+b0aNH43A42LRpU6tBYwUFBQfU9t3P2/P9bmhoaPV5VVUVDoejZUrbhAkTyMjI4N133+X9999n6tSpOJ3OY3qeEPkZ9uvXj/feew+AzMxMqqqqDrjfvjdDWVlZZGVlsXnz5la3G4bR8oZrn7PPPpu7776bZcuWsWDBAs4777xjru+7hgwZQr9+/XjnnXdoamrihBNOOOD36ru/T9XV1TidTlJTU0lPTyc3N5d//etf7a5FiGiRbnMLGj16NJs2bWLLli0H3LZw4UK6dOnS0n35wx/+kL/85S8AdO7cmUsvvZTTTjuNXbt2ATBy5Ei2bNlC//79KSkpoaSkhOLiYh544AE+//zzmNR/3HHHYbfbqa6ubjlnSUkJGzdu5MEHHzzk49LS0iguLmbx4sWtvv7EE09w/fXXk5aWxoABAygrK2t1XLvdzt///vdWI92PRFVb/+msXLmSk08+mXHjxuFwOABaBmvta3mPHj2aDz74AF3XWx63aNGiVsdpz/d7/9HbhmHw7rvvMnr06JZaHQ5Hyyj0Tz/99Ihd5ocSDodZt24dPXr0aKm5qamp1fkB3nrrLQYPHozT6eT4449n48aNbNu2reX2jz/++IAeovz8fMaOHcvcuXMpLS09oIXcVueccw6LFi1i8eLFB33e3x3NvmjRIsaMGYOiKIwcOZKamhpSUlJa/d689tpr/O9//4tKfUIcK2l5W9BZZ53Fo48+yhVXXMFPf/pT+vbtS3V1NQsXLuTNN99s1WU8cuRIHnroIfLz8ykpKWHz5s28/fbbXHbZZUBk4YtXX32VH//4x1x66aXY7Xbmzp3LypUrufbaa2NSf05ODrNmzeKvf/0r9fX1DB06lPXr13PPPfcwadIk0tLSDtryBrj66qv55S9/yS233MLUqVPZsGEDjz/+OL/5zW9QFIVf/OIXXH311aSlpTF58mRqa2u59957UVWV4uLio64xIyODdevW8cknn3DcccdRUlLCe++9x8svv0xRURHLly9vWTnM5/MBkUsU5557Ltdccw0XX3wx27Zt4x//+Afw7ZuB9ny/X3rpJfLz8xkyZAgvvPACmzZt4v/+7/9a3Wf69Ok8++yzdOnSpWVcw+H4fD5WrlzZ8rnX6+WZZ56htLSU22+/HYDx48dz3HHHccMNN/CrX/2KoqIi5s+fz6pVq3j44YeBSNf13LlzufLKK/nVr36Fz+fjnnvuOWi38/Tp07nuuusYPXp0y+yD9jr33HO55557cDqdTJ48+YDbX3jhBXJychg+fDivvPIK33zzTcvlnQkTJlBSUsLs2bP5+c9/TlFREQsWLOCpp57iD3/4Q1TqE+KYmTpcTsRMfX298ec//9mYNGmSMWTIEGPMmDHGpZdeesCI4FAoZNx3333GxIkTjcGDBxunnnqqcc8997QaEb1x40Zj9uzZxrBhw4zhw4cbl1xyifH555+33H7jjTca06ZNO2JN+0abH41wOGz8+9//Nk477TRj8ODBxoQJE4y//e1vht/vNwzj21HCb7311gGPffPNN42zzjrLGDx4sDF58mTjiSeeaHX7okWLjPPPP98YMmSIccIJJxjXXXddq1HQEyZMOGAU+5/+9CdjwoQJLZ9/9tlnxsknn2wMGTLE+Pzzz43q6mrjmmuuMUaNGmWMGjXKuPjii43FixcbU6ZMMW655ZaWxy1dutQ455xzjMGDBxvTpk0zXnjhBaO4uNh45513Wu5zpO/3d+37Xrz44ovGjBkzjMGDBxtnn3228eGHHx70/qNHjz5gJP/BHGy0+XHHHWfMmDHDeOONN1rdt76+3rjllluM448/3hg6dKhx8cUXGx988EGr++zatcv42c9+ZgwbNsw45ZRTjJdfftkYO3Zsy2jz/Y9VXFxsPP/880escX8HG22+v3PPPdf49a9/3epr+753//73v40ZM2YYJSUlxgUXXGB89NFHB31+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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "body_type_values = user_data['body_type'].value_counts().values\n", "body_type_names = user_data['body_type'].value_counts().index\n", "\n", "body_type_circle = plt.Circle((0,0), 0.7, color='white')\n", "\n", "plt.style.use('seaborn')\n", "plt.figure(figsize=(8,8))\n", "colors = ['#DC7F8E', '#E5A1AA', '#F4BFBE', '#FFE0DA', '#F4C4B2', '#E8B08D', '#C68C73']\n", "\n", "# Plot a donut chart of user body type\n", "plt.pie(body_type_values, labels=body_type_names, colors=colors, autopct='%1.0f%%', startangle=40, pctdistance=0.85)\n", "p = plt.gcf()\n", "p.gca().add_artist(body_type_circle)\n", "\n", "plt.title('User Percentage by Body Type', fontsize=16)\n", "plt.savefig('data/images/fig2.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7wAAAGECAYAAAAV9SzeAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAABRwklEQVR4nO3deViU9f7/8dewqiwR2mIqpiVuhAtki6hpCx5PlpmaoLjv25FScUdTUcqtMMy9mgQ0tbKj55zSSg/G4Vd60ORIi+ZupmLCkCzC/P7wcr6RCzsjd8/HdXVd3uu8P/d8tHnN53PfY7JarVYBAAAAAGAwDvYuAAAAAACAikDgBQAAAAAYEoEXAAAAAGBIBF4AAAAAgCEReAEAAAAAhkTgBQAAFYYfgzCGP9P7+GdqK/BnQOAFAKAYwsLCNHz48BtuO3TokBo3bqzk5ORKrqpwDZMmTdITTzwhf39/BQcHKzo6Wunp6XapJyMjQ6+88opSU1Nvuk9MTIxatWpV7q/dqVMnPfbYY7p48eJ123bs2KHGjRvr5MmT5f66v7dlyxY1btzYbtf/RjIyMjR06FD5+/urbdu2ys3NvW6fP9ZdnPfRXk6ePKnGjRtf95+/v7+efvppLVy4UHl5eSU65zfffKNx48aVubbk5GQ1btxY3377bZnPBaBsnOxdAAAAKJuPP/5Y06ZNU6tWrfTyyy/r7rvv1uHDh7Vy5Up9/vnnWr9+vWrVqlWpNR06dEh///vfNWDAgEp93WvS09MVHR2tBQsW2OX1b0cff/yxdu/erQULFqh+/fpycXEp8hh7v4/F8fLLL+uRRx6xLV+6dEmffvqpVq1apfz8fEVERBT7XJs2bdJPP/1UEWUCsBMCLwAAVdiRI0c0Y8YMde7cWa+//rpMJpMk6dFHH1W7du30/PPPa/HixYqKirJzpZXLw8NDH374oZ577jk9/vjj9i7ntnDp0iVVr15dL7zwgr1LKVf169dXy5YtC63r0KGDjhw5oo8++qhEgReA8TClGQCAcpafn6/XXntNTzzxhPz8/NSlSxfFx8cX2ufYsWMaNWqUWrVqpcDAQE2cOLHQ9NfJkydr1KhReuWVV9S6dWuFh4ff8LXWr1+vgoICTZ482RZ2r/Hx8dGECRPUtGlT27qsrCxFR0erU6dO8vf3V48ePZSYmGjbfrOpmIGBgYqJiZF0ddrrI488oqSkJD3//PO2Nu7cudN2jn79+kmSevToocmTJ9/yen300Ufq2LGjWrRooeHDh+vYsWOSpO+++06NGzfWP//5z0L7f/LJJ/Lz87vhlOVrunTpoqZNm2rmzJm6fPnyTfe70bTqP05Rnzx5ssaNG6c1a9aoffv2atmypcaNGyeLxaJly5bp8ccf1yOPPKK5c+eqoKCg0LkSExPVuXNn+fv7q0+fPjp48GCh7eXVDyTps88+04svvqiWLVuqQ4cOWrp0qW1Kb1hYmGJiYnT58mU1btzY9l7eyq3ex/fee0/PPPOM/Pz89Ne//lXbt2+3bbs21XjHjh0aMGCAWrRooSeffFKffvqpfvzxR4WGhqpFixbq1q2bDhw4YDvuyJEjGjJkiAIDA9W6dWsNHjxYaWlpRdZ5M25uboWW8/Ly9Oabbyo4OFh+fn56+OGHNWbMGJ05c0bS1Wv94Ycf6ocffij0/l+4cEGTJk1SmzZt1KpVK40YMUInTpwodO5du3apW7du8vf3V+/evSt8yjyA4iPwAgBQztasWaPNmzdr/PjxWrNmjdq1a6dZs2bp3//+tyTp/PnzCg0N1enTp/Xaa69p9uzZSklJ0eDBgwvdV7lr1y7l5OTorbfe0ksvvXTD10pMTFTz5s1vOmW5T58+CgsLkyQVFBRoyJAh2rJli4YNG6aYmBjdd999GjZsmK224srKytLUqVPVp08frVixQnfeeafCw8P166+/qnnz5po5c6Ykaf78+Ro1atRNz3P58mUtXLhQ48aN02uvvaajR49q0KBBysvLU+PGjdW0aVNt27at0DGffPKJOnTooDvvvPOm53VyctKcOXN0+vRpvfnmmyVq240kJibqs88+05w5czRx4kRbuNy/f78WLFigF154QWazuVDwk6RXX31Vffv2tYXPAQMG2IJ6efaDDRs2aMyYMXrooYe0bNky9e3bV2vXrtWUKVMkSZGRkerRo4eqVaumDRs2qGfPnkW2+Wbv47JlyxQdHa0uXbro7bff1uOPP66XX35Z//jHPwodP23aNLVt21bLly/Xvffeq4iICI0ePVp//etftWjRIlksFk2cONG2/+jRo5Wfn68lS5ZoyZIlunjxooYPH678/Pxb1llQUKArV67oypUrysvL0/nz5/XOO+9oz549eu6552z7zZ8/X++//76GDh2qtWvXavz48UpKSrLNfhg1apQ6dOigevXqacOGDWrevLmys7PVr18/7d27V9OnT9drr72m8+fPq2/fvrp06ZIkKSUlRSNHjlSDBg20bNkyPfbYY5o1a1aR1xdA5WBKMwAA5eybb76Rn5+funXrJkl65JFHVK1aNVWvXl2S9O677yonJ0dr166Vt7e3JNkeNLV9+3bbcVeuXNGrr75q2+dGzp49q2bNmhWrri+//FL79u3T6tWr1a5dO0lXp36+9NJLWrJkiW1dceTl5WnixInq0qWLJKlmzZp6/vnnlZycrODgYD344IOSpEaNGsnHx+em57FarXr99df12GOPSZIaNmyorl27atu2berWrZu6deumRYsWKTMzUx4eHkpPT9eePXu0ZMmSImt86KGHFBYWpnfffVfPPvusmjdvXuz2/dFvv/2mN998U3fffbckaevWrfrxxx+1efNmubu7q3379vrHP/6h/fv369lnn7UdFxERYQuXLVu2VKdOnRQXF6fRo0eXWz8oKCjQ0qVL9de//tUWtIKCguTh4aHIyEgNGTJETZo00b333isHB4frpv/ejLu7+3XvY0ZGhlauXKkhQ4Zo/PjxttfKysrSokWL9Je//MV2fOfOnTV06FBJV2c9DBkyRF27dlWfPn0kSRcvXtT06dOVkZGhK1eu6MiRIxo9erStH9auXVt///vf9dtvv8nDw+Omdd5o1Pvuu+/WyJEjNWLECNu69PR0TZo0ST169JAktWnTRj/99JM++eQTSVdnRHh7e+v06dO2a5SQkGDb54EHHpAkPfbYY+rYsaPMZrPGjBmj1atX6/7779fixYtlMpnUvn17ZWZmymw2F+s6A6hYjPACAFBOrk0pbtWqlRITE21h68SJEwoPD1dgYKCkq1NFW7ZsKU9PT9vIVO3atfXAAw8oKSnJdj5vb+9bhl1JcnBwuG4a7c18/fXXcnNzuy7YdunSRampqbJYLCVpbqHgdO+990rSLacP34iHh4ct7EpXg1W9evVsU6q7du2qgoICffbZZ5Kk7du3y83NTU888USxzv+3v/1N9957r6ZPn17kSOGt1K5d2xZ2pasBv0GDBnJ3d7et8/LyUmZmZqHjgoODbX/29vZWy5YtbW0rr35w+PBhpaenq3PnzoXWXwve33zzTSlafGMpKSnKycnRE088Yav5ypUrat++vU6cOFFoqq+/v7/tz9dmIDz00EO2dddG6DMyMuTl5aX7779fM2bM0NSpU/Wvf/1LderU0csvv3zLsCtJEyZM0KZNm7RhwwaFhobK1dVVkyZN0rhx4wo9mGvp0qXq0aOHzp49q6SkJK1fv1779u274dOqr0lOTlb9+vVVv359W1urVaumgIAA/ec//5Ek7du3T+3atSt0S8EzzzxTnMsJoBIwwgsAQDFUr179ph+Mr90nWa1aNUnSsGHDVL16dW3atElRUVGKiopSmzZttHDhQt1zzz369ddftX///huOON511122P9esWbPIuurUqWO7B/FGfv31V7m6uqp69erKyMi44dTna+uysrKKfL3fu9Ze6WrwllTs8H3Njdro7e2tX375xba9Xbt22rZtm7p3765PPvlEnTt3LtYThiWpRo0amjVrloYOHap169bp/vvvL1F91/zxflBJthH7m3F2dpanp2ehdd7e3jp69KgklVs/uDa19o/7ubu7y9XVtcRfZNzKr7/+Kknq3bv3DbefO3fO9sXAja7Z7/vM7zk4OOidd95RTEyMdu7cqc2bN6tatWoaPHiwxo4de9396b9Xr149W5Bu2bKlLl++rIiICHl7e6tt27a2/fbt26dZs2bpu+++k4eHh5o2bSpXV9ci23vkyJEbvkfX+lJGRsZ10+sr+6noAG6OwAsAQDHUrFnzugcOXfPzzz9L+r+Q4ujoqAEDBmjAgAE6ffq0duzYoZiYGE2bNk2rV6+2TYG90e993igk3Mrjjz+u999/X+np6TccBXzjjTe0detW7d69W3fccYfOnz9/3T7nzp2TdHWE8lqwsFqttu1Wq7XEI7fFlZGRcd268+fPy9fX17b8/PPPa8KECfr++++VkpKiSZMmleg12rdvr2effVYxMTG2abjXmEym60J6SYP/zeTl5eny5cuFgvH58+fl5eUlSeXWD66d78KFC4XWZ2RkKCcnx7a9PFwbbX3rrbd0zz33XLe9QYMGtlBcUrVr11ZUVJQKCgqUkpKiDz74QG+99ZYefPBB29T54pg6dap27dqladOmafv27apRo4YyMzM1YsQItW7dWjExMapfv74k6bXXXrvlg7E8PDzUpEkTzZ0797pt17508fLyuu7al/YaACh/TGkGAKAYHn74Yf344486cuTIddt27NihOnXqqHbt2pKkQYMGaf78+ZKk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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set_style('whitegrid')\n", "fig, axes = plt.subplots(ncols=2, figsize=(16, 6))\n", "\n", "axes[0] = plt.subplot2grid((1, 5), (0, 0))\n", "axes[1] = plt.subplot2grid((1, 5), (0, 1), colspan=4)\n", "\n", "# Categorize rating count into binary classes\n", "item_count_data = user_data.copy()\n", "item_count_data['rating_count'] = item_count_data['rating_count'].apply(lambda x: 'Only one' if x==1 else 'More than one')\n", "\n", "# Plot the distribution of binary classes\n", "sns.countplot(x='rating_count', data=item_count_data, palette=['#5d2349', '#861d23'], order=['Only one', 'More than one'], ax=axes[0])\n", "axes[0].set(xlabel=None)\n", "axes[0].set_ylabel('User Count')\n", "\n", "rating_count_data = user_data.loc[(user_data['rating_count']>=2) & (user_data['rating_count']<=10)]\n", "\n", "# Show the distribution of the second class\n", "sns.countplot(x='rating_count', data=rating_count_data, palette='Reds_r', ax=axes[1])\n", "axes[1].set_title('User Count by Number of Items Rated', fontsize=16)\n", "axes[1].set_xlabel('Item rating count', fontsize=12)\n", "axes[1].set(ylabel=None)\n", "\n", "plt.savefig('data/images/fig3.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Overall, two thirds of users rented only one item and the remaining third rented more than one, on the left chart. Majority of those who rented more than once rented exactly two items, on the right chart." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA4QAAAFOCAYAAADeotPAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAAByPUlEQVR4nO3deVxVdf7H8de5K3C5gGtpSWWJmbuYy6SWbVaTZZYVlDXVtNiqpaMtZo6WY6WVlm3TTDOU26+almmZJivNNCtLTUZbqNxwQVzgXrj7+f1B3CRBUIF7gffz8eCh99wv537O91748jnfzTBN00RERERERESaHEusAxAREREREZHYUEIoIiIiIiLSRCkhFBERERERaaKUEIqIiIiIiDRRSghFRERERESaKCWEInVMC/k2DnofRaQx0+84aez0Ga+aEkKpsZEjR3LjjTdW+ty6devo2LEjK1asqOeoKsbwpz/9idNOO41u3boxZMgQpk+fzq5du2IST1FREXfddRe5ublVlpk9ezY9e/assxguvPBCOnbsyJo1a+rsNeLNyJEj6dixY4Wvk046iX79+jFq1Cjy8vIO6nyVvY8dO3bkhRdeqO3QRaQWqK06OGqrYqO226rqTJgwgfPPP79Wz3kgmzdvpmPHjrz33nv19poH8v3333P11VdHH69YsYKOHTvyzTffxDCq+GGLdQAiteGNN97g3nvvpWfPntx55520bt2avLw8nnvuOT788ENefvllWrZsWa8xrVu3jn//+9/84Q9/qNfXLfftt9/y7bffcsIJJ/DKK6/QrVu3mMQRC7169WL8+PHRx4FAgPXr1/PUU09x3XXX8Z///Aen01mjc1X2Pi5YsIC2bdvWdtgi0siprdqf2qraaauqc/PNN1NSUlIr52qI3nvvPSV/B6CEUBq8H3/8kYkTJ3LOOefwyCOPYBgGAP369WPgwIFceOGFzJw5k4ceeijGkdav119/nRNPPJFhw4Yxa9YsJkyYQFJSUqzDqhcpKSn06NGjwrE+ffqQkJDAxIkT+eyzzzj11FMP+fy/PbeISHXUVlVObVWPCsdqs63aV3p6eq2cRxonDRmVOhEOh3n44Yc57bTT6NKlC+eddx7z5s2rUGbDhg3cfPPN9OzZk969ezNu3LgKQ2YmTJjAzTffzF133UWvXr0YM2ZMpa/18ssvE4lEmDBhQrSBLZeens7YsWPp1KlT9JjX62X69OmcfvrpdOvWjUsuuYSlS5dGn69qGEHv3r2ZPXs2AK+99hp9+/Zl+fLlXHjhhdFrXLRoUfQcV111FQCXXHIJEyZMOGB9vf766wwePJju3btz4403smHDBqDszmllQy7eeustunTpwu7duys9Xzgc5q233mLgwIGce+65lJaW8u677+53jV9//XWF73vppZfo3r07Xq8XgLVr13L11VfTvXt3+vXrx5QpUygtLY2WHzlyJBMnTuS6666jV69eTJ8+HYA1a9Zw/fXX07t3b7p06cKQIUOYP39+hddav349V111FT169OCMM87gjTfe4KyzzorWMUBhYSF/+tOf6NOnDz179uSmm25i06ZNB6zLA0lOTt7v2CeffMKVV15Jz5496dq1KxdeeCHvv/9+tJ4qex/3HTI6e/Zshg8fzr///W+GDBlC165dufjii/nqq68qvM67777L+eefH/3MffDBBzEfuibS1KmtUlvVUNqqA30Oa1JPvx0yGgqFeOKJJzjttNPo2rUrw4cPZ/ny5QDs3r2bTp068dprr0XLl7dZr776avTYe++9R+fOnSkuLj7ka63Jz9ftt9/OP/7xDwYPHky3bt0YOXLkfkNqX375Zc466yy6devGH/7wB/71r3/RsWNHNm/ezOzZs3nyyScpKSmhY8eOFa5r/fr1ZGVl0bVrV8444wz+7//+75CvpSFTQih14oUXXuDVV19l9OjRvPDCCwwcOJAHHniATz75BICdO3eSnZ1Nfn4+Dz/8MJMnT2bVqlVcd911BAKB6HkWL16M3+/nqaee4rLLLqv0tZYuXUrnzp2rHGZzxRVXMHLkSAAikQh//OMfee2117jhhhuYPXs2bdu25YYbbojGVlNer5d77rmHK664gmeffZZmzZoxZswY9uzZQ+fOnbn//vsBmDZtGjfffHOV5yktLeXRRx/l9ttv5+GHH+bnn3/m2muvJRgM0rFjRzp16sTbb79d4XveeustTj31VJo1a1bpOT/99FMKCgoYOnQoRxxxBP3796/wS65Pnz4ceeSR+zXe7777LoMHD8blcvHDDz9w5ZVXYhgGjz/+OGPHjuWdd95h9OjRFb7ntdde4+ijj2bWrFmce+655Ofnc9VVV5GUlMQTTzzBU089xXHHHcekSZNYv349UPb+X3XVVfj9fmbOnMn111/Pgw8+yNatW6Pn9fl8XHXVVaxcuZL77ruPhx9+mJ07d3LllVeyd+/eA743pmkSCoWiX16vlxUrVvDYY4/Rtm1bevfuDZT9MXDDDTfQoUMH5syZw2OPPUZiYiJ33XUXu3btqvH7+PPPPzNr1ixuvfVWZs+ejd/v54477iAUCgGwZMkSxowZQ9euXXnqqaf43e9+x1133XXAaxCRuqe2Sm1VQ2irqvsc1qSefmvixIn8/e9/56qrruKpp56iffv2XH/99Xz11Vc0a9aMrl278tlnn0XLl9+8/PLLLyu8fz179sTtdh/wOqtS05+vZcuW8frrr3PvvffyyCOPsGHDhgo3LxYsWMCUKVM488wzeeqpp0hPT49+rgFGjBjBJZdcQkJCAgsWLOC0006LPvfQQw9xzjnn8Oyzz9KxY0cmTpwYff+bEg0ZlTrx5Zdf0qVLF4YNGwZA3759SUhIIDExEYB//OMf+P1+/va3v9G8eXOA6OT6d955J/p9oVCIP//5z9Eyldm+fTsnnXRSjeL6+OOP+eqrr/jrX//KwIEDATj11FO57LLLeOyxx6LHaiIYDDJu3DjOO+88AFq0aMGFF17IihUrGDJkCCeccAIAHTp0OOBQDdM0eeSRR+jfvz8A7du3Z+jQobz99tsMGzaMYcOGMWPGDIqLi3G73ezatYtPP/2Uxx57rMpzvvHGG5x00klkZGQAZRP2//SnP5GXl8fxxx+PYRicd955vPvuu9G71Tt27OCrr76K3vWcM2cOLVq04LnnnsPhcABw7LHHcsUVV/DFF19w8sknA+Byubjvvvuw2+1A2R9GPXr04NFHH40e6969O3379uXLL7/kxBNPJCcnh0gkwvPPP09KSgoAzZo14/bbb49ew+uvv85PP/3EW2+9xfHHHw9A//79GTx4MDk5Odx6661VXv/ixYvp3LlzhWMJCQn079+fu+++O9o4fv/995x11llMmjQpWq5t27ZcdNFFrF69msGDB9foffR6vbz44ovRuS/hcJibb76Z9evX06VLF+bMmcPJJ5/MtGnTABg4cCBer5eXXnqpymsQkbqntkptVUNoq2ryOayunvaVl5fHa6+9xtSpUxkxYgQAgwYNoqCggMcff5x//vOfDBo0qEJy/vnnn3PSSSexcuXK6LFPP/2Uyy+/vMrrq05Nf768Xi/PPvssrVu3Bsp+lh588EF2795Ns2bNeOqppxg2bFh0PubAgQPZsWMHH330EQBHHnkkRx55JBaLZb8huqNGjYouNnPSSSfRt29fPv/8c0488cRDvq6GSD2EUqvKh8H07NmTpUuXMnLkSP7xj3+wadMmxowZE73btWLFCnr06EFKSkr0zlibNm04/vjjo0MWAJo3b37ABhbAYrEQiURqFN8XX3yBy+XarzE977zzyM3NxePxHMzlVvjFcuSRRwJUGKZSE263O9rAQlmj3K5du+gwoKFDhxKJRPjvf/8LwDvvvIPL5apwh2tfHo+HRYsWcdZZZ1FUVERRURH9+vUjMTGxwi/3888/n61bt7J69WqgbOhHcnIygwYNAsreo1NOOQWLxRJ9j3r06EFycnKF9yg9PT3amELZHy0vvvgikUiE9evX89577/H8888DRO/4rVixgj59+kQbWIAzzzwTm+3Xe1QrVqzgmGOO4Zhjjom+fkJCApmZmRXuWlYmMzOTV155hVdeeYVp06aRlpbG4MGDmTVrFsccc0y03MUXX8ysWbMoKSnhm2++4a233uLll1+uEGtN2Gw2unTpEn2872fB7/ezevVqzjjjjArfc84559T4/CJSu9RWqa1qSG1VTT6H1dXTvj7//HOgLAnct4fy1FNP5auvviIQCDBw4EC2bdvGzz//zN69e/nuu++47rrr2LBhAwUFBfz0009s2bLlsOY41vTnq23bttFkECp+hn/++We2b9/OmWeeWeHcNW1j9109Ny0tDZfLRVFR0SFfU0OlHkKpscTExCr/SA4Gg0DZnS2AG264gcTERF555RUeeughHnroIfr06cOjjz7KEUccwZ49e1i9evV+d8YAWrVqFf1/ixYtqo3rqKOOqjB847f27NmD0+kkMTGRoqKiSofrlB8rn49QU+XXC2WNPVDjBr9cZdfYvHlzduzYEX1+4MCBvP322wwfPpy33nqLc845J3on9Lfee+89SktLeeKJJ3jiiScqPPf6669z55134nA46Ny5M8cddxzvvfcePXr04N133+Wss86KnnfPnj0sWLCABQsW7PcaBQUFVcYfDof5y1/+woIFCwgGg6Snp0f/uCrfA2j37t3Ru9LlrFZrhWFFe/bs4ccff6z0M3LsscdWeu3l3G43Xbt2BaBr1660adOGa665BofDwcMPPxwtV1JSwv333x+ds3LcccdF7woezH5FDocj+v5Dxc/C3r17iUQi+/2xWJPPtogcPLVV+1Nb1bDbqpp8Dqurp33t2bMHoNJksfy6u3btSrNmzVixYgUtWrSgZcuWnHPOOUycOJGVK1eyc+dOjjzySDp27HjAazyQmv58lffYl9v3M1w+P/W3w5Jr2sbu+7NRfu6muF+hEkKpsRYtWrB27dpKn9u2bRvw6w+w1WrlD3/4A3/4wx/Iz8/ngw8+YPbs2dx777389a9/jd612nfYRbnKxrofyO9+9zteeukldu3aVekd2ieeeII333yTJUuWkJqays6dO/crU95opKWlRe8c7/sLwTTNg76bWlOV3YnauXNndAgNlA2jGTt2LN999x2rVq3iT3/6U5Xne+ONN+jWrRtjx46tcPyHH37gz3/+M4sWLeLcc88Fyu4ovvbaa1xzzTV8/fXX3HbbbdHyycnJnHHGGWRlZe33GlXNBwF4+umnWbhwIdOnT+fUU08lKSmJ0tJSXnnllWiZ1q1b77fnViQSiTZSUNZQnnjiiUydOnW/16jqD4yq9O/fn0suuYT/+7//45xzzuH0008HYMqUKXz66ac899xznHzyyTgcDn744Qfeeuutgzr/gbRo0QK73b7f9cZqzzGRxk5tldqqco2lrarp5/BA9bQvt9uNYRjMmzevQm9nuWbNmmGxWDjllFNYsWIFrVq1onfv3thsNnr27MmXX37Jli1bqkwoa6o2fr7Kew5/u3CR2tiDoyGjUmMnn3wyP/zwAz/++ON+z33wwQccddRRtGnTBoBrr702Ol+qbdu2XHXVVZx55pnRu6OZmZn8+OOPdOzYka5du9K1a1cyMjJ48sknK4xPr4ns7GwMw2D69On73dXJy8vj9ddf54wzzsDlcpGZmYnX691vUv67775L586dcTqd0dW9yu96AqxatSq6QEhNWa3WGpXbtWtXhQ2Bc3Nz2bx5M3369IkeO+OMM0hKSmLy5MkcffTRZGZmVnqu/Px8vvjiCy688EL69u1b4evyyy+nVatWFRq7888/ny1btvD000/TsmVL+vbtG32u/D3q0qVL9D1q06YNM2bM4Pvvv6/yelatWkWXLl0499xzo0uHl9d3+ftz8skn8/nnn1cY9rRkyZLo3Xso259p8+bNHHXUUdHX79KlCy+++CIff/xxTaq2gjvvvBO3281f/vKXaO/BqlWrGDhwIKecckq04f5trDV9H6titVrp0aMHH374YYXj5av8iUjtUlultqqxtVU1/RweqJ72lZmZiWmaeL3e6Pm6du3K8uXLefHFF6NJ4sCBA/n8889ZuXJltPe0d+/efPbZZ3z++eeHvSVGbfx8tWnThqOOOmq/NvW3j/cdxSP7Uw+h1Nj555/P3//+d6655hpuvPFGTjjhBAoLC/nggw945513mDFjRrRsZmYmTz/9NK1ataJr167k5eXx3nvvRSfuXnPNNbzxxhv88Y9/5KqrrsJut/O3v/2NVatW7bcyWHWOOeYY7r77bqZMmcL27dsZMWIEzZs3Jzc3l7/+9a8cccQR3HPPPQCcdtppdO/enXHjxjFmzBjatGnDa6+9xurVq3nmmWeAsi0FjjjiCJ544glsNhsej4dZs2Yd9Cpa5eUXL15MUlJSdLL5bzkcDu68807Gjh1LMBjk0Ucf5cQTT2TIkCEVypx77rksWLCAW265pcrXfP311zEMg7PPPnu/56xWK+eeey4vvfQSW7Zs4aijjuLYY4+lS5cuLFy4kOzs7Ap/GNx8881cfvnl3HHHHVx88cUEAgHmzJnD1q1bD7gwQteuXXn++ed56aWXyMjI4JtvvuGpp57CMAx8Ph9QtgT4Sy+9xA033MD111/Prl27ogsPlN/1vuSSS8jJyeHaa6/lhhtuIC0tjQULFvD+++9zwQUXVPn6VWnevDk33ngjjz76KDk5OVx33XV07dqVDz/8kH/961+0adOGzz77LLqdRHmsNX0fD+SWW27hmmuu4b777uOcc85h1apV0QVl1EiJ1C61VWqrGltbVdPP4YHqaV+dOnViyJAhjBs3jltvvZXjjz+ezz//nKeffpo//vGP0XZp4MCBTJgwgYKCguj+mCeffDJPPPEEdru9wpzSqixevDjaM1/OZrNx5ZVX1srPl8Vi4eabb2bixIm0aNGC/v37s3jxYj744IPo81C252NpaSkffPBBdAE42YcpchD27t1rPvjgg+YZZ5xhdunSxezTp4951VVXmUuWLKlQLhQKmbNmzTJPP/10s3Pnzuapp55qPvbYY2YwGIyW+f77780bbrjB7NGjh9mzZ0/zyiuvNFeuXBl9fvz48ebvf//7Gse2dOlS8/rrrzdPOeUUs2vXruaQIUPMRx55xNyzZ89+1zBx4kSzb9++Zrdu3czLLrvMXLx4cYUyK1euNIcPH2527tzZHDJkiPn++++bF110kTlr1izTNE3z1VdfNTMyMszCwsIK583IyDBfffVV0zRNMxwOm+PGjTO7dOli3njjjZXGPGvWLHPIkCHmvHnzzFNOOcXs0aOHeccdd5g7d+7cr+x///tfMyMjw/zpp5+qrIMhQ4aY2dnZVT6/evVqMyMjw3ziiSeix/7+97+bGRkZ5tdff71f+S+//NK88sorzW7dupknn3yyeeONN5rfffdd9Pkrr7zSvOGGGyp8T0lJiXnvvfeaffv2NXv06GEOGzbMfO2118xrr73WvPbaa6PlvvnmG/Oyyy4zu3TpYp5++unmv//9bzMjI8P829/+Fi2zdetWc8yYMebJJ59sdu/e3bzkkkvMDz/8sMrrqyqmcn6/3xw8eLCZmZlpFhYWmoWFheZtt91m9u7d2+zdu7d52WWXmR9//LF59tlnmxMnTjRNs/L3MSMjw/zrX/9qmmbZe9ijR48Kr/O///3PzMjIMD/77LPosTfeeMM8++yzzc6dO5sjRoyI1vvatWsPeD0icvDUVqmtakxtlWlW/zmsrp5++zn1+/3mww8/bA4aNMjs3LmzefbZZ5vPP/+8GYlEKnzfRRddZPbp0yd63O/3m127djWvvvrqA17fpk2bzIyMjEq/unTpEi13KD9f5Z+xTZs2Vbju0047zezcubN5zTXXmLNmzTIzMjLM3bt3m6ZpmoWFhdGfleeee8787LPPzIyMDHPNmjUVzp2ZmRn9+WlKDNNsgjMnRRqgBx54gG+//Xa/TZMboq+//hqfz1fh7uJPP/3EOeecw5w5c/ZbkbOh++CDD0hPT68w12bBggU88MADrFixosIKdiIiDZnaKqlvb731Fj169KBdu3bRYzNnzmTBggXR/RPlwDRkVCTOvfLKK6xbt46FCxcyc+bMWIdTKzZu3Mi9997LnXfeSdeuXdm5cyfPPPMMxx57LAMGDIh1eLXuo48+YunSpdx11120adOGvLw8HnvsMS644AIlgyLSKKitklh59dVXee6557j11ltp1qwZ33zzDf/4xz+47rrrYh1ag6EeQpE498ADD/DGG28wYsSI6PySxuDFF19kwYIFbNmyBZfLxSmnnMK4ceM44ogjYh1arfN6vcyYMYNFixZRWFhI69atGTp0KLfccstBr0InIhKP1FZJrBQUFPDII4/w6aefUlRUxFFHHcWll17KNddcE53rKQemhFBERERERKSJ0vJ2IiIiIiIiTZQSQhERERERkSZKCaGIiIiIiEgTpYRQRERERESkiVJCKCIiIiIi0kQpIRQREREREWmilBCKiIiIiIg0UUoIRUREREREmiglhCIiIiIiIk2UEkIREREREZEmSgmhiIiIiIhIE6WEUEREREREpIlSQigiIhIDq1evZuTIkQAUFhYyatQorrjiCi6//HI2btwIwMKFCxk+fDiXXnopH330EQA+n4/bbruN7Oxsrr/+enbt2gXAqlWrGDFiBJdffjlPPvlkbC5KREQaHFusAxAREWlqnn/+ed58800SExMBeOSRRxg6dCjnnXcen332GT/++COJiYnk5OTw6quv4vf7yc7O5pRTTmHevHlkZGRw22238fbbbzNnzhzuu+8+Jk2axOzZs2nXrh033HADubm5dO7cOcZXKiIi8U49hCIiIvUsPT2d2bNnRx9/9dVXbN++nT/84Q+89dZb9OnThzVr1tCzZ08cDgdut5v09HTWr1/PypUrGThwIACDBg1i+fLleDweAoEA6enpGIbBgAEDWL58eawuT0REGhD1EIqINGE78nYQCoRiGoPNYaP18a1jGkN9GzJkCJs3b44+3rJlCykpKbz44os8+eSTPP/88xx77LG43e5oGZfLhcfjwePxRI+7XC6Ki4vxeDwkJydXKLtp06Zq48jNzcXn89XilcWO0+kkZHVT6g9WWzbRaccWLsbv99dDZCIisZeZmVnlc0oIRUSasFAgRMgf24RQIC0tjdNPPx2A008/nccee4wuXbrg9XqjZbxeL263m+Tk5Ohxr9dLSkpKhWP7Hq9OQxxSGgiF2V3kx26z4E5yYLf9OtgpL38vCaFIteew2ywc3/aYugxTRKTB0JBRERGRGMvMzGTx4sUAfPHFF5xwwgl069aNlStX4vf7KS4uJi8vj4yMDHr16hUtu2TJEjIzM0lOTsZut7Nx40ZM02Tp0qX07t07lpdU60r9IT773zbeXbGRz9Zt55NvtvLuig18+e0O9noDsQ5PRKTBUg+hiIhIjI0fP5777ruP+fPnk5yczIwZM0hNTWXkyJFkZ2djmiZjxozB6XSSlZXF+PHjycrKwm63M2PGDAAmT57M2LFjCYfDDBgwgO7du8f4qmrPzr2lfLF+B4FQhLRkJ63TEglHIuzYU8qWnV627PRyXJsUEhzWWIcqItLgGKZpmrEOQkREYiN/XX7Mh4zanDbadmob0xgkfu31Blj6TT6RiEnn41pw3JFuDMMAwDRNtu8uJffnXXhKg9htFo5snkSS88D3u8uGjKbWR/giInFPQ0ZFREQkLvkCIVb8bxuhsEmvjNa0b5MSTQYBDMPgyOZJnNbjKDKOTiMYirBph4fCIh+63y0iUjNKCEVERCTumKbJ6rxCSgNhOqU346iWrirLWi0GnY5pxnFt3NisBjv3+thaWEIkoqRQRKQ6mkMoIiIicSd/p5dtu0pISrBhsZStIHogSU4rrgQ7xxzhJn+nl+LSIOGdXo5q6cJiMQ74vSIiTZl6CEVERCSuBENh1vxUiGHAEWmJhMImwVCkmq+y3kCb1UK71skkJ9op8YfYXOAhouGjIiJVUkIoIiIiceX7zXsJBCO0TkvEYT/4lUMNw6BtiyTciXZKA2G27yrVnEIRkSooIRQREZG4UeoP8ePWIhIcVlqkJBzyecoXnEmwWykqCbDHo70KRUQqo4RQRERE4sa3m/YQjpicmN7ssOf+WSwGbVu6sFoMCvaWEgpHailKEZHGQwmhiIiIxAVfIMTGHcW4Euy0a51cK+e02yy0TE3ANKFgT2mtnFNEpDFRQigiIiJx4aetRZgmnHBUChaj9lYGTXU5cNqtFJUEKfWHau28IiKNgRJCERERiblQOMJP24px2Cy0a1U7vYPlDMOgdVoiALuKfbV6bhGRhq5O9yF89tln+fDDDwkGg2RlZdGnTx8mTJiAYRh06NCBSZMmYbFYWLhwIfPnz8dmszFq1CgGDx6Mz+dj3LhxFBYW4nK5mD59Os2bN2fVqlU8+OCDWK1WBgwYwK233lqXlyAiIiL1YNMOD8FQhIyj07Baa/9+daLTSoLdiqc0RCAYrvXzi4g0VHXWQ7hixQq+/vpr5s2bR05ODtu2bWPatGmMHj2auXPnYpomixYtoqCggJycHObPn88LL7zAzJkzCQQCzJs3j4yMDObOncuwYcOYM2cOAJMmTWLGjBnMmzeP1atXk5ubW1eXICIiIvVk4w4PBnBcG3ednN8wDNLcTgB2Ffvr5DVERBqiOksIly5dSkZGBrfccgs33XQTp512Grm5ufTp0weAQYMGsWzZMtasWUPPnj1xOBy43W7S09NZv349K1euZODAgdGyy5cvx+PxEAgESE9PxzAMBgwYwPLly+vqEkRERKQeeEuD7PH4aZmWSIKj7gYvuZPsWC0Gu4v9hCNacVREBOpwyOju3bvJz8/nmWeeYfPmzYwaNQrTNDF+mSTucrkoLi7G4/Hgdv96N9DlcuHxeCoc37dscnJyhbKbNm06YBy5ubn4fJovICLyW06nE6fPSaA0tvuzOUIO1q5di99/+L02mZmZtRCR1LfNO70AHN3SVaevYzEMUl0OdhX72b6rlLZ1/HoiIg1BnSWEaWlptG/fHofDQfv27XE6nWzbti36vNfrJSUlheTkZLxeb4Xjbre7wvEDlU1JSTlgHJ07d67lKxMRaTzy1+XjtDljGoPNaaNDpw4xjUFia8tODxbDoE2Luk/Q3El2dhX7yS/0KiEUEaEOh4xmZmbyySefYJom27dvp7S0lP79+7NixQoAlixZQu/evenWrRsrV67E7/dTXFxMXl4eGRkZ9OrVi8WLF0fLZmZmkpycjN1uZ+PGjZimydKlS+ndu3ddXYKIiIjUsSJvgOKSIEc0S8Ruq/vFz512K3abhW27SjRsVESEOuwhHDx4MF988QWXXHIJpmly//33c/TRRzNx4kRmzpxJ+/btGTJkCFarlZEjR5KdnY1pmowZMwan00lWVhbjx48nKysLu93OjBkzAJg8eTJjx44lHA4zYMAAunfvXleXICIiInVs++4SgHrrrTN+GTa6c6+PHbtL66VXUkQknhmmaZqxDkJERGIjf10+oRhv1G1z2mjbqW1MY5D6s2lHMYHQrz1zP28rwlMa4sT0NGz7bDeR5LRS4g8TDNWsFy/JaSMYjtSofDAc4cf8Io5ulUxmRquDvwgRkUakTvchFBEREdlXIPRr0maaJl5fCIfNgmlSIZkL1sFehOUSHVYSHVa27SohYppYflnwTkSkKar7wfoiIiIilSgNhDFNSEqo3/vThmFwRPMkQuEIe7QnoYg0cUoIRUREJCZKfGXDlZOc9T9gqVVaIgA79pTW+2uLiMQTJYQiIiISEyX+IFD/PYQArVITMFBCKCKihFBERETqXSRiUuoP47RbsVrq/88Ru81KM7eT3cV+gqFwvb++iEi8UEIoIiIi9c4fLEvCEp3WmMVQPmy0YK8vZjGIiMSaEkIREZEYWL16NSNHjqxw7K233uKyyy6LPl64cCHDhw/n0ksv5aOPPgLA5/Nx2223kZ2dzfXXX8+uXbsAWLVqFSNGjODyyy/nySefrL8LOUTlCWGCI3YJYevyeYS7NWxURJouJYQiIiL17Pnnn+e+++7D7/91hct169bxyiuvUL49cEFBATk5OcyfP58XXniBmTNnEggEmDdvHhkZGcydO5dhw4YxZ84cACZNmsSMGTOYN28eq1evJjc3NybXVlO+QFlC6LTHbgesNLcTm9Vg514lhCLSdCkhFBERqWfp6enMnj07+nj37t08+uij3HPPPdFja9asoWfPnjgcDtxuN+np6axfv56VK1cycOBAAAYNGsTy5cvxeDwEAgHS09MxDIMBAwawfPnyer+ug+EPhDEApz12f4pYDIMWKQl4fSFK/aGYxSEiEktKCEVEROrZkCFDsNnKesbC4TD33nsv99xzDy6XK1rG4/Hgdrujj10uFx6Pp8Jxl8tFcXExHo+H5OTkCmWLi4vr6WoOnmma+INhHHYrRow3hW+RkgBAYZHmEYpI0xS7cRoiIiJCbm4uGzZs4IEHHsDv9/PDDz/w4IMP0q9fP7xeb7Sc1+vF7XaTnJwcPe71eklJSalwbN/jNXltn6/+EiGn00lxKAFPaRCTBCIhP/n5nkrLNkt1EQqFKfbWLL6DKZ+Y4KB01yb8fj+BiBVIZX3eJrZvLDmYyxERaTAyMzOrfE4JoYiISAx169aNt99+G4DNmzdz5513cu+991JQUMDjjz9elrQEAuTl5ZGRkUGvXr1YvHgx3bp1Y8mSJWRmZpKcnIzdbmfjxo20a9eOpUuXcuutt1b72p07d67ry9tPXv5eLHt9lOwqoVmqm2ZuZ6Xlkpw2guEI7tRIjc57MOXtNgvHt00FIGKavLtiA9jdZGZ2qvmFiIg0EkoIRURE4lCrVq0YOXIk2dnZmKbJmDFjcDqdZGVlMX78eLKysrDb7cyYMQOAyZMnM3bsWMLhMAMGDKB79+4xvoKq+QNl8/ViucJoOYth0DwlgR27S/EFQiQ49KeRiDQthlm+nJmIiDQ5+evyCcV4MQ2b00bbTm1jGoPUn7z8veTl76XUH6bDUalYLJXPISzv8QuGDq6HsCbl9+0hBPh+8x7+t2E3mRmtOLpV8gG+U0Sk8dGiMiIiIlKvAsEIdpulymSwvrVMLduPsFAb1ItIE6SEUEREROpNOBwhHDFx2OLnT5DUZAdWi8FOrTQqIk1Q/Pw2FhERkUbPHywb0umwxX7+YLny/Qg9pUF8Ae1HKCJNixJCERERqTf+YBgARww3pK9My9Sy/Qh3atioiDQx8fXbWERERBq1QHlCGEdDRgFapGqDehFpmuLrt7GIiIg0ar/2EMbPkFGANJezbB6heghFpIlRQigiIiL1xh+MYBhgjZMVRstZLJpHKCJNkxJCERERqRemaRIIhXHYrBhGfCWEsM+wUfUSikgTooRQRERE6kWpP4Rpxt+CMuWiC8toHqGINCHx+RtZREREGh2Pr2woZjxtObEvzSMUkabIFusAREREpGnwlAaB2K8warda2LSjmEAost9ziU4bntIg327ajc1aFqfDZqFda3d9hykiUi+UEIqIiEi98JYnhHEwZDQQihCsJCFMcFjxlAbZ6w2QkuSIQWQiIvUr9r+RRUREpEko8ZcNGbVb4/fPjyRn2b3yUp9WGhWRpiF+fyOLiIhIo1LiC2ExyrZ4iFcJDiuG8WvyKiLS2CkhFBERkXpR4g9hj9MtJ8oZhkGi00YgFCEU3n9IqYhIY6OEUEREROpcMBQmFI7EfEGZmogOG1UvoYg0AfH/W1lEREQavJJf5uTZ42BBmeqUJ4QaNioiTUH8/1YWERGRBq88uWoIPYTReYRaWEZEmoA63XZi2LBhuN1l+/YcffTR3HTTTUyYMAHDMOjQoQOTJk3CYrGwcOFC5s+fj81mY9SoUQwePBifz8e4ceMoLCzE5XIxffp0mjdvzqpVq3jwwQexWq0MGDCAW2+9tS4vQURERGpBdIXRON2Ufl+GYZDosFHiDxEKR7A3gCRWRORQ1dlvOL/fD0BOTg45OTlMmzaNadOmMXr0aObOnYtpmixatIiCggJycnKYP38+L7zwAjNnziQQCDBv3jwyMjKYO3cuw4YNY86cOQBMmjSJGTNmMG/ePFavXk1ubm5dXYKIiIjUkvLetobQQwiQlKB5hCLSNNTZb+X169dTWlrKtddey1VXXcWqVavIzc2lT58+AAwaNIhly5axZs0aevbsicPhwO12k56ezvr161m5ciUDBw6Mll2+fDkej4dAIEB6ejqGYTBgwACWL19eV5cgIiIiteTXHsIGkhBqHqGINBF1NmQ0ISGB6667jhEjRvDzzz9z/fXXY5pmdKlpl8tFcXExHo8nOqy0/LjH46lwfN+yycnJFcpu2rTpgHHk5ubi8/nq4ApFRBo2p9OJ0+ckUBqIaRyOkIO1a9dGR5YcjszMzFqISOpCqT+E1WJgtRiEwmasw6mW5hGKSFNRZwnhcccdxzHHHINhGBx33HGkpaVVGN7p9XpJSUkhOTkZr9db4bjb7a5w/EBlU1JSDhhH586da/nKREQaj/x1+ThtzpjGYHPa6NCpQ0xjkLpX4guRlGD75cZw/CeEv51HKCLSWNXZuI1XXnmFv/zlLwBs374dj8fDKaecwooVKwBYsmQJvXv3plu3bqxcuRK/309xcTF5eXlkZGTQq1cvFi9eHC2bmZlJcnIydrudjRs3YpomS5cupXfv3nV1CSIiIlILgqEwwXAkOgyzoSifR+hVL6GINGKGaZp1cpsuEAhw9913k5+fj2EYjB07lmbNmjFx4kSCwSDt27dn6tSpWK1WFi5cyIIFCzBNkxtvvJEhQ4ZQWlrK+PHjKSgowG63M2PGDFq1asWqVat46KGHCIfDDBgwgDFjxtRF+CIiTUL+unxCMZ4jZXPaaNupbUxjkLq11+vn41X5HHukm+REO8FQ9T1uSU4bwXCkRmUPtnxNy5b4Q2za4aF5ipOBXfUZFZHGqc4SQhERiX9KCGNn9erVPProo+Tk5LBu3TqmTJmC1WrF4XAwffp0WrZs2Wi2Zdpa6OXz9Ts46ZhmWCxGg0kITdPk+y17cdisnNMnvUZxiIg0NA1jqS8REZFG5Pnnn+e+++6LLqTz4IMPMnHiRHJycjjrrLN4/vnnG9W2TL5AGIAER8MaMlo+j9AfDOMPhmMdjohInVBCKCIiUs/S09OZPXt29PHMmTPp1KkTAOFwGKfT2ai2ZSpPCBOd8b8p/W+VzyMs3KsVy0WkcWpYt+pEREQagSFDhrB58+bo49atWwPw1Vdf8dJLL/Hyyy/zySef1Om2TFB/WzPtCroAJxt//hG/6aTUV/1WJ81SXYRCYYq9NYvvYMofTNmwaQAJfPvTFrZuKK5RLCIi8eZA2zIpIRQREYkD77zzDk8//TTPPfcczZs3r/NtmaD+tmZalruNkj2ldOvSiQ3biw9qnp879eDmENak/MGUNU2TvPwigkYivXp1iO6nLCLSWGjIqIiISIy98cYbvPTSS+Tk5NCuXTuARrUtky8Qwm61YLM2vD87DMPAlWin1B/CUxqMdTgiIrVOPYQiIiIxFA6HefDBB2nTpg233XYbACeffDK33347I0eOJDs7G9M0GTNmDE6nk6ysLMaPH09WVlZ0WyaAyZMnM3bs2Oi2TN27d4/lZVXg84dJcDS8+YPl3Il2irwBduwpxZ3kiHU4IiK1SttOiIg0Ydp2QupaKBzh7c820Cotgd91bkNe/t4Gs+3Evr7dtIfWaYn073xkjb9HRKQhaHhjN0RERKTBaKhbTuzLbrOQkmRnZ5GPcLjmSaSISEOghFBERETqjC9Q1gOd2ICHjAK0TksiEjEpLNL2EyLSuCghFBERkTrTGHoIAVo3SwRgx57SGEciIlK7lBCKiIhInSn9ZY5qQ15UBqB5SgJWi8H23UoIRaRxUUIoIiIidaax9BBaLQYtUxPwlAYpifFCTCIitUkJoYiIiNSZ8oQw0dmwewgBWjdLAmDH7pIYRyIiUnuUEIqIiEid8QVCGIDT3ggSwjTNIxSRxkcJoYiIiNSZ0kAYp8OKYRixDuWwJSfaSUqwUbCnlEhE2ziLSOOghFBERETqhGma+AIhEhv4/MF9tU5LJBQ22e3xxzoUEZFaoYRQRERE6kQwFME0wdnAVxjd1xHReYQaNioijYMSQhEREakTvmDZgjKNYf5guZapCRgG7NijhWVEpHFQQigiIiJ1ItAIE0Kb1UKLlAT2eAL4f7k+EZGGTAmhiIiI1An/L1tONKYho/DraqMFWm1URBoBJYQiIiJSJxrjkFGA1s3KEsLtmkcoIo2AEkIRERGpE78OGW1cf26kJDlw2q0U7CnFNLX9hIg0bI3rN7SIiIjEDX8j7SE0DINWaYn4g2GKSgKxDkdE5LAoIRQREZE64Q9GgMY3hxB+nUeo7SdEpKFTQigiIiJ1wh8IYxhgtza+PzeiCaEWlhGRBs4W6wBERESkcfIHwzjtVgzDiHUoh8VutbBpRzGBUKTC8QSHlcK9Pr7fvAeLpewaHTYL7Vq7YxGmiMghUUIoIiIidcIfDJOcaI91GLUiEIoQ/E1CmOS04QuE2esNNJrrFJGmp/GN4RAREZGYC4UjhCNmo1tQZl+uhLL76iW+YIwjERE5dEoIRUREpNY11k3p95XotGEY4PWFYh2KiMghU0IoIiIita6xbjmxL8MwSHLaKh1OKiLSUCghFBERkVrXFBJCAFdC2dxBr4aNikgDpYRQREQkBlavXs3IkSMB2LBhA1lZWWRnZzNp0iQikbLepoULFzJ8+HAuvfRSPvroIwB8Ph+33XYb2dnZXH/99ezatQuAVatWMWLECC6//HKefPLJ2FzUPppOQlg2j1DDRkWkoarThLCwsJBTTz2VvLy8RtnYiYiIHIrnn3+e++67D7/fD8C0adMYPXo0c+fOxTRNFi1aREFBATk5OcyfP58XXniBmTNnEggEmDdvHhkZGcydO5dhw4YxZ84cACZNmsSMGTOYN28eq1evJjc3N5aX+GtC2IjnEALYbRZsVoMSXwjTNGMdjojIQas2Ifz000/3O/b+++9Xe+JgMMj9999PQkIC0DgbOxERkUORnp7O7Nmzo49zc3Pp06cPAIMGDWLZsmWsWbOGnj174nA4cLvdpKens379elauXMnAgQOjZZcvX47H4yEQCJCeno5hGAwYMIDly5fH5NrKRReVsTfuwUiGYeBKsBMxTXy/XLOISENS5T6E77zzDoFAgFmzZnH77bdHjweDQZ577jnOPvvsA554+vTpXH755Tz33HPA/o3dp59+isViiTZ2DoejQmP3xz/+MVp2zpw5FRo7INrYde7c+fBqQEREpJ4NGTKEzZs3Rx+bphndvN3lclFcXIzH48Ht/nWDc5fLhcfjqXB837LJyckVym7atKnaOHJzc/H5fLV1WRUUBpIBB9+uy8VqlPWcOZ1OikMJlPoC1X5/s1QXoVCYYm/N4juY8rV97qBpAZxsK9iNz2uhdNemaO+viEg8yMzMrPK5KhNCr9fLV199hdfrZcWKFdHjVquVMWPGHPAFX3vtNZo3b87AgQOjCWGsGjsREZF4Z7H82ovm9XpJSUkhOTkZr9db4bjb7a5w/EBlU1JSqn3durypuvSbrZQW+eid2RPLL+0/QF7+3hqtyJnktBEMR3Cn1mz1zoMpX9vnDkci/LClCIs9gdatUzm+bWqNzisiEg+qTAhHjBjBiBEjWL58Of379z+ok7766qsYhsHy5ctZt24d48ePj84DhPpt7Ory7qeISEPmdDpx+pwESqvvralLjpCDtWvX1kqPyoHugMazk046iRUrVtC3b1+WLFlCv3796NatG48//jh+v59AIEBeXh4ZGRn06tWLxYsX061bN5YsWUJmZibJycnY7XY2btxIu3btWLp0KbfeemtMrykQDGO3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xaj4mhbjt//+JmaM8v/sfz37/Wff/+7zvyryYKOSkxj7Ffj1v78m+WVx7pvgl6+QW5e9xg0uIVy5ciUDBw4EoEePHqxduzbGETVdNkfsPz5Ol5Ndm3YRCsY+MbXZbTRv1zzWYUTFw/tjs9t+/YUbY/ESS7zEAfETSzx8VhuLWLSRDlvN/0ix2wwMo2blD6aszh3f546nWOLp3ElOK6Gwid1e/aJn5WUDv9mbsSqJDgsRE3yBCOFw2RDZ6NdvHhuYhCIm4fAvWaRRMYUpT3rKExSr1cA0TULhiolbxGSfIbRmNIGN1HNy2hg1S3YyqHvbOjt/g2uFPR4PycnJ0cdWq5VQKITNVreXEk89c/FCdRLf9P6IND2xaCPbtXbX2blFRKTuNbgZq8nJyXi93ujjSCRS58mgiIhIQ6A2UkREDlaDSwh79erFkiVLAFi1ahUZGRkxjkhERCQ+qI0UEZGDZZhmfU87PTzlK6h99913mKbJQw89xPHHHx/rsERERGJObaSIiBysBpcQioiIiIiISO1ocENGRUREREREpHYoIRQREREREWmitPRYJVavXs2jjz5KTk5OheMffvghTz31FDabjYsvvphLL700RhH+qqpY//73v/PKK6/QvHnZvniTJ0+mffv2sQiRYDDIPffcw5YtWwgEAowaNYozzjgj+ny81Wt18cZT3YbDYe677z5++uknrFYr06ZNIz09Pfp8PNVtdbHGU72WKywsZPjw4fztb3+rMA8rnuq1XFWxxmO9Dhs2DLe7bKuCo48+mmnTpkWfi8e6lcqVz1f89ttvcTgcTJ06lWOOOSbWYVXw28/aTTfdxIQJEzAMgw4dOjBp0iQsltjfG9+3Ld+wYUOlMS5cuJD58+djs9kYNWoUgwcPjnmsubm53HTTTRx77LEAZGVlcd5558VFrJW15SeccEJc1m1lsR555JFxW7eVteemacZl3VYWa3FxcdzWLVRsz202W/3UqykVPPfcc+b5559vjhgxosLxQCBgnnnmmeaePXtMv99vDh8+3NyxY0eMoixTVaymaZp33XWX+c0338Qgqv298sor5tSpU03TNM1du3aZp556avS5eKzXA8VrmvFVt//973/NCRMmmKZpmp999pl50003RZ+Lt7o9UKymGV/1appl9XfzzTebZ599tvnDDz9UOB5P9VoeU2Wxmmb81avP5zMvvPDCSp+Lx7qVqv3nP/8xx48fb5qmaX799df7/UzHWmWftRtvvNH87LPPTNM0zYkTJ5rvv/9+DCKr6LdteWUx7tixwzz//PNNv99vFhUVRf8f61gXLlxovvDCCxXKxEuslbXl8Vq3lcUaz3VbWXser3VbWazxXLe/bc/rq15jf1sszqSnpzN79uz9jufl5ZGenk5qaioOh4PMzEy+/PLLGET4q6piBcjNzeW5554jKyuLZ599tp4jq+icc87hjjvuiD62Wq3R/8djvR4oXoivuj3zzDOZMmUKAPn5+bRs2TL6XLzV7YFihfiqV4Dp06dz+eWX07p16wrH461eoepYIf7qdf369ZSWlnLttddy1VVXsWrVquhz8Vi3UrWVK1cycOBAAHr06MHatWtjHFFFlX3WcnNz6dOnDwCDBg1i2bJlMY5y/7a8shjXrFlDz549cTgcuN1u0tPTWb9+fcxjXbt2LR9//DFXXHEF99xzDx6PJ25irawtj9e6rSzWeK7bytrzeK3bymKN57r9bXteX/WqhPA3hgwZUukmvh6PJzrsBMDlcuHxeOoztP1UFSvA73//ex544AH+8Y9/sHLlSj766KN6ju5XLpeL5ORkPB4Pt99+O6NHj44+F4/1eqB4Ib7qFsBmszF+/HimTJnCkCFDosfjsW6rihXiq15fe+01mjdvHv1jd1/xVq8HihXiq14BEhISuO6663jhhReYPHkyY8eOJRQKAfFXt3JgHo+H5OTk6GOr1Rp9L+NBZZ810zQxDAMo+3wVFxfHOMr92/LKYoyXn43fxtqtWzf+9Kc/8fLLL9OuXTueeuqpuIm1srY8Xuu2sljjuW5h//Y8Xuu2sljjtW4ra8/rq16VENZQcnIyXq83+tjr9VZ4M+KJaZpcffXVNG/eHIfDwamnnsr//ve/mMa0detWrrrqKi688EKGDh0aPR6v9VpVvPFYt1B2R+k///kPEydOpKSkBIjfuq0s1nir11dffZVly5YxcuRI1q1bx/jx4ykoKADir14PFGu81SvAcccdxwUXXIBhGBx33HGkpaXFbd3Kgf32/YpEIlXepIyFyj5rhYWF0ee9Xi8pKSkxjLBy+85pLI8xXn82zjrrLLp06RL9///+97+4ivW3bXk81+1vY433uoWK7bnf768QVzzVLVSMdcCAAXFZt5W157t27aoQU13VqxLCGjr++OPZsGEDe/bsIRAI8OWXX9KzZ89Yh1Upj8fD+eefj9frxTRNVqxYEf3gx8LOnTu59tprGTduHJdcckmF5+KxXg8Ub7zV7euvvx4dBpiYmIhhGNEhrvFWtweKNd7q9eWXX+all14iJyeHTp06MX36dFq1agXEX70eKNZ4q1eAV155hb/85S8AbN++HY/HE7d1KwfWq1cvlixZAsCqVavIyMiIcUQVVfZZO+WUU1ixYgUAS5YsoXfv3rEMsVInnXTSfjF269aNlStX4vf7KS4uJi8vLy7q+7rrrmPNmjUALF++nM6dO8dNrJW15fFat5XFGs91W1l73qVLl7is28pivfXWW+OybitrzwcNGlQv9aqN6SuxefNm7rzzThYuXMhbb71FSUkJl112WXT1O9M0ufjii7niiitiHWqVsb7++uvk5OTgcDjo378/t99+e8xinDp1Ku+++26FlQ1HjBhBaWlpXNZrdfHGU92WlJRw9913s3PnTkKhENdffz2lpaVx+ZmtLtZ4qtd9jRw5kgceeID//e9/cVmv+6os1nir10AgwN13301+fj6GYTB27Fi2bNkS93Ur+ytfZfS7777DNE0eeuihCivcxlpln7VmzZoxceJEgsEg7du3Z+rUqfvNE4+Ffdvyn376qdIYFy5cyIIFCzBNkxtvvHG/YfexiDU3N5cpU6Zgt9tp2bIlU6ZMITk5OS5irawtv/fee5k6dWrc1W1lsY4ePZpHHnkkLuu2svb8+OOPj8vPbWWxtmnTJm4/t+XK23OLxVIv9aqEUEREREREpInSkFEREREREZEmSgmhiIiIiIhIE6WEUEREREREpIlSQigiIiIiItJEKSEUERERERFpopQQitSi7777jo4dO/Kf//wn1qFUacWKFfTs2ZMLL7wwugHu6aefzrx58w74fcXFxdxyyy1A2Z5e119/fX2EKyIiMdCY27Oq3HvvvXzzzTe1EtvmzZs5/fTTa+VcVVm4cCH//ve/AZgwYQKvvfZanb6eNF62WAcg0pi8+uqrnHPOOSxYsCCm+9dUp0uXLuTk5EQfr1u3jksuuYShQ4eSnJxc6ffs3buXdevWAXDEEUfw/PPP10usIiJS/xpze1aVBx98sLbDq1NfffUVffr0iXUY0gioh1CklgSDQd566y1Gjx5Nbm4uGzduZNq0afztb3+Llrntttv473//y86dO7n55psZPnw4F198McuWLQNg9uzZXHfddZx33nnMnTuXzz//nKysLC666CLOOOMMPvjgAwC2bdvGlVdeydChQ7nrrrsYNGgQAF6vl/HjxzN8+HAuvPDC6J3D6mzZsoXExEQcDgcej4fbb7+dyy67jMGDB3PPPfdgmiZTp05lx44d3HLLLRXufE6YMIGpU6eSlZXF6aefzquvvgqU9SiOGjWK3//+99x0000MGzaMzZs311p9i4hI3Wgs7Vk4HGbatGlcdNFFXHDBBbz44osA3HrrrRV6PocPH87//vc/Ro4cyYoVKwB47rnnot/38MMPY5omN910E4sXLwZg5syZ/PGPfwRgx44dnH/++TWu39dff52LLrqICy+8kHvuuQe/3w/AgAEDmDJlCsOGDePiiy9m06ZNQFlP6NChQxk2bBgPPPAAI0eOZNmyZXz44YfMmjWLTz75BICPP/6YSy65hMGDB7NgwYIaxyOihFCklixevJi2bdty3HHHceaZZ7JgwYIKjZjH4+Hrr7/m1FNP5cEHH+Tiiy/mtdde4+mnn+b+++/H4/EAEAgEeOedd8jOzuall15i6tSp/Otf/2Lq1Kk88cQTQNldzHPPPZe33nqLc845h+3btwPw9NNP07lzZ1577TVefvllnnnmmWiDsq+1a9dy4YUXcvbZZ9O3b1/efPNN/va3v+FwOPj444/p1KkTCxYs4D//+Q9ffPEFubm53HfffbRu3Zqnnnpqv/Nt27aNuXPn8vTTT/Pwww8D8NRTT3Hcccfx9ttvc8stt/Ddd9/VSb2LiEjtaizt2cKFCwH417/+xSuvvMKiRYv48ssvufDCC3n77bcB+Pnnn/H7/Zx00knRcy5ZsoS1a9fyyiuv8Prrr7N9+3befPNNTj31VD777DMAvvzyS3788UfC4TCffPIJp556ao3q9vvvv2fhwoXMnz+fN954gxYtWvDCCy8AUFBQQP/+/Xn99dc5+eSTefnllwkGg/zpT3/ikUce4fXXX8dmKxvc97vf/Y7TTz+d22+/nYEDB0br+//+7/949tlneeyxxw7iHZemTkNGRWrJq6++Gr1DeN555zF27FjuuOMOAoEAGzZs4Ouvv+b000/H4XCwbNkyfvzxR2bNmgVAKBSKNnTdunWLnvORRx7ho48+4r333mP16tV4vV4APv30U6ZNmwbAWWedRUpKCgDLli3D5/NFe+lKSkr4/vvvadeuXYVYy4fYBAIBxo0bR3JycvR1zz//fNasWcOLL77Ijz/+yJ49eygpKSEtLa3Kaz/llFMwDIOMjAz27NkTjfHRRx8FoGvXrmRkZBxy3YqISP1pLO3Z8uXLWbduXTSJKykp4dtvv2XEiBH8+c9/xuPx8O9//5sLLrigwjmXL1/OmjVrGD58OAA+n4+2bduSnZ3NqFGjoglvx44dyc3NZcmSJYwcObJGdbtixQo2bNjApZdeCpT1xu6bjJYndx06dODLL7/ku+++o0WLFpx44okAXHLJJVUObT3jjDMwDIMOHTqwe/fuGsUjAkoIRWpFYWEhn3zyCbm5ufzzn//ENE2Kior473//ywUXXMA777zD119/zQ033ABAJBLhH//4RzTJ2rFjBy1atOCDDz4gISEhet7s7Gz69u1L37596d+/P2PHjgXAarVimuZ+cUQiER555BE6d+4MwM6dO0lNTa0ybofDwdSpUxkyZAjvvPMO5513Hjk5OfznP//h0ksv5Xe/+x3fffddpa+1L6fTCYBhGNFjVcUoIiLxqzG1Z+FwmHHjxnH22WcDsGvXLlwuFw6Hg8GDB/Phhx/y3nvv8eyzz1Y4Vzgc5uqrr+aaa64BoKioCKvVisvlIhKJ8P7779OrVy9atmzJZ599Rm5uLj179qxR/YbDYc4991zuu+8+oGxobDgcjj6/b3tqmiZWq5VIJFKjc1ut1uj3ihwMDRkVqQVvvPEG/fr1Y8mSJXz44Yd89NFH3HTTTcyfP5+hQ4fyzjvvsGHDBjIzMwHo168fc+fOBeCHH35g6NChlJaWVjjnnj17+Pnnn7njjjsYNGgQixYtijYa/fv356233gLKhvYUFRVFz1u+utqOHTu44IIL2Lp16wFjd7vd3HbbbTz88MP4fD4+/fRTLrvsMi644AL8fj/r168nEolgs9kIhUI1rpN9Y/z222/5/vvv1UiJiMS5xtSe9evXj4ULFxIMBvF6vWRnZ7Nq1SoALrzwQv7+97+TlpbGUUcdVeE8/fr144033sDr9RIKhbjllluicw4HDRrE008/TZ8+fejXrx85OTl07949moxVp2/fvvz3v/+lsLAQ0zR54IEH+Mc//lFl+fbt21NUVMS3334LEK0rKEsA900mRQ6VEkKRWvCvf/2L7OzsCseuuOIK1qxZQ0lJCc2aNeOcc86JJkT33Xcfq1evZujQoYwZM4aHH354v9XQ0tLSuOSSS/j973/Pueeei9frxefzUVJSwr333sv777/PsGHDePfdd6NDbG699VZ8Ph/nn38+V199NePGjSM9Pb3a+EeMGEFSUhJ///vfufrqq3nyyScZOnQoDz30ED179mTz5s20aNGCtm3b1nhYzC233MLGjRsZOnQos2bNomXLlhXuFouISPxpTO3Z5ZdfzrHHHstFF13ExRdfzPDhw+nbty8AmZmZFBcX7zdcFOD000/n7LPP5tJLL+X888/nxBNP5KKLLgLgtNNOIz8/n8zMTDp27EgwGGTw4MGVxpKfn0/Pnj2jX3/84x858cQTufXWW7n66qv5/e9/TyQSifa2VsbhcPDwww9HF9jZtm1btC393e9+xzPPPMN7771Xbb2IHIhhakyXSIPzz3/+k9/97neccMIJ5ObmMnHixLjbf+iNN97g6KOPJjMzk/z8fK688ko++OADLBbdhxIRkTINoT2LpUgkwqOPPsqtt94aTXS3b9/OhAkTYh2aNCKaQyjSAB1zzDHceeedWCwWnE4nU6ZMiXVI+2nfvj2TJk0iEolgsVj485//rGRQREQqaAjtWSxZLJZoD6vdbueoo45qcPslSvxTD6GIiIiIiEgTpdv1IiIiIiIiTZQSQhERERERkSZKCaGIiIiIiEgTpYRQRERERESkiVJCKCIiIiIi0kQpIRQREREREWmi/h8/QclBI8XeDwAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set_style('whitegrid')\n", "fig, axes = plt.subplots(ncols=2, figsize=(15, 5))\n", "\n", "# Plot the distribution of users by average rating\n", "sns.histplot(x='rating_average', data=user_data, bins=10, color='thistle', ax=axes[0])\n", "axes[0].set_title('User Count by Average Rating', fontsize=16)\n", "axes[0].set_xlabel('Average Rating')\n", "axes[0].set_ylabel('User Count')\n", "axes[0].grid(axis='x')\n", "\n", "# Plot the distribution of users by average review length\n", "sns.histplot(x='review_length_average', data=user_data, bins=30, color='lightsteelblue', kde=True, ax=axes[1])\n", "axes[1].set_title('User Count by Average Review Length', fontsize=16)\n", "axes[1].set_xlabel('Average Review Length')\n", "axes[1].set(ylabel=None)\n", "axes[1].grid(axis='x')\n", "\n", "plt.savefig('data/images/fig4.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A left-skewed distribution for the average rating per user with most of them giving the highest rating, on the left chart. And a right-skewed distribution for the average length of text review per user, on the right chart." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "image/png": "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3i19xltbW6Nly5b4+OOPK2ynvNCNjIzE77//ji+//BJt27aFhYUFTp06he+//17qW9X7rE6dOvf9zuP169fxyiuvVLGnHt2oUaPw008/Yd68efD19cXzzz+PsrIyjB49GnXr1sX333+P5s2bw8TEBOvWrXvg7Zmsra1Rv359rFixotI+devWrTC+6rj/r7HjklGqoG3btjh16tR9Pzx37dqFJk2aSGeAgoODERUVBeDO8oOhQ4eia9eu0pFLDw8PnD59Gg4ODnB2doazszOUSiWWLVuG9PT0R8pLpVJBJpNh/vz5FY4uZWVlYevWrXjttddgZWUFDw8P5OfnV/jC/I8//ghHR0fI5XJpaUP5EUngzod7VRciudfDLu+7ceOG1s16MzMzcfHiRXh5eUltr732GmrXro3Zs2fjxRdfhIeHxyPlcjcPDw+cOnVKq+AoKirCrl274O7urtV3z5490s85OTnIyMhAu3btHiqOu7s7nnvuOWzYsAGHDh2679VFmzVrhnr16lW4atzOnTulbTysu88E6sL06dMhk8m0LteekZGBnj17ok2bNlJxV/7eKn8v3puXh4cHhBDIz8+X3vvOzs5ITU3FN998AzMzM7Rr1w4nT57E2bNnpdelpqZWekaCiPSL8yHnwwfNhy+//DLy8/Px7bffVniutLQUFy5cQIsWLQDcmecuXryIJk2aSL9/JycnfPPNN9i7dy+AO/vc19cX3t7eUpF471zzMO+zpKQkrXkkKysLJ06ceKS59mGZm5tj2rRpyM/Px8KFCwHc+f2eO3cOAQEBUCqV0vx473vwfvPmjRs3ULt2ba158/vvv5e+ptGuXTukpaVpHVRITk6u9nEZG54hpAp69eqFr7/+Gu+++y7ef/99NG/eHDk5Odi1axd27twp/YcH7vznXb58OZ577jk4OzsjKysLP/30E9555x0AwLvvvott27bhvffew9ChQ2Fubo7Vq1cjIyMDISEhj5RX06ZNMXXqVERGRuLq1asYMGAAbG1tkZmZia+++grPP/88pk2bBgDo1KkT2rRpg0mTJiE0NBSNGzfGli1bcOjQIXzxxRcAAAcHBzz//PNYsmQJzMzMoFarERMTA2tr60fKq7z/vn37ULt27UqPwFlYWOCjjz7CxIkTUVxcjM8++wwtW7bUKqAsLCzQo0cPbNiwAWPGjHmkPO7V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ZBSqLAhbtmwJmUwGIQQAwNbWFh999JHOEyMiIiIiIiLdqrIgPHaM69eJiIiIiIieRVUWhAUFBVi2bBlSU1NRWlqK9u3b48MPP0Tt2rX1kR8RERERERHpSJUF4Zw5c2BpaYl58+YBABITExEREaF1iWwiIiIiomfJ7O/ScC33tqHTqBEa2tRGxNvtDJ0GPaYqC8LMzExs375dejxz5kz07NlTp0kRERERERnStdzbuHwrv+qORDWcSVUdhBDIzc2VHufm5sLU1FSnSREREREREZHuVXmGcNiwYRgwYAA6d+4MIQT27NmDkSNH6iM3IiIiIiIi0qEqC8J+/frB2dkZBw4cQFlZGZYuXQoHBwd95EZEREREREQ69MCCMCsrC5aWllAqlVAqldi5cyeXixIRERERET0jKv0OYWpqKt555x1cunRJasvOzsa7776LtLQ0vSRHREREREREulNpQbhkyRKsXr0abdu2ldreeecdrFixAosWLdJLckRERERERKQ7lRaEGo0GSqWyQnvr1q1RWFio06SIiIiIiIhI9yotCEtKSlBUVFShvaioCBqNRqdJERERERERke5VWhC+9tprmD17tlbxV1RUhMjISHh7ez92wBUrVmDgwIHo27cvNm7ciHPnziEwMBAqlQoREREoKysDACQmJqJv374ICAjAnj17AACFhYUYN24cVCoVRowYgRs3bjx2HkRERERERMau0quMjhkzBlOmTIGXlxdefvllyOVyZGVloVOnTggPD3+sYGlpafjf//6H+Ph4FBQUYPXq1YiKikJISAjatWuHmTNnIikpCa6uroiLi8PmzZuh0WigUqng7e2N+Ph4KJVKjBs3Djt27EBsbOxj52IIOVdzUVpSqtMYpmamqP+8jU5jEBERERHRs6HSgtDc3BwLFy7E+fPncfToUZiYmMDJyQmNGzd+7GApKSlQKpUYM2YM1Go1Jk+ejMTERHh5eQEA/Pz88Pvvv8PExARubm6wsLCAhYUF7OzscOzYMaSnp+O9996T+sbGxj52LoZQWlKK0pIyQ6dBREREREQE4CFuTG9nZwc7O7tqCXbz5k1cvnwZX3zxBS5evIjRo0dDCAGZTAYAsLKyQl5eHtRqNaytraXXWVlZQa1Wa7WX961KZmYmCgsLIZfL0axJs2oZR1WOHDlS4XuWcrkcDes1MWh8S8vnDBK7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lITs7GzExcUhISEBq1atQnR0NIqKihAfHw+lUon169ejT58+iI2NBQBERERg4cKFiI+Px6FDh5CZmWnIIRIRUQ3BgpCIiEjP7OzssHTpUulxZmYmvLy8AAB+fn7Yv38/Dh8+DDc3N1hYWMDa2hp2dnY4duwY0tPT4evrK/VNTU2FWq1GUVER7OzsIJPJ4OPjg9TUVIOMjYiIahaD35ieiIjI2Pj7++PixYvSYyEEZDIZAMDKygp5eXlQq9WwtraW+lhZWUGtVmu1391XoVBo9b1w4UKVeWRmZqKwsLDS5+VyOeooGj3y+IzZkSNHpDO/T0Iul4N/pj266t3/9Ci47w3nYfa9h4dHpc/xk4aIiMjATEz+f8FOfn4+bGxsoFAokJ+fr9VubW2t1f6gvjY2NlXGdXR0rLLPhbPXH2UoRs/JyanatnUy5Vi1bctYVOf+R/qe6tuWEajWfb95Y/Vtywg86b7nklEiIiIDa926NdLS0gAAycnJ8PT0hIuLC9LT06HRaJCXl4esrCwolUq4u7tj3759Ul8PDw8oFAqYm5vj/PnzEEIgJSUFnp6ehhwSERHVEDxDSEREZGBhYWGYMWMGoqOjYW9vD39/f5iamiIoKAgqlQpCCISGhkIulyMwMBBhYWEIDAyEubk5Fi5cCACYPXs2Jk6ciNLSUvj4+KBNmzYGHhUREdUELAiJiIgM4MUXX0RiYiIAoFmzZli7dm2FPgEBAQgICNBqs7S0RExMTIW+rq6u0vaIiIgeFpeMEhERERERGSkWhEREREREREaKBSEREREREZGRYkFIRERERERkpFgQEhERERERGSkWhEREREREREaKBSEREREREZGRYkFIRERERERkpFgQEhERERERGSkWhEREREREREaKBSEREREREZGRYkFIRERERERkpFgQEhERERERGSkWhEREREREREaKBSEREREREZGRYkFIRERERERkpFgQEhERERERGSkWhEREREREREaKBSEREREREZGRYkFIRERERERkpFgQEhERERERGSkWhEREREREREaKBSEREREREZGRYkFIRERERERkpMz0Gay4uBjTpk3DpUuXUFRUhNGjR6N58+aYMmUKZDIZWrRogYiICJiYmCAxMREJCQkwMzPD6NGj0blzZxQWFmLSpEnIycmBlZUV5s+fD1tbW30OgYiIiIiI6Jmh1zOE27dvR926dbF+/XqsXLkSkZGRiIqKQkhICNavXw8hBJKSkpCdnY24uDgkJCRg1apViI6ORlFREeLj46FUKrF+/Xr06dMHsbGx+kyfiIiIiIjomaLXM4Tdu3eHv7+/9NjU1BSZmZnw8vICAPj5+eH333+HiYkJ3NzcYGFhAQsLC9jZ2eHYsWNIT0/He++9J/VlQUhERERERPT49HqG0MrKCgqFAmq1GuPHj0dISAiEEJDJZNLzeXl5UKvVsLa21nqdWq3Wai/vS0RERERERI9Hr2cIAeDKlSsYM2YMVCoVevfujQULFkjP5efnw8bGBgqFAvn5+Vrt1tbWWu3lfauSmZmJwsJCyOVyNGvSrPoHdB9HjhyBRqPRapPL5WhYr4lB41taPmeQ2OXxgToGiX8ntoXOYz84vmFiGzq+vmIbOv7TuO8NHd9Qv3sPDw+9xSUiInoW6LUgvH79OoKDgzFz5kx06NABANC6dWukpaWhXbt2SE5ORvv27eHi4oLFixdDo9GgqKgIWVlZUCqVcHd3x759++Di4oLk5OSHmvgdHR2ln/Nv5j+gZ/VxcnK6b/u1SzcNGj8r66rBYgPAX4cvGCz+uf0ndB77QfFTLmcYLDYAJB7fb7j4f/6r89gPjJ900HCxAWDbD4aNrwfGHp+IiKgm02tB+MUXXyA3NxexsbHS9/+mT5+Ojz/+GNHR0bC3t4e/vz9MTU0RFBQElUoFIQRCQ0Mhl8sRGBiIsLAwBAYGwtzcHAsXLtRn+kRERDrVp08f6asRL774IkaNGsUrcRMRkU7ptSAMDw9HeHh4hfa1a9dWaAsICEBAQIBWm6WlJWJiYnSWHxERkaGUL3uNi4uT2kaNGoWQkBC0a9cOM2fORFJSElxdXREXF4fNmzdDo9FApVLB29tbuhL3uHHjsGPHDsTGxt53ziUiIrobb0xPRET0FDh27BgKCgoQHByMoUOHIiMjo8KVuPfv34/Dhw9LV+K2trbWuhK3r6+v1Dc1NdWQwyEiohpC7xeVISIioopq1aqF4cOHY8CAATh79ixGjBih8ytxl194rTJyuRx1FI2ecGTGpbKLPD2qOxdm4p9pj6p69z89Cu57w3mYff+ga6/wk4aIiOgp0KxZMzRt2hQymQzNmjVD3bp1kZmZKT2viytx333htcpcOHv9MUZjvKrzIkcnU45V27aMRbVeZCp9T/VtywhU677fvLH6tmUEnnTfc8koERHRU2DTpk345JNPAABXr16FWq2Gt7c30tLSAADJycnw9PSEi4sL0tPTodFokJeXV+FK3OV9eQsOIiJ6GDxDSERE9BTo378/pk6disDAQMhkMsybNw/16tXDjBkzeCVuIiLSGRaERERETwELC4v7FnG8EjcREekSl4wSEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZFiQUhERERERGSkWBASEREREREZKRaERERERERERooFIRERERERkZEyM3QCj6qsrAyzZs3C8ePHYWFhgY8//hhNmzY1dFpEREQGxzmSiIgeVY07Q7hr1y4UFRVhw4YNmDBhAj755BNDp0RERPRU4BxJRESPqsadIUxPT4evry8AwNXVFUeOHHno15qYmqAMZbpKTYpRGVMzU53GriqGhbluf91VbV8u1238B21fYWmh09hVxahTW67T2FVtv4HCUqfxH7T9RnVq6zR2VTFerGej09hVbd+uvq1O41e1/aYNGuo0/oO23/T5xjqNra8YNcmTzJGVMTPX/dz1rKjufWWth7nrWVLd+6uhje7nr2dFde+rpvXrV+v2nmXVsa9kQghRDbnozfTp09GtWzd07NgRANCpUyfs2rULZmY1rrYlIiKqVpwjiYjoUdW4JaMKhQL5+fnS47KyMk50RERE4BxJRESPrsYVhO7u7khOTgYAZGRkQKlUGjgjIiKipwPnSCIielQ1bslo+RXUTpw4ASEE5s2bh1deecXQaRERERkc50giInpUNa4gJCIiIiIioupR45aMEhERERERUfVgQUhERERERGSkWBA+wKFDhxAUFKT3uMXFxZg0aRJUKhX69++PpKQkvcYvLS3F1KlTMWjQIAwePBjnz5/Xa/xyOTk56NixI7KysvQeu0+fPggKCkJQUBCmTp2q19grVqzAwIED0bdvX2zcuFGvsbds2SKNOyAgAM7OzsjNzdVb/OLiYkyYMAGDBg2CSqXS6+++qKgIEyZMQEBAAIKDg3H27Fm9xb77s+bcuXMIDAyESqVCREQEysp0e+/Ue+MDwK+//ooJEyboPO69sY8ePQqVSoWgoCAMHz4c169f10sOZHhffvklhg0bhuDgYAwfPvyh758YGhqKoqIiHWf3bHncfU36c/HiRbi7u0vzcVBQEJYtW3bfvlOmTEFycjK2bNmCzz77TM+Z1kxDhw7F4cOHAdyZ+z08PLBq1Srp+SFDhmDMmDEP/Gz59ddfcfXqVZ3nqi+8FnUlVq5cie3bt8PSUrc39L6f7du3o27duliwYAFu3ryJt99+G6+99pre4u/ZswcAkJCQgLS0NERFRWH58uV6iw/cKQxmzpyJWrVq6TUuAGg0GgBAXFyc3mOnpaXhf//7H+Lj41FQUIDVq1frNX7fvn3Rt29fAMDs2bPRr18/2Njo9sbud9u3bx9KSkqQkJCA33//HYsXL8bSpUv1EjsxMRG1a9dGYmIiTp8+jcjISK0JQlfu/ayJiopCSEgI2rVrh5kzZyIpKQmvv/663uJ//PHHSElJQatWrXQWs7LYc+fOxYwZM9CqVSskJCRg5cqVej8gQ/p36tQp7N69G/Hx8ZDJZDh69CjCwsKwffv2Kl+7aNEiPWT47HiSfU361bx5c4P8HWIMfHx88Ndff8HFxQXp6enw8fHB3r17MXz4cGg0Gly5cgVr16594Da+/fZbzJo1C88//7yestYtFoSVsLOzw9KlSzF58mS9x+7evTv8/f2lx6ampnqN37VrV3Tq1AkAcPnyZTRo0ECv8QFg/vz5GDRoEL788ku9xz527BgKCgoQHByMkpISfPTRR3B1ddVL7JSUFCiVSowZMwZqtdog7z8A+Pvvv3Hq1ClEREToNW6zZs1QWlqKsrIyqNVqvd4/7dSpU/Dz8wMA2Nvb6+3s5L2fNZmZmfDy8gIA+Pn54ffff9dpQXhvfHd3d3Tt2hUbNmzQWczKYkdHR6Nhw4YA7qxUkMvlOs+BDM/W1haXL1/Gpk2b4Ofnh1atWmHTpk0ICgpCs2bNcObMGQghsGjRIpw+fRqfffYZzM3NERAQgJiYGPz444+IiIiAhYUFLl26hGvXruGTTz6Bo6MjNm7ciHXr1qFOnTowNzdHz549pYNexuhB+3rWrFl45ZVXEB8fj+vXr+Ptt99GaGgoGjdujIsXL+KNN97AyZMn8c8//6BTp0746KOPEBQUBAcHB5w8eRK1a9eGp6cnUlJSkJubi9WrV6N27dqIiIjAuXPnUFZWJh3s6tWrF15++WVYWFggOjra0LulRigtLcXMmTPx77//4ubNm/Dz80NISIih06qRXn31VcTGxiI4OBj79u3DgAED8NlnnyEvL0+ag7t06VLpZ0t2drZ0MGX9+vXYsGEDfvjhB8hkMvTs2RNDhw7FlClTcOvWLdy6dQsrVqxAnTp1DD3sB+KS0Ur4+/sb7Ga+VlZWUCgUUKvVGD9+vEH+w5uZmSEsLAyRkZFaxak+bNmyBba2tvD19dVr3HK1atXC8OHDsWrVKsyePRsTJ05ESUmJXmLfvHkTR44cwZIlS6TYhrgQ8IoVKzBmzBi9x61duzYuXbqEHj16YMaMGXpdst2qVSvs2bMHQghkZGTg6tWrKC0t1Xncez9rhBCQyWQA7nwW5OXl6TV+z549pfi6dm/s8mLw4MGDWLt2LYYNG6aXPMiwbG1tsXz5chw8eBADBw5E9+7dpZUq7u7uiIuLQ48ePbBixQoAd1ZxrF+/Hn369NHazgsvvIBVq1YhKCgIGzZswI0bN/DVV18hPj4eq1evRkFBgb6H9tR50L6+nwsXLmDu3LlYsWIFlixZgilTpmDjxo3YtGmT1MfFxQVr1qxBUVERatWqha+//hrNmzfHgQMHsHHjRtSrVw/r1q1DbGws5syZAwC4ffs2PvjgAxaDD3Dq1CmtJaMZGRlwdXXFqlWrEB8fj/j4eEOnWGO1bt0ap0+fhhACBw4cgJeXFzp06ID9+/fjzz//rPD3572fLZ06dUKrVq0wf/58nD9/Hjt37sT69euxfv167Nq1C6dPnwYAtG/fHgkJCU99MQjwDOFT68qVKxgzZgxUKhV69+5tkBzmz5+PiRMnIiAgADt27EDt2rX1Enfz5s2QyWRITU2VjsAsX74czz33nF7iN2vWDE2bNoVMJkOzZs1Qt25dZGdno3HjxjqPXbduXdjb28PCwgL29vaQy+W4ceMG6tevr/PY5XJzc3H69Gm0b99ebzHLffPNN/Dx8cGECRNw5coVvPPOO/j+++/1cqaoX79+yMrKwtChQ+Hu7g5HR0e9n50HABOT/z9Ol5+fr9clu0+DnTt3Yvny5fjyyy9ha2tr6HRID86dOweFQoGoqCgAd1YojBw5Eg0aNJA+h9zd3bF7924Adz6j76d8mXOjRo1w8OBBnD9/Hq+88oq0JNnNzU3XQ3nqPWhfl7v7IORLL70Ea2trWFhYoEGDBqhbty4AaB00cnR0BADY2NigefPm0s8ajQYnTpxAenq69H2tkpIS3Lx5E0Dlv0e6494lo2q1Gtu2bcMff/wBhULB784+ARMTE7Rs2RLJycl47rnnYGFhAT8/P+zduxfHjh3D0KFDtfrf+9lytxMnTuDy5cvSAcz//vtPuvZGTXqP8wzhU+j69esIDg7GpEmT0L9/f73H37p1q3Qk1tLSEjKZTK9/GK9btw5r165FXFycdARGX8UgAGzatAmffPIJAODq1atQq9V6i+/h4YHffvsNQghcvXoVBQUF0gSsLwcOHMCrr76q15jlbGxsYG1tDQCoU6cOSkpK9HKWDrjzh5GHhwfi4uLQtWtXvPTSS3qJe6/WrVsjLS0NAJCcnAxPT0+D5GEI27Ztk/7vG2r/k/4dP34cs2bNkr6/3axZM1hbW8PU1FS64MnBgwelYuPugyZ3u/fMtp2dHU6fPo3CwkKUlZVJRYkxq2xflx/4BIB//vlH6v+kqwXs7e3xxhtvIC4uDitXrkT37t2lsyWV/R7p/rZs2QJra2ssXLgQwcHBKCwsNMgKomeFt7c3VqxYIZ0N9PDwkN779/7ddb//BzKZDEII2Nvbo3nz5vj2228RFxeHvn37QqlUVvq6pxXPED6FvvjiC+Tm5iI2NhaxsbEA7lx8QV8XWOnWrRumTp2KwYMHo6SkBNOmTTOq7/L0798fU6dORWBgIGQyGebNm6e35cOdO3fGgQMH0L9/fwghMHPmTL2fpTpz5gxefPFFvcYsN2zYMEybNg0qlQrFxcUIDQ3V25nppk2bYsmSJVi9ejWsra0xd+5cvcS9V1hYGGbMmIHo6GjY29vrfcm2oZSWlmLu3Llo3Lgxxo0bBwBo27Ytxo8fb+DMSNe6deuGrKwsDBgwALVr14YQApMnT8aaNWvw3Xff4ZtvvoGlpSU+/fRTnDhx4qG3a2trixEjRkClUqFu3brQaDQG+yrI06KyfW1ubo45c+agcePG0tLt6jBo0CCEh4djyJAhUKvVUKlULAQfU4cOHfDRRx8hPT0dlpaWaNq0Ka5du2botGqsV199FeHh4fj0008BABYWFrC2tkbr1q0f6vVubm6YPHkyVq9ejQ4dOiAwMBBFRUVwcXGpkReakQkeXiAiIqKnzN0XOnkcJSUlWLlyJUaPHg0AGDx4MEJCQtC2bdvqTJOIqMYz7kNlRERE9EwyMzNDQUEB3n77bZibm8PFxcWolmATET0sniEkIiIiIiIyUlzITUREREREZKRYEBIRERERERkpFoRERERERERGigUh0SOaPXs23nrrLfTs2RNOTk5466238NZbb2Hz5s2Pvc0tW7bAwcEBP/zwg1b7N998AwcHB1y8ePGxtjt16lRcunQJANClS5cqtzNlyhR06tRJGlO3bt0QEBCArKysB75uz549+Prrrx8pt6CgIOl+e0REVDPpYk4UQiAmJga9e/fGm2++if79+yM5Obkas34yFy9e1Bpr79690aVLF8TExFT52qCgoEeKlZaW9sivIXpUvMoo0SOKiIgAcGdCGDp0KLZt21Yt223UqBF+/vln9OrVS2r79ddfYWNj89jbTEtLw5gxYx7pNePHj0ffvn2lx3PnzsXSpUuxePHiSl9TfvNoIiIyLrqYE3/88UdkZmbiu+++g5mZGc6cOYPAwEDs2LED9evXf+LtV4eGDRtqjfXq1avw9/fHG2+88cBbpfz555/6SI/okbAgJKomZ86cwcyZM3Hr1i3Url0b06dPh4uLC6ZMmQK5XI6///4b+fn5GD16NPr06VPh9W3btkV6ejpu376N2rVr4/Lly7CysoK1tbXU54svvsD27dthamoKb29vTJo0CVeuXMHYsWPRokULHD16FPXr18eSJUuQmJiIa9euYeTIkVi3bh0A4PPPP8fRo0dRUFCATz/9FG3atHngmIqKipCdnY06deoAuDORLVq0CIWFhcjNzcXUqVPx8ssvIyEhAQDwwgsvoHv37pgzZw5OnjyJ0tJSjBgxAr169UJRURGmT5+OI0eOoEmTJrh582Y17XkiInraPMmcmJ2djdLSUhQVFcHMzAzNmjVDTEwMzMzu/Nm6detWrFmzBmVlZXB0dERERATkcjnWrl2Lbdu2oaCgAObm5li4cCHs7e0xf/58/P777zAxMUHXrl0xduxYFBQUIDw8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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set_style('whitegrid')\n", "fig, axes = plt.subplots(ncols=2, figsize=(15, 5))\n", "\n", "# Plot the distribution of users by month of review posted\n", "sns.countplot(x='review_month_top', data=user_data, palette='PuBuGn', ax=axes[0])\n", "axes[0].set_title('User Count by Top Month Rated', fontsize=16)\n", "axes[0].set_xlabel('Top Month Rated')\n", "axes[0].set_ylabel('User Count')\n", "\n", "# Plot the distribution of users by season of review posted\n", "sns.countplot(x='review_season_top', data=user_data, order=['Spring', 'Summer', 'Fall', 'Winter'], palette='PuBuGn', ax=axes[1])\n", "axes[1].set_title('User Count by Top Season Rated', fontsize=16)\n", "axes[1].set_xlabel('Top Season Rated')\n", "axes[1].set(ylabel=None)\n", "\n", "plt.savefig('data/images/fig5.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA5gAAAG2CAYAAAAa8SnSAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAACUqElEQVR4nOzdd5wT1foG8Gdm0pOt9KoILEi3ICoIAhYuYEdFBOx4LUhRRMWCqKioiICIIBYUGwr6s1z7tfderooU6Wxv6ZmZ8/sjbNxld2FLkkl5vp8P97q72eRNNsnkmXPOeyQhhAARERERERFRM8lGF0BERERERESpgQGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk5qEzYfTT7r9zdPt/hJR6uL7GVF08TW1fyajC4i2SZMmweFw4NFHH631s99//x2nn346Vq9ejUGDBsW1riVLlmDp0qU1vmc2m9GmTRuMHDkS06dPh8PhiGtNTfXee+/h448/xrx584wuBTt27MDIkSPx0EMPYdSoUVG5zhtuuAHr16/f72WuvvpqTJ06NSq3t6/LL78cH374Ya3vf//993A6nfX+XigUwnPPPYdXX30VW7ZsgcViQV5eHi655BIMGzYscrkbbrgBv/76K15//fUG1/Tiiy9i586dmDFjRoOvY3+vxVj4+uuvsXr1avz4449wu93o0KEDxo4diwsuuKDRr62lS5ciJycH559/foyqJSKAx+x44DE78Y7ZPXr0qPU9s9mMli1bYtiwYZg1axZcLle0SzXM3XffjZdffhm6rmPlypU44ogjonK9Vc+nfVmtVrRp0wYnn3wypk2bBrPZHJXbq7LvZyKqLeUCZiKz2Wx46qmnIl8Hg0F89913WLx4Mfbs2YPFixcbWF3DPfXUU0lzYG2KK6+8EuPHj498PXv2bBx00EG48sorI99r27ZtzG7/zz//xOTJkzFmzJga37fb7fX+jtvtxiWXXIKNGzdi8uTJmD59OlRVxRtvvIEpU6bgxhtvxIUXXtjkmpYvX47jjz++Ub9z2223QZbjM0lixYoVWLhwIUaOHImbb74ZWVlZ+PXXX7Fy5Up89NFHePzxxxv1nF2yZAmuv/76GFZMRImOx+zkkIzHbCB8cmXs2LGRrz0eD7744gs89thjKC0tTZrn14H8+eefePLJJ3HBBRfgxBNPxKGHHhr125g5c2aNk1Dl5eV45513sHLlSmiahtmzZ0f19prymSjdMGDGkSzLGDBgQI3vHXXUUdi5cydeeukl5Ofno02bNsYURxGdO3dG586dI1/bbDbk5ubW+tvFQkVFBXbv3o3jjjuuUbd311134c8//8Rzzz1X4817+PDhcDqdWLBgAUaOHIlOnTrFoOq6devWLS638/XXX2PhwoWYMmUKZs6cGfn+McccgyOPPBLnnXcennjiCVx11VVxqYeIUgOP2ckhGY/ZANCuXbtavzN48GDs3r0bb7zxBjwez35nLSWL8vJyAMDYsWPRr1+/mNzGQQcdVOuxHDZsGDZv3oxXXnkl6gGTDiyt12BqmoYFCxbg+OOPR58+fTB69Gg899xzNS6zdetWXHnllTjssMNw5JFHYtasWSgpKYn8/IYbbsCVV16Ja6+9FocffniThst79eoFIQT27NkT+d7q1atx0kknoU+fPhgzZgzefPPNyM927NiBHj164KmnnsKIESMwePBgfP/99wCAd955B2eeeSb69++PESNGYPny5TXmiX/22Wc4++yz0a9fPwwdOhQPPfQQNE2L/HzEiBFYuXIlbrvtNhx11FE4/PDDMXv2bLjdbgDhM25ff/01PvzwQ/To0QM7duwAAHzyySeYOHEiDjvsMPTt2xennXYa3nnnnRr388svv8S4cePQr18/jBkzBp988gl69eqFdevWNfjxrs/27dsxadIk9O3bF//617/w2muvRX525pln4vLLL69x+UAggCOOOALPPPPMAa+7LkIIvPjiizjllFPQr18/nHTSSXjyySdrXKZHjx54/vnnccUVV0T+Hge6vT///DPyuw1VXFyMV199FePGjavzzOCVV16JCRMmwO/31/n7oVAIK1aswMknn4y+ffvilFNOqfH4jRgxAjt37sSaNWtq1bV69WoMHz4c/fr1w6RJk7Bp06bIzyZNmhR53L/66iv06NED3377LcaPH4++ffti5MiRWLt2bY3r++OPPzB58mQMGDAAI0eOxKuvvooTTzwRS5Ysqff+P/7448jNza0zQB522GG45ppranz42Lx5M6655hocffTR6NOnD0aMGIGHH3448jqpuo8LFizAiBEjIr93oNeOrutYunQphg4div79+2Pq1Kl48sknazxmDX3eLF++HGPGjMGgQYPw8MMPo0ePHnjrrbdqXO61115Dnz59UFpaWu9jQ5RKeMzmMTsVjtkHUtfU2AM9D0KhEBYvXoyTTz4Zffr0wcCBA3H11Vdj9+7dkcts3rwZl156KY488kgcfvjhuOSSS/DHH39Eft7Qx2jdunWYMWMGDjvsMAwaNAh33XUXVFWt874sWbIEkyZNAgCcffbZkf/2eDy49957MWLECPTr1w/jxo3Dp59+Gvm9qs8Mzz//PIYMGYJhw4ZFnruNUVdAf/3113HKKaegb9++OOGEE/D000836j7u7zMR/SOtA+aqVavw8ssvY/r06Vi1ahWOO+44zJ07F5988gkAoKioCBMmTMCuXbuwYMEC3H777fjxxx9xySWXIBgMRq7no48+QiAQwMMPP4xzzz230XVs3boVANCxY0cA4fVf9957L0aPHo3ly5fj2GOPxcyZM/Gf//ynxu899NBDuO666zBr1iz06dMHb7/9NqZOnYoePXpg6dKlmDx5MpYuXYqVK1cCAL744gtcdtll6NixI5YuXYpLLrkETzzxBO68884a1/voo4+ioqICCxcuxPTp0/HGG2/gkUceARCe9tirVy8cfvjheOGFF9C6dWv8/PPPmDJlCrp3745ly5bhwQcfhN1ux7XXXhs50Pz555+47LLL0LJlSyxZsgRnnHEGpk+fXuMNsqGPd10WLVqEXr16YdmyZejfvz+uu+46fP755wCA0047DZ999lmND+IffPAB/H4/Ro8e3ei/FwAsXLgQc+fOxYgRI7Bs2TKMGjUKCxYswIMPPljjcvfffz8cDgeWLFmCE088EXfccQdefPHFeq/3zz//hMViwaJFizBo0CD0798f11xzDQoLC+v9nS+++AKaptVYZ1ldmzZtcPPNN6N79+51/nz27NlYtmwZzjnnHDzyyCM47LDDcN1110XC39KlS9GqVSucfPLJeOGFFyK/t2nTJrzyyiuYM2cO7rnnHmzZsgWzZs2qt04gPI3l5JNPxooVK9CrVy/cfPPN2LhxI4Dw33/y5MkIBAJYuHAhLrvsMtx11101DpD7EkLgs88+w9FHHw2r1VrnZa688kqccsopAMIHtcmTJ6OsrAz33nsvHn30UQwaNAiLFy/Gf//7XwCI3MdJkyZF1mA15LWzaNEiLF++HBMmTIhMbXrggQdq1NLQ583SpUtx/vnnY+7cuTj33HNx6KGH4o033qhxmddeew3Dhg1DTk7Ofh9zolTBYzaP2alwzK6i6zpUVY38Ky0txauvvopXXnkFJ5xwQiQcNeR5cPfdd+OZZ57BZZddhscffxzTp0/HF198gfnz50cuc9VVV0HTNDz44IN48MEHUVpaissvvzzyN23oYzR//nzk5uZi2bJlOP/887F69ep6H6Ozzz4bt956a6TG2267Dbqu49JLL8W6deswZcoULFmyBO3bt8eUKVMir+Uqy5Ytw7x58zBjxozI6+1Aj2UoFEJRURGefPJJfPbZZzj11FMjl1u/fj2uvfZaDBw4EI888ghOP/103H333XjssccafB/r+0xE+xApZuLEiWLKlCl1/ux///ufyMvLE19++aUQQojLLrtMXHzxxTUus3DhQvHNN98IIYS4//77xRFHHCGKi4sjP9+2bZs49NBDxfr164UQQsyePVvk5eXVuExdFi9eLAYMGCBCoVDkX1FRkXjllVdE//79xRVXXCGEEKK8vFz07dtXLFy4sMbv33jjjWLkyJFCCCG2b98u8vLyxO23317jMqeddpqYPHlyje8tWLBAXH755UIIIc455xwxfvz4Gj9fv3696Nmzp9i+fbsQQojhw4eLMWPGCF3XI5e56qqrxNixYyNf7/sYv/TSS2Lq1Kk1rve3334TeXl54oMPPhBCCDFz5kxxwgkniFAoFLnMqlWrRF5ennj55ZeFEA17vPdV9Vhcd911Nb4/bty4yGNRXFwsevfuLZ577rnIz6+44orI43Igp556qpg9e3bk65KSEtG7d29x//3317jc/fffL3r37h2pPy8vT5x99tk1LjN16lQxfPjwem/r5ptvFnl5eeKOO+4QX3/9tXj55ZfFcccdJ/71r3+JQCBQ5++sXLlS5OXliY0bNzbo/syePVuMGTNGCCHEH3/8IfLy8mo8NkIIMWPGDHH00UcLVVWFEOHnRfXn2+zZs0XPnj3Fnj17It97/PHHRV5enqisrBRC1HyefPnllyIvL0+sWLEicvny8nLRo0cPsWrVKiFE+LV3xBFHiPLy8shl3nrrLZGXlycWL15c530pLi4WeXl54r777mvQff/ll1/EeeedV+M5pmmaOPLII8U999wT+V5eXp547LHHIl8f6LVTWVkp+vTpU6NOXdfFKaecIvLy8oQQjXve7Pse9sQTT4g+ffqI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vR1zzDH1Xn/Vc29/r52qNVklJSU1nhPV709jnjd1Oe2003Dddddhw4YN+PHHH7mNCqUEHrN5zAbS65hdn3//+9946623MH/+fBx33HFo06ZNg44/lZWV+Pe//43DDz8cS5YswUEHHQQgHFarN/Fp164d5s+fD13X8eOPP2Lt2rV4+OGH0a1bt2YfnxojKysrcr3VVQW8aNzWTTfdhI8++ghz5szBm2++CYfDEXmt3nrrrXV2s93fGk9qvJSbIjtw4EBs3LgRmzdvrvWz9957Dx06dEC7du0AABdffDHuvvtuAOFRoMmTJ+OEE06IjIYcccQR2Lx5M3r06IG+ffuib9++yMvLw9KlS/Hdd9/FpP7+/fvDbDajuLg4cpt9+/bFX3/9hYcffrje33O5XMjLy6u12e/TTz+N6667Di6XCz179sT27dtrXK/ZbMbChQvrnf5Rl333Nvzxxx9x3HHHYfDgwZEP+FULtavO+AwcOBAfffRRjdGt999/v8b1NOfxrr4wXAiBd999FwMHDozUarFYIp3qvv766yZPtQEQedz27er55ptvwmQy1Xjj2vfv8f777+OQQw6p98PBc889h7vuuqvG4/TRRx/B7/dHpoHtKysrC6eeeipefPFFbNiwodbPFy1aBCFErT26AEQ2O67rvrRo0QIHH3wwgNp/81gYOHAgvv766xpnSj/++OPIKEZ9LrjgAhQXF2PZsmW1fvbVV1/h008/xdixYyFJEn744Qe0bdsW5513XuRg89tvv6GkpKTG2cnq97chr51DDz0UTqez1nP6gw8+iPx3Y543dRk5ciQcDgduv/12dOzYMWobVRMZicfsD2t8n8fs1D9m18dsNuOmm26Cx+OJjFY25HmwefNmlJeX44ILLoiES13X8fnnn0f+nn/88QeGDBmC3377DbIs4/DDD8edd94Jk8mEXbt2Nfv41BhHHHEEPB5PrYY+//nPf9C7d+8mn0ioLjMzEzNmzMDu3bsjTbMOOeQQZGdnIz8/v8ZjWVZWhoceemi/M7b2Fa89vpNZyo1gjh07Fk888QQuuugiXH755ejWrRuKi4vx3nvv4c0336wxxeCII47AI488glatWqFv377YtGkT3nrrLVxwwQUAgIsuugivvvoqLr30UkyePBlmsxmPP/44fvzxR0yfPj0m9efm5mLSpEm45557UF5ejn79+uGPP/7Agw8+iJEjR8LlctU7onPVVVdh2rRpuOWWWzBq1Chs2LABq1evxvXXXw9JknDNNdfgqquugsvlwoknnojS0lIsWrQIsiwjLy+vwTVmZmbi999/x1dffYX+/fujb9+++OCDD7B+/Xq0a9cOX375JVatWgUAka0xpkyZgtNOOw1Tp07Fueeei7///hsPPfQQgH9eqM15vF9++WW0atUKffr0wdq1a7Fx48ZI57IqZ5xxBp5//nl06NCh0W/81VX9jVatWgVFUTBw4EB88803WLVqFS666CJkZWVFLvvJJ59g3rx5GDFiBD788EO8++67WLRoUb3Xffnll+Oyyy7DrFmzcOaZZ0Yep5NPPhmHH354vb83a9Ys/Pzzzzj//PNxwQUX4PDDD0dlZSXWr1+P//73v7j11lsjYbG6nj174uSTT8Y999wDj8eDHj164P3338cbb7yBW2+9NfK3yczMxG+//YZvvvmmWY/d/kyaNAnPPPMMpkyZgssuuwwlJSWR7nXV1xfta+DAgbjkkkvwyCOPYPPmzTjllFPgcDjw7bff4sknn8SAAQNwxRVXAAh/0Hj++eexdOlSHHXUUdi0aRMefvhhSJJUYxuXzMxMfPfddzjyyCMjXQH399qx2+244IIL8Oijj8JiseDQQw/Fq6++it9++y1Se2OeN3Wp+sD1wgsvcE9PShk8ZvOYnY7H7PoMHjwYQ4cOxf/93/9h4sSJ6Nev3wGfB6qqwul0YtmyZdB1HX6/H88++yz++OOPyHTpbt26wel0Yvbs2bj66quRlZWFV155BZIk4fjjj2/28akxjj/+ePTv3x+zZs3CjBkz0K5dO6xbtw4//fQTli9fHrXbOeuss/D000/j8ccfxznnnIN27dph6tSpuOeeewCEZy7t2LEDDzzwAA4++OBGjWDu+5lof59R0lacmwrFRXl5ubjrrrvEyJEjRZ8+fcRRRx0lJk+eXKtjlaqqYvHixWLEiBGid+/eYtiwYeLBBx+s0TXtr7/+ElOmTBEDBgwQhx12mJg4caL47rvvIj+v3pFzf6o60jWEpmlixYoV4oQTThC9e/cWw4cPFw888ECkE1ZV16z//Oc/tX73zTffFGPHjhW9e/cWJ554onj66adr/Pz9998XZ555pujTp484+uijxcyZM8WuXbsiP6+rM9add95Zo4vat99+K4477jjRp08f8d1334ni4mIxdepUceSRR4ojjzxSnHvuueLDDz8UJ510krjlllsiv/fJJ5+IU089VfTu3VuMGTNGrF27VuTl5dXohHmgx3tfVY/FSy+9JM4++2zRu3dvccopp4hPP/20zssPHDiwVre/A9m3I50Q4b/Ro48+GnnunHTSSeKJJ56o0cmvqrvpxRdfLPr27SvGjBkj3nzzzQPe3gcffCDOOuss0b9/fzF48GBxzz33CJ/Pd8DfKysrEw8++KAYPXq0GDBggBg0aJC44IILaj0W+z5nA4GAWLBggRgyZIjo06ePOPXUU8Wrr75a43feeustMWjQINGvXz+xe/fuOp/37777rsjLy4t0tauri2xVF7kqRxxxRI3Oq7/88os499xzRZ8+fcSIESPE66+/LvLy8sTjjz9+wPv/xhtviIkTJ4qjjz5a9O/fX4wdO1Y8+uijwuv1Ri6jaZpYsGCBGDx4sOjfv78YPXq0ePzxx8WcOXPEqFGjIpdbvXq1OPzww8XAgQMj7wcHeu2oqioeeOABceyxx4p+/fqJa665RsybN08cdthhNW6/Ic+b+jrnVT3GW7ZsOeDjQZQseMzmMTvdjtn7e5/fsGGDOPTQQ8W5554b+d6BngeffvqpOPXUU0Xfvn3F0KFDxcyZMyNd2H/44QchhBBbt24VV155pRg0aJDo27evGDduXI3HvanHpyuuuEJMnDix3vta1/G/vLxc3HLLLZHPFeeee6746KOP9vs7ddnfa0sIIT7++GORl5cnZs6cGfne2rVrxZgxY0Tv3r3F4MGDxW233SbKysoadR/3/UxEtUlCcNUqxd7nn38Op9NZozPXp59+iksuuQSvvvpqpMFALP388884++yz8fbbb9c5mhdtPXr0wPXXX49LLrkk5reVCn744Qf4/f4a6yG3bNmCUaNGYdmyZXWuP0kUwWAQb775JoYMGVKjecG1116LzZs3Y/369VG5naomDvtuLk9EFE08ZhNRc6TcFFlKTD/++CNWrVqF2bNno0uXLti5cycWL16MgQMHxvxA9csvv+DDDz/Eq6++iuOPPz4uBypqvG3btmHOnDmYOXMm+vbti6KiIixfvhwHH3wwhgwZYnR5+2WxWLBs2TKsXbsWl156Kex2O7744gu8+eabtTZFb4qXXnoJv//+O1588UUsXLgwChUTEdWPx2wiag4GTIqLKVOmIBgMYsWKFcjPz0dWVhZOPPHEOltFR5vP58MTTzyBLl26YO7cuTG/PWqa0047DaWlpXjhhRewaNEiOJ1ODB48GLNmzYrKov9Ye/TRR3H//ffjxhtvhNfrRZcuXTB//nycccYZzb7uX3/9Fa+++iomTpxYa58yIqJo4zGbiJqDU2SJiIiIiIgoKthnl4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTiIiIiIiIooIBk4iIiIiIiKKCAZOIiIiIiIiiggGTYioQCGDEiBFGl0FERERERHHAgElERERERERRIQkhhNFFUGrxeDy47rrrUFFRgc6dO+Orr75Chw4dkJOTg4qKCqxYsQJz587F1q1boes6pk+fjkGDBuHBBx/El19+CV3XMWbMGFx44YVYs2YNXnnlFciyjMMPPxyzZ882+u4REREREVE9OIJJUbd+/Xrk5eVhzZo1GD9+fOT7p5xyCp588km89NJLyMnJwZo1a7Bs2TLMmzcPAPDKK6/g/vvvx5o1a2Cz2QAA69atw5w5c/DCCy+gU6dOUFXVkPtEREREREQHZjK6AEo9f/31F4477jgAQP/+/WEyhZ9mXbp0AQBs2LAB3333HX7++WcAgKqqKC0txcKFC7Fw4UIUFRVFfv/uu+/G448/jvvvvx8DBgwAB9yJiIiIiBIXAyZF3SGHHIIff/wRJ5xwAv73v/9FRh0lSYr8vG3btvj3v/8Nv9+PRx55BE6nE2+99RYWLlwIIQTGjBmDMWPG4MUXX8Ttt98Oq9WKSy65BD/88AOOOuooI+8eERERERHVgwGTou7888/HjTfeiPPOOw+HHHIIzGZzjZ+PHz8eN998MyZOnAi3240JEybAYrEgKysLp512GrKysjB48GC0b98ePXr0wLhx45CTk4M2bdqgf//+Bt0rIiIiIiI6EDb5ISIiIiIioqhgkx8iIiIiIiKKCgZMIiIiIiIiigoGTCIiIiIiIooKBkwiIiIiIiKKCgZMIiIiIiIiigoGTCIiIiIiarKPP/4YN9xwQ63vz5gxA1999RU+/vhjvPDCCwZURkbgPphERERERBQzQ4cONboEiiMGTCIiIiKiNHfGGWfgscceQ2ZmJgYNGoRnnnkGvXr1whlnnIHTTz8db775JiRJwujRozF58mRs2rQJN910E+x2O+x2O7KysgAAa9aswdq1a9GqVSsUFxcDANatW4fNmzdj/PjxuPbaa9G2bVts374dffv2xe23346SkhJcd911CAaD6NKlC7788ku8++67Rj4c1AwMmER1EEJA10Xkv4UAIAAhABH+5j//DUDa+z9S9S+qfiaF/8myBEmS9n79z8+JiIioYYQQ+/26MfY9Fqf7sXnkyJH45JNP0LZtW3Ts2BGfffYZLBYLOnfujLfeegvPPvssJEnChRdeiCFDhuChhx7CNddcg8GDB2PFihXYvHkzKisrsXr1arz22muQJAlnnnlmrdv5+++/sWrVKtjtdpxwwgkoLCzEypUrMXLkSJx//vn47LPP8NlnnxnwCFC0MGBSWqkKjuF/gK4J6EJA6OH/1zUBVRXQtPBlmnHcqpMsh4OmLEtQTBJkSYK092tZBhRFivy8KpASERGlsuohseq/oxkkG6quY27171X9d6oem0866SQsX74c7dq1w4wZM/D0009DCIGTTz4Z9957Ly688EIAQHl5ObZt24a//voL/fr1AwAcfvjh2Lx5MzZv3oxu3brBYrEAQOTn1XXu3BkulwsA0KpVKwQCAWzatAlnnHEGAODII4+Mw72lWGLApJSk6wKapof/f29g1DQdwaAOVY39Qar+urB3ZFQAwfovJ0nhsGk2y+EgKstQZAkmkwRZkaEoqXlwIyKi1BWeEVQ7QMYjPDZEXXXU9b19Q2eqBM+8vDzs2LEDhYWFuPbaa/Hoo4/i/fffx+23345u3brhsccegyRJePLJJ5GXl4dDDjkEP/zwA4YOHYpff/0VANCpUyds3LgRfr8fZrMZv//+O0499dQat1PX45SXl4cffvgBhx56KH788cd43F2KIQZMSnqaFg6NmqpD1QRCIR2hoAZdN7qyphMCUFUBVdVq/UySAatFgcksw6RIUEzhwKko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zS29tUoSK1kra233xK7bPRY7jpHjdIMSQG8QmAAAAACAVHAzFwAAAAAgFQQmAAAAACAVBCYAAAAAIBUEJgAAAAAgFQQmAAAAACAVBCYAAAAAIBUEJgAAAAAgFQQmAAAAACAVBCYAAAAAIBVe1gNg5Wu323rmmWc0MTGhDRs26PTp0zp8+LD2798v13WVz+e1f/9+HTlyROPj47rrrrv02GOPafv27XrkkUf04osvaufOndq3b59uvfVWffvttzLG6K233lKlUsn67QEAACzI6dOnValUNDo6mvUoQM9wBRM999FHH2lkZEQffvihdu/erYsXL+qll17S3r17dfToUT344IM6cOCAduzYoRMnTqjdbqtWq+nkyZOy1urcuXO65ZZb1Gg0dPfdd+vo0aMaHh7WiRMnsn5rAAAAC/bxxx9rYmIi6zGAnuIKJnruhx9+0O233y5J2rx5s4aGhjQxMaEbb7xRkrR161a9/vrrGh8f1yuvvKJTp05px44d+uyzz/T1119rbGxMxhhJ0pYtWyRJGzZsUKfTyeYNAQCAVe3YsWP6/PPPNTs7q+npaT3xxBOy1uq9996b/5433nhD33//vQ4ePCjf93Xbbbfpyy+/1NmzZzU1NaXjx4/r0KFDkqQHHnhAhw4d0vDwcFZvCUgNVzDRczfccIPOnDkjSfrpp580PT2t4eFhffPNN5K6y0U2btwox3F000036e2339a2bds0Pj6u1157TTt27Jj/uy6HJgAAQJaazaaOHDmid955RwcOHND58+d1+PBhvfvuu9q0aZO++uorSVKn09H777+v3bt3a/v27Xr66ad177336rvvvtPMzIzOnz+vwcFB4hIrBlcw0XO7du3Sc889p4ceekjXXnut8vm8Xn75Ze3fv1/WWrmuq1dffVWSdOedd+r555/X6Oiotm3bpk8++URbt27N+B0AAAD82datW+U4jtauXatqtSpjjJ599lmVy2VduHBBY2NjkqRNmzZd8bPGGN1zzz369NNP9fPPP2vXrl2LPD3QOwQmeu7cuXPatWuXtm3bph9//FFnzpzRli1b/rSM5LI77rhDJ0+elCRt375dp06dmv/a8ePH5z/es2dP7wcHAAD4D86ePStJmpycVL1e1wcffKAvvvhCkvToo4/KWitJcpzfFwwaY+Y/v3PnTu3Zs0etVktPPfXUIk8P9A6BiZ677rrr9OSTT+rNN99UFEXau3dv1iMBAABclcnJST388MOq1+vat2+fjh07pvvuu0+lUknValUTExMaGRn508/cfPPNOnjwoEZGRrR582aVy2WNjY3J8/gvOVYOYy+fRgEAAADwPx07dkwXLly46hVVjz/+uF544QVdf/31KU0GZI9NfgAAAIBF1G63df/992t0dJS4xIrDFUwAAAAAQCq4ggkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEgFgQkAAAAASAWBCQAAAABIBYEJAAAAAEjF/wMvQslV2o10xQAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set_style('whitegrid')\n", "fig, axes = plt.subplots(ncols=2, figsize=(16, 8))\n", "\n", "# Show top five clothing categories and top five reasons for rent\n", "category_top_data = user_data.loc[user_data['category_top'].isin(user_data['category_top'].value_counts()[:5].index.tolist())]\n", "rented_for_top_data = user_data.loc[user_data['rented_for_top'].isin(user_data['rented_for_top'].value_counts()[:5].index.tolist())]\n", "\n", "category_top_values = (category_top_data['category_top'].value_counts(normalize=True).values*100).tolist()\n", "category_top_labels = category_top_data['category_top'].value_counts().index.tolist()\n", "category_colors = ['#E5E4F4', '#E8F1DE', '#FDF9F0', '#F2E6F0', '#D9E4FB']\n", "\n", "# Plot the distribution of users by clothing category\n", "axes[0].pie(category_top_values, labels=category_top_labels, colors=category_colors, autopct='%.0f%%')\n", "axes[0].set_title('User Percentage by Top 5 Clothing Category', fontsize=16)\n", "\n", "rented_for_top_values = (rented_for_top_data['rented_for_top'].value_counts(normalize=True).values*100).tolist()\n", "rented_for_top_labels = rented_for_top_data['rented_for_top'].value_counts().index.tolist()\n", "rented_for_colors = ['#FBFBFB', '#FAEDDA', '#D2C1CE', '#E1CEC9', '#F3C0A1']\n", "\n", "# Plot the distribution of users by reason for rent\n", "axes[1].pie(rented_for_top_values, labels=rented_for_top_labels, colors=rented_for_colors, autopct='%.0f%%')\n", "axes[1].set_title('User Percentage by Top 5 Reason for Rent', fontsize=16)\n", "\n", "plt.savefig('data/images/fig6.png', dpi=200, transparent=True) \n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The most common clothing categories are dresses and gowns that align with the most common reasons for renting which are for wedding, formal affair, and party. \n", "***\n", "**Item Data** I create a separate table for item information by grouping the data by `item_id` and adding new features:\n", "- `fit_small`, `fit_large`, and `fit` are the count of users who rated the item as too small, too large, or right fit.\n", "- `user_count` is the total numbers of users who rated and reviewed the item.\n", "- `bust_size_top` and `body_type_top` are the most common bust size and body type of the users who rented the item.\n", "- `mean` and `median` of the `weight`, `height`, `size`, and `age` of all users who rented the item.\n", "- `rating_average` is the average of all user ratings of the item." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "def create_item_data(df):\n", " '''\n", " Groups the data by item and returns dataframe containing item details. \n", " '''\n", " item_df = pd.DataFrame(df.groupby('item_id').count().reset_index()['item_id'])\n", " \n", " for col in df.columns:\n", " if col == 'fit':\n", " feature_small = df.loc[df[col]=='small'].groupby('item_id').count()[col]\n", " feature_fit = df.loc[df[col]=='fit'].groupby('item_id').count()[col]\n", " feature_large = df.loc[df[col]=='large'].groupby('item_id').count()[col]\n", " for idx, feature in enumerate([feature_small, feature_fit, feature_large]):\n", " item_df = item_df.join(feature, on='item_id', rsuffix=idx).fillna(0)\n", " if col == 'user_id':\n", " feature = df.groupby(df['item_id']).count()[col]\n", " item_df = item_df.merge(feature, on='item_id')\n", " if col in ['bust_size', 'body_type']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('item_id')[col].agg(pd.Series.mode).apply(lambda x: x[0] if type(x)==np.ndarray else x)\n", " item_df = item_df.merge(feature, on='item_id')\n", " if col in ['weight', 'height', 'size', 'age']:\n", " feature_mean = df.groupby(df['item_id']).mean()[col]\n", " feature_median = df.groupby(df['item_id']).median()[col]\n", " for feature in [feature_mean, feature_median]:\n", " item_df = item_df.merge(feature, on='item_id')\n", " if col in ['rating', 'review_length']:\n", " feature = df.groupby(df['item_id']).mean()[col]\n", " item_df = item_df.merge(feature, on='item_id')\n", " if col in ['rented_for', 'category']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('item_id')[col].agg(pd.Series.mode).apply(lambda x: x[0] if type(x)==np.ndarray else x)\n", " item_df = item_df.merge(feature, on='item_id')\n", " if col == 'rented_for':\n", " feature = df.groupby('item_id')[col].apply(set).apply(lambda x: list(x))\n", " item_df = item_df.merge(feature, on='item_id')\n", " if col in ['review_month', 'review_season']:\n", " feature = df.sort_values('review_date', ascending=False).groupby('item_id')[col].agg(lambda x: x.value_counts().index[0])\n", " item_df = item_df.merge(feature, on='item_id')\n", " else:\n", " continue\n", " \n", " item_df.columns = ['item_id', 'fit_small', 'fit', 'fit_large', 'user_count', 'bust_size_top', 'weight_mean', \n", " 'weight_median', 'rating_average', 'rented_for_top', 'rented_for_all', 'body_type_top', \n", " 'category_top', 'height_mean', 'height_median', 'size_mean', 'size_median', 'age_mean', \n", " 'age_median', 'review_length_average', 'review_month_top', 'review_season_top']\n", " \n", " return item_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Table to use for item to item recommendations later:" ] }, { "cell_type": "code", "execution_count": 17, "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", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_top...category_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_top
012337373.00566.0047.0068636d140.67135.004.40formal affair...gown65.3965.0015.1213.0034.3633.0066.0812Winter
112379365.001497.00152.00171434b132.98130.004.77formal affair...gown65.0665.009.728.0031.3131.0074.415Winter
\n", "

2 rows × 22 columns

\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "0 123373 73.00 566.00 47.00 686 36d \n", "1 123793 65.00 1497.00 152.00 1714 34b \n", "\n", " weight_mean weight_median rating_average rented_for_top ... \\\n", "0 140.67 135.00 4.40 formal affair ... \n", "1 132.98 130.00 4.77 formal affair ... \n", "\n", " category_top height_mean height_median size_mean size_median age_mean \\\n", "0 gown 65.39 65.00 15.12 13.00 34.36 \n", "1 gown 65.06 65.00 9.72 8.00 31.31 \n", "\n", " age_median review_length_average review_month_top review_season_top \n", "0 33.00 66.08 12 Winter \n", "1 31.00 74.41 5 Winter \n", "\n", "[2 rows x 22 columns]" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Create new dataframe for item data\n", "item_data = create_item_data(data)\n", "item_data.head(2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Time Series Analysis" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfsAAAFACAYAAAC7htVkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAABKPUlEQVR4nO3deVxU9f7H8RerCwMiimtibrijCG4JqFlXb8vNSk0tbXMtNVERzYU0lzRBTaMsTQ0XJJeu3coWM3HLlESTstJySdQQNRkUhuX8/vDnXLmpjAkMwvv5ePQwznznzOd8mJn3nO85nHEwDMNARERESixHexcgIiIihUthLyIiUsIp7EVEREo4hb2IiEgJp7AXEREp4RT2cscpbX9AUtq2V0QKnsJeisS4ceNo2LDhTf9bsGBBvuv58ssviYiIuKXHXrBgAf7+/vmOM5vNREdH8/DDD+Pv709QUBBDhgxh3759t/R4BSkuLo558+bd9np27NjB/fffT/PmzXn11VevO+Z6v5NmzZrRqVMnIiIiMJvNt13Hte69916mTp1aoOu8HevXr//L9vv7+9OzZ082b978t9e7b98+GjduzMsvv3zd2w8ePEiTJk2YMWPG334Mkfw427sAKR1eeOEFevfubf05PDyc2rVr88ILL1iXVatWLd/1LF++nPLlyxd4fadOneLZZ5/FbDbz9NNP07RpU9LT01mzZg1PPvkkUVFRdOvWrcAfNz9vv/02nTp1uu31REZGUrZsWd59912qV69+w3H9+vXjoYcesv6cnp7Orl27WLx4MefPn+eNN9647VquWrhwIR4eHgW2voKyePFi3N3dyc3NJS0tjU8//ZThw4cTExNDQEDALa/P39+fPn36sGrVKh5//PE868jJyWHy5MnUrFmT0NDQgtwMkTwU9lIkfHx88PHxsf5ctmxZvLy8aNmypf2KukZ4eDhms5m4uDhq1KhhXd6lSxeGDBnCpEmTCAoKwmQy2bHKv+/ChQt07NiRdu3a3XRc9erV//I76dChA6dOneLjjz8mPT0dNze3AqmpSZMmBbKegta0aVO8vLysP3fs2JE9e/awdu3avxX2AKNGjWLz5s288sorbNiwAWfnK2+9MTEx/PDDD7z//vuUK1euQOoXuR5N40uxYRgGcXFxPPzww/j5+fGPf/yDZcuWWW/v168f3377LV9//TUNGzbk999/B2Dbtm089dRT+Pv707x5cx555BE+//xzmx/34MGD7N69mwEDBuQJegBHR0dCQ0Pp2bMnaWlp1uVffPEFjz/+OC1btqRjx47MmzePrKws6+3Xm6KePn069957r/Xnhg0bsn79ekJDQ/H396dt27ZMnz6d7Oxs6zpOnjzJypUradiw4Q3rT09PZ9asWdx77734+fnRo0cPtm/fDsDvv/9Ow4YNOXnyJKtWrcrTt1txvQ85O3bsoGfPnvj5+RESEsL8+fPJyckBrhw6adWqFRaLJc99RowYwZNPPnndHqWmpjJ27FjatGmDv78/Q4YM4cSJE8CVwzf/W/v06dNp2LChdQzA1KlT6dGjBwD79+/nySefxN/fnzZt2jBixAhOnjx5y9sO4O7ubv3/mJgYmjRpwtmzZ/OMmTRpEo899th1728ymZg8eTI///wz77//PgBnzpxh/vz59OnThzZt2gBw7NgxXnjhBfz9/QkMDCQsLIxz587lWdfGjRt5/PHHadGiBS1atKB3797s2bPHevu4ceN44YUXGD16NK1atdKMgQAKeylGoqKieOWVV7j33nuJjo6mW7duzJ49m7lz5wIQERFBkyZNaNWqFWvWrKFKlSocOHCAQYMG0aBBA6Kjo5k7dy7lypVj9OjRf3mTvJEdO3YAEBISct3bGzduzNixY63T32vWrGHYsGE0b96chQsX8tRTT/Hee+8xfvz4W97mGTNm4OXlRXR0NE8++STvv/8+cXFxwJVpbm9vb7p27cqaNWuue//c3FwGDBjA+vXrGTRoEAsWLKBGjRoMGjSIbdu2UaVKFdasWZNnPVWqVLlhPbm5uWRnZ1v/O3/+PP/+97/58MMPue+++6x79bt27WLgwIHcddddLFy4kOeff56lS5cybdo0AB566CHS09PZtm2bdd2XLl0iPj6eBx988C+Pm5GRQf/+/UlISGDixInMnj2bs2fP8tRTT/Hnn3/Srl07XFxc+Oabb6z3+fbbbwFISEiwLtuxYwchISFcvnyZQYMGUbVqVaKjo3n11Vf54YcfGDVqVL6/k2t7cOHCBVauXMkvv/xCz549AXjwwQdxdHTk008/td7HYrHw2Wef8cgjj9xwvV26dKFr1668+eabpKamMnv2bCpWrMiYMWMAOHv2LH379iU5OZnZs2czZcoUEhMTef75560fmjZt2sTYsWPp1KkT77zzDjNnzuTixYuEhobm+WC1detWMjMzefPNN3niiSfy3WYp+TSNL8XC+fPnWbp0Kc8//7x1TyQoKAjDMFiyZAlPP/009evXx2QyUb58eetU8y+//ML999+f56S9GjVq8Oijj7J//346d+6c72OfPn0agJo1a+Y7Njc3l3nz5vHggw/yyiuvWOt0d3cnIiKCAQMG0KhRI5u329/fn0mTJgHQvn17tmzZQnx8PH379qVJkya4urpSuXLlGx7u+Prrr/nuu+9YvHgxwcHBwJVp5yeeeIK5c+eyfv16WrZsme96rpozZw5z5szJs8zT05MePXrk2UOcN28eLVq0sH4QCwkJoUKFCowfP57nn3+eOnXq0LRpUzZt2kSXLl0A2LJlC1lZWdc99+HDDz/kt99+46OPPqJevXrWfnTu3JmYmBiGDRuGv78/u3fvpkePHvz555/8/PPPNGnShL1799K9e3dOnjzJ0aNH6dixI7/88gsXLlygX79+1pMzK1asyDfffENubi6Ojjfez+nQocNfll27Hi8vL0JCQvjPf/5Dv379AIiPjyc9Pf26H2SuNWnSJB544AGGDx/Od999x3vvvWf9ALV8+XIyMzN57733rIcR/Pz86Nq1K5988gndu3fn+PHjPPnkkwwfPty6ThcXF4YNG8bRo0fx9fUFIDs7m6lTp+Y5HCGlm/bspVjYv3//dYPgwQcfJCsri/3791/3fo8//jhvvPEGly5d4vvvv+ejjz5i5cqVAH+ZQr4RJycn4EqQ5+fIkSOcO3fuL3VePalt7969Nj3mVS1atMjzc9WqVbl06ZLN99+zZw9ubm7WoL/qgQceICkp6ZbPoO/fvz9r167lgw8+YNiwYbi4uDBo0CAmTZpkncq/fPkyBw4coHPnznlmAUJCQsjNzWX37t0APPzww3z11VfW38Onn37KPffcc90A2r17N7Vr16Z27drW9ZUtW5aAgADr3nxwcLB13Xv27KFKlSo8+OCD1j377du3U7FiRZo3b07dunXx9PRkyJAhTJ06la1bt9KyZUtGjBhx06AHWLZsGWvXrmXt2rUsW7aMQYMGsXLlSl577TXrmO7du5OYmGg9hLBx40Y6dOhA5cqVb7pub29vwsLCSEhIoEePHtxzzz15etCyZUs8PDysPahevTr16tVj165dANbfxcWL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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.style.use('seaborn')\n", "\n", "time_series_data = data.sort_values('review_date').set_index('review_date', drop=True).drop('2010-11-03')\n", "\n", "# Resample data to yearly count of reviews\n", "yearly_data = time_series_data.resample('Y').count()\n", "yearly_data = yearly_data.drop(yearly_data.index[-1])\n", "\n", "# Plot the aggregated yearly count of reviews\n", "yearly_data['rating'].plot(figsize=(8,5), colormap='PRGn', xlabel='')\n", "\n", "plt.title('Total Count of Reviews By Year', fontsize=16)\n", "plt.savefig('data/images/fig7.png', dpi=200, transparent=True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The count of reviews increased over the years from 10,000 in 2013 to almost 70,000 by 2018. " ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "scrolled": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Resample data to monthly count of reviews\n", "monthly_data = time_series_data[~(time_series_data['review_year']==2011)].resample('MS').count()\n", "monthly_data = monthly_data.drop(monthly_data.index[-1])\n", "\n", "# Plot the aggregated monthly count of reviews\n", "monthly_data['rating'].plot(figsize=(8,5), colormap='seismic', xlabel='')\n", "\n", "plt.title('Total Count of Reviews By Month', fontsize=16)\n", "plt.savefig('data/images/fig8.png', dpi=200, transparent=True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The count of reviews peak during months of spring and fall with the highest spike of over 8,000 reviews in October of 2017." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Resample data to yearly average rating of reviews\n", "yearly_data = time_series_data.resample('Y').mean()\n", "yearly_data = yearly_data.drop(yearly_data.index[-1])\n", "\n", "# Plot the aggregated to yearly average rating of reviews\n", "yearly_data['rating'].plot(figsize=(8,5), colormap='PRGn', xlabel='')\n", "\n", "plt.title('Average Rating of Reviews By Year', fontsize=16)\n", "plt.savefig('data/images/fig9.png', dpi=200, transparent=True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The average ratings steadily increased from over 4.45 in 2013 to 4.575 in 2016 but went down by less then 0.025 in 2017." ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Resample data to monthly average rating of reviews\n", "monthly_data = time_series_data[~(time_series_data['review_year']==2011)].resample('MS').mean()\n", "monthly_data = monthly_data.drop(monthly_data.index[-1])\n", "\n", "# Plot the aggregated to monthly average rating of reviews\n", "monthly_data['rating'].plot(figsize=(8,5), colormap='seismic', xlabel='')\n", "\n", "plt.title('Average Rating of Reviews By Month', fontsize=16)\n", "plt.savefig('data/images/fig10.png', dpi=200, transparent=True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The average ratings peak during the latter months of the year and aligned with the higher counts of rentals in the fall." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## IV. Recommendation Systems\n", "\n", "> \"Recommendation Systems are software agents that elicit the interests and preferences of individual consumers […] and make recommendations accordingly. They have the potential to support and improve the quality of the\n", "decisions consumers make while searching for and selecting products online.\" [(Bo Xiao and Izak Benbasat)](https://misq.org/e-commerce-product-recommendation-agents-use-characteristics-and-impact.html)\n", "\n", "To start, I create a set of generalized recommendations that are based on all the data. For all the items, I calculate a weighted rating and return the top 10 highest-rated items across the board. To **personalize the recommendations**, I apply the different algorithms for Content-Based Recommenders and Collaborative Filtering Systems, which I implement using the `surprise` library later.\n", "***\n", "\n", "### Popularity Recommendations\n", "\n", "##### Bayesian Average\n", "\n", "$$W = \\left(\\frac{v}{v + m} \\right)R + \\left(\\frac{m}{v + m} \\right)C$$\n", "where:\n", "\n", "$W$ = Weighted rating
\n", "$v$ = Number of ratings for the item
\n", "$m$ = Minimum number of ratings required to be listed on top chart
\n", "$R$ = Average rating of the item
\n", "$C$ = Mean rating across the entire data" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "m = item_data['user_count'].quantile(0.9)\n", "C = item_data['rating_average'].mean()\n", "\n", "def weighted_rating(x, m=m, C=C):\n", " '''\n", " Calculates weighted rating based on Bayesian Average.\n", " '''\n", " v = x['user_count']\n", " R = x['rating_average']\n", " return (v/(v+m) * R) + (m/(m+v) * C)\n", "\n", "def popular_recommendation(df=data, n=10):\n", " '''\n", " Returns the most popular items according to the highest weighted ratings.\n", " '''\n", " item_df = create_item_data(df)\n", " \n", " top_item_ratings = item_df.loc[(item_df['user_count']>=m)]\n", " top_item_ratings['score'] = top_item_ratings.apply(weighted_rating, axis=1)\n", " top_item_ratings = top_item_ratings.sort_values('score', ascending=False)\n", " \n", " return top_item_ratings.head(n)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Top 10 Popularity-Based Recommendations:" ] }, { "cell_type": "code", "execution_count": 23, "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", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_topscore
1948106439712.00257.0015.0028434b129.45130.004.89wedding[formal affair, other, party, wedding, date]athleticgown64.8165.008.148.0028.6528.0060.7410Winter4.82
122370983230.00151.009.0019034b134.62135.004.86formal affair[formal affair, other, party, wedding, date]hourglassgown65.1165.0012.1412.0033.9532.0072.493Winter4.77
2260121342727.00270.0011.0030834b132.22130.004.82wedding[formal affair, everyday, other, party, weddin...athleticgown66.2366.009.278.0029.3229.0061.104Spring4.77
160890364713.00126.004.0014334b140.04138.004.88formal affair[formal affair, other, party, wedding, date]athleticgown65.9466.0012.6712.0034.4332.0060.8710Winter4.76
2599137863120.00302.008.0033034b139.89135.004.81wedding[formal affair, other, party, wedding, date, v...hourglassmaxi65.9366.0012.4211.0032.9832.0065.146Spring4.76
112379365.001497.00152.00171434b132.98130.004.77formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.0665.009.728.0031.3131.0074.415Winter4.76
181210030765.00122.005.0013234b137.98135.004.89wedding[formal affair, other, party, wedding, date, v...athleticdress65.9666.0011.5512.0032.8032.0055.2110Winter4.76
220111869239.0091.003.0010334c137.48135.004.92party[formal affair, other, party, wedding, date, v...hourglassdress65.3365.0013.5314.0030.3330.0065.7011Winter4.76
2351126066625.00126.003.0015434b130.13130.004.84party[formal affair, other, party, wedding, date, v...hourglassdress64.8265.0010.668.0032.7732.5054.057Spring4.74
123671437423.00112.002.0013734b133.23132.004.85wedding[formal affair, work, other, party, wedding, d...athleticdress65.8366.0010.188.0031.4930.0055.9710Fall4.74
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "1948 1064397 12.00 257.00 15.00 284 34b \n", "1223 709832 30.00 151.00 9.00 190 34b \n", "2260 1213427 27.00 270.00 11.00 308 34b \n", "1608 903647 13.00 126.00 4.00 143 34b \n", "2599 1378631 20.00 302.00 8.00 330 34b \n", "1 123793 65.00 1497.00 152.00 1714 34b \n", "1812 1003076 5.00 122.00 5.00 132 34b \n", "2201 1186923 9.00 91.00 3.00 103 34c \n", "2351 1260666 25.00 126.00 3.00 154 34b \n", "1236 714374 23.00 112.00 2.00 137 34b \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "1948 129.45 130.00 4.89 wedding \n", "1223 134.62 135.00 4.86 formal affair \n", "2260 132.22 130.00 4.82 wedding \n", "1608 140.04 138.00 4.88 formal affair \n", "2599 139.89 135.00 4.81 wedding \n", "1 132.98 130.00 4.77 formal affair \n", "1812 137.98 135.00 4.89 wedding \n", "2201 137.48 135.00 4.92 party \n", "2351 130.13 130.00 4.84 party \n", "1236 133.23 132.00 4.85 wedding \n", "\n", " rented_for_all body_type_top \\\n", "1948 [formal affair, other, party, wedding, date] athletic \n", "1223 [formal affair, other, party, wedding, date] hourglass \n", "2260 [formal affair, everyday, other, party, weddin... athletic \n", "1608 [formal affair, other, party, wedding, date] athletic \n", "2599 [formal affair, other, party, wedding, date, v... hourglass \n", "1 [formal affair, work, other, party, wedding, d... hourglass \n", "1812 [formal affair, other, party, wedding, date, v... athletic \n", "2201 [formal affair, other, party, wedding, date, v... hourglass \n", "2351 [formal affair, other, party, wedding, date, v... hourglass \n", "1236 [formal affair, work, other, party, wedding, d... athletic \n", "\n", " category_top height_mean height_median size_mean size_median \\\n", "1948 gown 64.81 65.00 8.14 8.00 \n", "1223 gown 65.11 65.00 12.14 12.00 \n", "2260 gown 66.23 66.00 9.27 8.00 \n", "1608 gown 65.94 66.00 12.67 12.00 \n", "2599 maxi 65.93 66.00 12.42 11.00 \n", "1 gown 65.06 65.00 9.72 8.00 \n", "1812 dress 65.96 66.00 11.55 12.00 \n", "2201 dress 65.33 65.00 13.53 14.00 \n", "2351 dress 64.82 65.00 10.66 8.00 \n", "1236 dress 65.83 66.00 10.18 8.00 \n", "\n", " age_mean age_median review_length_average review_month_top \\\n", "1948 28.65 28.00 60.74 10 \n", "1223 33.95 32.00 72.49 3 \n", "2260 29.32 29.00 61.10 4 \n", "1608 34.43 32.00 60.87 10 \n", "2599 32.98 32.00 65.14 6 \n", "1 31.31 31.00 74.41 5 \n", "1812 32.80 32.00 55.21 10 \n", "2201 30.33 30.00 65.70 11 \n", "2351 32.77 32.50 54.05 7 \n", "1236 31.49 30.00 55.97 10 \n", "\n", " review_season_top score \n", "1948 Winter 4.82 \n", "1223 Winter 4.77 \n", "2260 Spring 4.77 \n", "1608 Winter 4.76 \n", "2599 Spring 4.76 \n", "1 Winter 4.76 \n", "1812 Winter 4.76 \n", "2201 Winter 4.76 \n", "2351 Spring 4.74 \n", "1236 Fall 4.74 " ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.set_option('display.max_columns', 30)\n", "\n", "top10_overall = popular_recommendation()\n", "top10_overall" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To simulate the online shopping experience, I can also filter the popularity-based recommendations on the data features such as `dress` for clothing category and `wedding` for reason to rent using the function I define as `filter_popular_recommendation`." ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [], "source": [ "column_list = []\n", "operator_list = []\n", "condition_list = []\n", "\n", "def append_condition(column, operation, condition):\n", " '''\n", " Appends a filter to column, operator, and condition lists.\n", " ''' \n", " column_list.append(column)\n", " operator_list.append(operation)\n", " condition_list.append(condition)\n", "\n", "def filter_popular_recommendation(df=data, n=10, bust_size=None, weight=None, rating=None, rented_for=None, \n", " body_type=None, category=None, height=None, size=None, age=None, \n", " review_month=None, review_season=None, review_year=None):\n", " '''\n", " Returns the most popular recommendations filtered by the features passed as arguments.\n", " '''\n", " if bust_size:\n", " append_condition('bust_size', '==', bust_size)\n", " if weight:\n", " append_condition('weight', '>=', weight-10)\n", " append_condition('weight', '<=', weight+10)\n", " if rented_for:\n", " append_condition('rented_for', '==', rented_for)\n", " if body_type:\n", " append_condition('body_type', '==', body_type)\n", " if category:\n", " append_condition('category', '==', category)\n", " if height:\n", " append_condition('height', '>=', height-2)\n", " append_condition('height', '>=', height+2)\n", " if size:\n", " append_condition('size', '==', size)\n", " if age:\n", " append_condition('age', '>=', age-4)\n", " append_condition('age', '<=', age+4)\n", " if review_month:\n", " append_condition('review_month', '==', review_month)\n", " if review_season:\n", " append_condition('review_season', '==', review_season)\n", " if review_year:\n", " append_condition('review_year', '==', review_year)\n", " \n", " condition = ' & '.join(f'{col} {op} {repr(cond)}' for col, op, cond in zip(column_list, operator_list, condition_list))\n", " filtered_df = df.query(condition)\n", " \n", " return popular_recommendation(filtered_df, n)\n", "\n", "def reset_condition():\n", " '''\n", " Reinitializes lists for query for filtered popularity recommender.\n", " '''\n", " column_list = []\n", " operator_list = []\n", " condition_list = []\n", " return column_list, operator_list, condition_list" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Top 10 Popular Recommendations for Dress:" ] }, { "cell_type": "code", "execution_count": 25, "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", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_topscore
122310030765.00122.005.0013234b137.98135.004.89wedding[formal affair, other, party, wedding, date, v...athleticdress65.9666.0011.5512.0032.8032.0055.2110Winter4.76
148311869239.0091.003.0010334c137.48135.004.92party[formal affair, other, party, wedding, date, v...hourglassdress65.3365.0013.5314.0030.3330.0065.7011Winter4.76
1584126066625.00126.003.0015434b130.13130.004.84party[formal affair, other, party, wedding, date, v...hourglassdress64.8265.0010.668.0032.7732.5054.057Spring4.74
83271437423.00112.002.0013734b133.23132.004.85wedding[formal affair, work, other, party, wedding, d...athleticdress65.8366.0010.188.0031.4930.0055.9710Fall4.74
8477243195.0099.0014.0011832d134.67135.004.86wedding[formal affair, work, other, party, wedding, d...hourglassdress65.2765.009.838.0033.5133.0051.0810Summer4.73
137811061012.00111.0027.0014036b142.86140.004.84wedding[formal affair, everyday, other, party, weddin...hourglassdress65.8166.0011.5714.0031.0130.0048.9011Summer4.73
15424146110.00227.004.0024134d141.32135.004.78wedding[formal affair, everyday, other, party, weddin...hourglassdress66.1066.0014.1512.0031.7030.0067.826Spring4.72
2540194098514.0099.001.0011434d139.75138.004.83wedding[formal affair, work, other, party, wedding, d...hourglassdress65.6066.0012.9314.0034.9834.0049.3711Winter4.71
1262103144071.00160.001.0023236c138.88135.004.77party[formal affair, other, party, wedding, date, v...hourglassdress65.3165.0015.0914.0031.2331.0060.1112Winter4.71
1812636991.00105.0038.0014434b136.67135.004.81formal affair[formal affair, other, party, wedding, date]hourglassdress65.4565.009.378.0034.0132.0066.346Winter4.71
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "1223 1003076 5.00 122.00 5.00 132 34b \n", "1483 1186923 9.00 91.00 3.00 103 34c \n", "1584 1260666 25.00 126.00 3.00 154 34b \n", "832 714374 23.00 112.00 2.00 137 34b \n", "847 724319 5.00 99.00 14.00 118 32d \n", "1378 1106101 2.00 111.00 27.00 140 36b \n", "154 241461 10.00 227.00 4.00 241 34d \n", "2540 1940985 14.00 99.00 1.00 114 34d \n", "1262 1031440 71.00 160.00 1.00 232 36c \n", "181 263699 1.00 105.00 38.00 144 34b \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "1223 137.98 135.00 4.89 wedding \n", "1483 137.48 135.00 4.92 party \n", "1584 130.13 130.00 4.84 party \n", "832 133.23 132.00 4.85 wedding \n", "847 134.67 135.00 4.86 wedding \n", "1378 142.86 140.00 4.84 wedding \n", "154 141.32 135.00 4.78 wedding \n", "2540 139.75 138.00 4.83 wedding \n", "1262 138.88 135.00 4.77 party \n", "181 136.67 135.00 4.81 formal affair \n", "\n", " rented_for_all body_type_top \\\n", "1223 [formal affair, other, party, wedding, date, v... athletic \n", "1483 [formal affair, other, party, wedding, date, v... hourglass \n", "1584 [formal affair, other, party, wedding, date, v... hourglass \n", "832 [formal affair, work, other, party, wedding, d... athletic \n", "847 [formal affair, work, other, party, wedding, d... hourglass \n", "1378 [formal affair, everyday, other, party, weddin... hourglass \n", "154 [formal affair, everyday, other, party, weddin... hourglass \n", "2540 [formal affair, work, other, party, wedding, d... hourglass \n", "1262 [formal affair, other, party, wedding, date, v... hourglass \n", "181 [formal affair, other, party, wedding, date] hourglass \n", "\n", " category_top height_mean height_median size_mean size_median \\\n", "1223 dress 65.96 66.00 11.55 12.00 \n", "1483 dress 65.33 65.00 13.53 14.00 \n", "1584 dress 64.82 65.00 10.66 8.00 \n", "832 dress 65.83 66.00 10.18 8.00 \n", "847 dress 65.27 65.00 9.83 8.00 \n", "1378 dress 65.81 66.00 11.57 14.00 \n", "154 dress 66.10 66.00 14.15 12.00 \n", "2540 dress 65.60 66.00 12.93 14.00 \n", "1262 dress 65.31 65.00 15.09 14.00 \n", "181 dress 65.45 65.00 9.37 8.00 \n", "\n", " age_mean age_median review_length_average review_month_top \\\n", "1223 32.80 32.00 55.21 10 \n", "1483 30.33 30.00 65.70 11 \n", "1584 32.77 32.50 54.05 7 \n", "832 31.49 30.00 55.97 10 \n", "847 33.51 33.00 51.08 10 \n", "1378 31.01 30.00 48.90 11 \n", "154 31.70 30.00 67.82 6 \n", "2540 34.98 34.00 49.37 11 \n", "1262 31.23 31.00 60.11 12 \n", "181 34.01 32.00 66.34 6 \n", "\n", " review_season_top score \n", "1223 Winter 4.76 \n", "1483 Winter 4.76 \n", "1584 Spring 4.74 \n", "832 Fall 4.74 \n", "847 Summer 4.73 \n", "1378 Summer 4.73 \n", "154 Spring 4.72 \n", "2540 Winter 4.71 \n", "1262 Winter 4.71 \n", "181 Winter 4.71 " ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "top10_dress = filter_popular_recommendation(category='dress')\n", "column_list, operator_list, condition_list = reset_condition()\n", "top10_dress" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Top 10 Popular Recommendations for Wedding:" ] }, { "cell_type": "code", "execution_count": 26, "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", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_topscore
139710643977.00153.008.0016834b129.88129.004.87wedding[wedding]athleticgown64.6864.008.088.0029.5729.0063.7710Fall4.77
112379320.00435.0046.0050134b133.64130.004.78wedding[wedding]athleticgown64.8765.0010.088.0031.6831.0076.0010Summer4.75
1867137863115.00226.007.0024834c139.42135.004.81wedding[wedding]athleticmaxi65.9066.0011.699.0032.4731.0067.146Summer4.75
1623121342715.00150.007.0017234b132.06130.004.82wedding[wedding]athleticgown65.9066.009.268.0029.8029.0059.129Spring4.73
1012786528.00400.0010.0043834b134.43135.004.76wedding[wedding]hourglassgown64.7265.0011.6812.0035.6434.0068.7510Fall4.72
11108701841.0088.0010.009934c135.56135.004.86wedding[wedding]hourglassdress65.3565.009.968.0032.5231.0060.197Summer4.72
129510030763.0075.003.008134b137.58135.004.89wedding[wedding]athleticdress65.8366.0011.3112.0032.2831.0055.7910Fall4.72
2202414616.00173.002.0018134d141.25135.004.79wedding[wedding]hourglassdress66.1766.0013.5612.0032.0130.0071.356Summer4.71
176713095377.0069.007.008334c138.06135.004.88wedding[wedding]hourglassgown64.8865.0013.8713.0031.4830.0058.5810Summer4.71
231516870829.00200.009.0021834c131.89132.504.78wedding[wedding]athleticgown65.5565.009.148.0031.0830.0066.335Spring4.71
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "1397 1064397 7.00 153.00 8.00 168 34b \n", "1 123793 20.00 435.00 46.00 501 34b \n", "1867 1378631 15.00 226.00 7.00 248 34c \n", "1623 1213427 15.00 150.00 7.00 172 34b \n", "10 127865 28.00 400.00 10.00 438 34b \n", "1110 870184 1.00 88.00 10.00 99 34c \n", "1295 1003076 3.00 75.00 3.00 81 34b \n", "220 241461 6.00 173.00 2.00 181 34d \n", "1767 1309537 7.00 69.00 7.00 83 34c \n", "2315 1687082 9.00 200.00 9.00 218 34c \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "1397 129.88 129.00 4.87 wedding \n", "1 133.64 130.00 4.78 wedding \n", "1867 139.42 135.00 4.81 wedding \n", "1623 132.06 130.00 4.82 wedding \n", "10 134.43 135.00 4.76 wedding \n", "1110 135.56 135.00 4.86 wedding \n", "1295 137.58 135.00 4.89 wedding \n", "220 141.25 135.00 4.79 wedding \n", "1767 138.06 135.00 4.88 wedding \n", "2315 131.89 132.50 4.78 wedding \n", "\n", " rented_for_all body_type_top category_top height_mean height_median \\\n", "1397 [wedding] athletic gown 64.68 64.00 \n", "1 [wedding] athletic gown 64.87 65.00 \n", "1867 [wedding] athletic maxi 65.90 66.00 \n", "1623 [wedding] athletic gown 65.90 66.00 \n", "10 [wedding] hourglass gown 64.72 65.00 \n", "1110 [wedding] hourglass dress 65.35 65.00 \n", "1295 [wedding] athletic dress 65.83 66.00 \n", "220 [wedding] hourglass dress 66.17 66.00 \n", "1767 [wedding] hourglass gown 64.88 65.00 \n", "2315 [wedding] athletic gown 65.55 65.00 \n", "\n", " size_mean size_median age_mean age_median review_length_average \\\n", "1397 8.08 8.00 29.57 29.00 63.77 \n", "1 10.08 8.00 31.68 31.00 76.00 \n", "1867 11.69 9.00 32.47 31.00 67.14 \n", "1623 9.26 8.00 29.80 29.00 59.12 \n", "10 11.68 12.00 35.64 34.00 68.75 \n", "1110 9.96 8.00 32.52 31.00 60.19 \n", "1295 11.31 12.00 32.28 31.00 55.79 \n", "220 13.56 12.00 32.01 30.00 71.35 \n", "1767 13.87 13.00 31.48 30.00 58.58 \n", "2315 9.14 8.00 31.08 30.00 66.33 \n", "\n", " review_month_top review_season_top score \n", "1397 10 Fall 4.77 \n", "1 10 Summer 4.75 \n", "1867 6 Summer 4.75 \n", "1623 9 Spring 4.73 \n", "10 10 Fall 4.72 \n", "1110 7 Summer 4.72 \n", "1295 10 Fall 4.72 \n", "220 6 Summer 4.71 \n", "1767 10 Summer 4.71 \n", "2315 5 Spring 4.71 " ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "top10_wedding = filter_popular_recommendation(rented_for='wedding')\n", "column_list, operator_list, condition_list = reset_condition()\n", "top10_wedding" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Content-Based Recommenders\n", "\n", "Content-based recommendation systems are based on the idea that if a user likes an item, the user will also like items similar to it. To measure the similarity between the items, I calculate the Pearson correlation using numerical and categorical features from the table `item_data` created earlier. Then, I complete a `similarity_matrix` of all the items to use in the function `content_based_similarity` I define, which generates content-based recommendations for any `item_id`. Lastly, I use the text features later to create a **text review-based recommender** using Natural Language Processing." ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "def item_similarity(item_df):\n", " '''\n", " Measures pearson correlation of items from the table of item data and returns a similarity matrix.\n", " '''\n", " item_df = item_df.drop(['fit_small', 'fit_large', 'weight_mean', 'rented_for_all', 'height_mean', 'size_mean', \n", " 'age_mean', 'review_month_top'], axis=1)\n", " \n", " similarity_features = item_df[['item_id', 'fit', 'user_count', 'weight_median', 'rating_average', 'rented_for_top', \n", " 'body_type_top', 'category_top', 'height_median', 'size_median', 'age_median', \n", " 'review_length_average', 'review_season_top']]\n", " similarity_features = similarity_features.set_index('item_id')\n", " similarity_features = pd.get_dummies(similarity_features, columns=['rented_for_top', 'body_type_top', 'category_top', 'review_season_top'])\n", " \n", " similarity_matrix = similarity_features.T\n", " similarity_matrix = similarity_matrix.corr(method='pearson')\n", " \n", " return similarity_features, similarity_matrix\n", "\n", "pd.set_option('display.max_columns', 30)\n", "\n", "def content_based_similarity(similarity_matrix, item_id, n=20):\n", " '''\n", " Returns the most similar item recommendations to the given item based on the similarity matrix.\n", " '''\n", " recommendations = similarity_matrix[item_id].sort_values(ascending=False)\n", " recommendations = recommendations.drop([item_id], axis=0).index\n", " \n", " recommendations_list = []\n", " for i in range(n):\n", " recommendations_list.append(recommendations[i])\n", " \n", " display(item_data.loc[item_data['item_id']==item_id])\n", " print(f'----------------------------------------\\nTop {n} Recommendations for Item #{item_id}:')\n", " \n", " recommendations_df = item_data.loc[item_data['item_id'].isin(recommendations_list)]\n", " return recommendations_df" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "similarity_features, similarity_matrix = item_similarity(item_data)" ] }, { "cell_type": "code", "execution_count": 29, "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", "
item_id123373123793124204124553125424125465125564126335127081127495127865128730128959129831130259...295948629597772960025296091329609402960969296185529626462963344296360129638502964470296500929659242966087
item_id
1233731.000.991.000.980.991.001.000.990.961.000.990.981.000.931.00...0.260.160.250.170.190.280.170.240.240.160.250.180.190.160.19
1237930.991.000.990.960.971.000.991.000.920.981.000.960.980.880.99...0.140.050.140.060.080.170.060.130.130.050.140.070.080.050.08
1242041.000.991.000.980.991.001.000.990.950.990.990.981.000.921.00...0.230.130.220.150.160.250.150.220.210.140.230.160.170.140.17
1245530.980.960.981.001.000.980.990.970.970.990.960.980.980.960.99...0.350.250.330.260.280.370.260.340.330.250.340.270.280.240.29
1254240.990.970.991.001.000.981.000.970.981.000.960.990.990.960.99...0.360.260.340.270.290.380.270.350.340.260.350.280.290.250.29
................................................................................................
29638500.250.140.230.340.350.210.280.130.500.330.160.420.310.590.22...1.000.970.980.980.991.000.971.001.000.991.000.990.990.900.99
29644700.180.070.160.270.280.140.210.060.430.260.080.350.240.520.15...0.990.990.970.980.990.990.980.991.000.990.991.000.990.901.00
29650090.190.080.170.280.290.150.220.070.440.270.100.360.250.530.16...0.990.990.960.971.000.990.991.001.001.000.990.991.000.860.99
29659240.160.050.140.240.250.120.190.040.420.230.070.320.220.490.13...0.910.810.960.960.860.870.800.880.880.870.900.900.861.000.91
29660870.190.080.170.290.290.150.230.070.450.270.090.360.250.540.16...0.990.980.980.990.990.990.970.990.990.990.991.000.990.911.00
\n", "

5850 rows × 5850 columns

\n", "
" ], "text/plain": [ "item_id 123373 123793 124204 124553 125424 125465 125564 \\\n", "item_id \n", "123373 1.00 0.99 1.00 0.98 0.99 1.00 1.00 \n", "123793 0.99 1.00 0.99 0.96 0.97 1.00 0.99 \n", "124204 1.00 0.99 1.00 0.98 0.99 1.00 1.00 \n", "124553 0.98 0.96 0.98 1.00 1.00 0.98 0.99 \n", "125424 0.99 0.97 0.99 1.00 1.00 0.98 1.00 \n", "... ... ... ... ... ... ... ... \n", "2963850 0.25 0.14 0.23 0.34 0.35 0.21 0.28 \n", "2964470 0.18 0.07 0.16 0.27 0.28 0.14 0.21 \n", "2965009 0.19 0.08 0.17 0.28 0.29 0.15 0.22 \n", "2965924 0.16 0.05 0.14 0.24 0.25 0.12 0.19 \n", "2966087 0.19 0.08 0.17 0.29 0.29 0.15 0.23 \n", "\n", "item_id 126335 127081 127495 127865 128730 128959 129831 \\\n", "item_id \n", "123373 0.99 0.96 1.00 0.99 0.98 1.00 0.93 \n", "123793 1.00 0.92 0.98 1.00 0.96 0.98 0.88 \n", "124204 0.99 0.95 0.99 0.99 0.98 1.00 0.92 \n", "124553 0.97 0.97 0.99 0.96 0.98 0.98 0.96 \n", "125424 0.97 0.98 1.00 0.96 0.99 0.99 0.96 \n", "... ... ... ... ... ... ... ... \n", "2963850 0.13 0.50 0.33 0.16 0.42 0.31 0.59 \n", "2964470 0.06 0.43 0.26 0.08 0.35 0.24 0.52 \n", "2965009 0.07 0.44 0.27 0.10 0.36 0.25 0.53 \n", "2965924 0.04 0.42 0.23 0.07 0.32 0.22 0.49 \n", "2966087 0.07 0.45 0.27 0.09 0.36 0.25 0.54 \n", "\n", "item_id 130259 ... 2959486 2959777 2960025 2960913 2960940 2960969 \\\n", "item_id ... \n", "123373 1.00 ... 0.26 0.16 0.25 0.17 0.19 0.28 \n", "123793 0.99 ... 0.14 0.05 0.14 0.06 0.08 0.17 \n", "124204 1.00 ... 0.23 0.13 0.22 0.15 0.16 0.25 \n", "124553 0.99 ... 0.35 0.25 0.33 0.26 0.28 0.37 \n", "125424 0.99 ... 0.36 0.26 0.34 0.27 0.29 0.38 \n", "... ... ... ... ... ... ... ... ... \n", "2963850 0.22 ... 1.00 0.97 0.98 0.98 0.99 1.00 \n", "2964470 0.15 ... 0.99 0.99 0.97 0.98 0.99 0.99 \n", "2965009 0.16 ... 0.99 0.99 0.96 0.97 1.00 0.99 \n", "2965924 0.13 ... 0.91 0.81 0.96 0.96 0.86 0.87 \n", "2966087 0.16 ... 0.99 0.98 0.98 0.99 0.99 0.99 \n", "\n", "item_id 2961855 2962646 2963344 2963601 2963850 2964470 2965009 \\\n", "item_id \n", "123373 0.17 0.24 0.24 0.16 0.25 0.18 0.19 \n", "123793 0.06 0.13 0.13 0.05 0.14 0.07 0.08 \n", "124204 0.15 0.22 0.21 0.14 0.23 0.16 0.17 \n", "124553 0.26 0.34 0.33 0.25 0.34 0.27 0.28 \n", "125424 0.27 0.35 0.34 0.26 0.35 0.28 0.29 \n", "... ... ... ... ... ... ... ... \n", "2963850 0.97 1.00 1.00 0.99 1.00 0.99 0.99 \n", "2964470 0.98 0.99 1.00 0.99 0.99 1.00 0.99 \n", "2965009 0.99 1.00 1.00 1.00 0.99 0.99 1.00 \n", "2965924 0.80 0.88 0.88 0.87 0.90 0.90 0.86 \n", "2966087 0.97 0.99 0.99 0.99 0.99 1.00 0.99 \n", "\n", "item_id 2965924 2966087 \n", "item_id \n", "123373 0.16 0.19 \n", "123793 0.05 0.08 \n", "124204 0.14 0.17 \n", "124553 0.24 0.29 \n", "125424 0.25 0.29 \n", "... ... ... \n", "2963850 0.90 0.99 \n", "2964470 0.90 1.00 \n", "2965009 0.86 0.99 \n", "2965924 1.00 0.91 \n", "2966087 0.91 1.00 \n", "\n", "[5850 rows x 5850 columns]" ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "similarity_matrix" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_top
012337373.00566.0047.0068636d140.67135.004.40formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.3965.0015.1213.0034.3633.0066.0812Winter
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "0 123373 73.00 566.00 47.00 686 36d \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "0 140.67 135.00 4.40 formal affair \n", "\n", " rented_for_all body_type_top \\\n", "0 [formal affair, work, other, party, wedding, d... hourglass \n", "\n", " category_top height_mean height_median size_mean size_median age_mean \\\n", "0 gown 65.39 65.00 15.12 13.00 34.36 \n", "\n", " age_median review_length_average review_month_top review_season_top \n", "0 33.00 66.08 12 Winter " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "----------------------------------------\n", "Top 20 Recommendations for Item #123373:\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_top
212420442.00630.00123.0079534b136.88135.004.65party[formal affair, work, other, party, wedding, d...hourglassdress65.1565.0010.978.0033.3333.0062.1312Winter
5125465150.00720.0013.0088334b143.82138.004.69formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.8366.0016.9213.0032.7031.0064.224Spring
612556498.00443.0066.0060734b142.99138.004.43formal affair[formal affair, everyday, other, party, weddin...hourglassgown65.4865.0017.0516.0038.1636.0061.7311Winter
1212895944.00447.0025.0051634c140.82138.004.65formal affair[formal affair, work, everyday, other, party, ...hourglassgown65.2965.0014.2013.0035.5734.0070.7611Winter
1413025954.00643.00216.0091336c148.22140.004.38wedding[formal affair, work, everyday, other, party, ...hourglassdress65.5065.0018.0016.0036.1535.0065.431Winter
1613111771.00798.00112.0098134b139.21135.004.52formal affair[formal affair, work, other, party, wedding, d...athleticgown65.9166.0012.5412.0031.3131.0070.124Spring
1713153370.00973.0048.00109134b140.68138.004.69formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.8166.0013.8112.0033.3231.0064.305Spring
2813686066.00618.0024.0070834c138.95135.004.62wedding[formal affair, work, other, party, wedding, d...hourglasssheath65.7966.0012.1912.0033.3632.0062.596Spring
2913758574.00932.0094.00110034b129.47129.004.63wedding[formal affair, other, party, wedding, date, v...athleticsheath64.8165.007.938.0030.7731.0057.054Winter
3013843187.00395.006.0048834c139.79138.004.63formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.6766.0013.8612.0034.0032.0066.254Winter
4114405159.00416.0025.0050036c146.32140.004.52wedding[formal affair, work, other, party, wedding, d...hourglasssheath65.5465.0019.3416.0034.7033.0055.1510Winter
4814668431.00425.0038.0049434b133.21131.504.50formal affair[formal affair, other, party, wedding, date, v...hourglassgown64.8865.0010.8911.0034.0233.0069.591Winter
6215266239.00404.0042.0048534b136.36135.004.66formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.7166.0012.2912.0033.2432.0070.605Spring
63152836174.00585.0035.0079434b125.80125.004.34party[formal affair, other, party, wedding, date, v...petitemini63.9764.007.898.0031.9232.0053.745Winter
6515347541.00408.0070.0051934c139.58135.004.55formal affair[formal affair, other, party, wedding, date]hourglassgown65.6666.0013.6812.0034.0633.0066.264Winter
6615400237.00537.0049.0062334c135.25135.004.56formal affair[formal affair, other, party, wedding, date]hourglassgown65.4365.0011.229.0033.7833.0078.805Winter
88166633128.00615.0061.0080434b126.02125.004.33wedding[formal affair, work, other, party, wedding, d...athleticmini64.0964.007.458.0030.8431.0059.316Spring
9116859229.00402.0098.0052934c135.33135.004.65formal affair[formal affair, party, other, wedding]hourglassgown65.5066.009.928.0032.6432.0061.094Spring
9216861044.00429.0059.0053234b135.79135.004.55wedding[formal affair, other, party, wedding, date]hourglassgown65.5866.0011.109.0031.6031.0065.235Spring
1972107648476.00437.0042.0055536c142.37138.004.51wedding[formal affair, work, other, party, wedding, d...hourglassdress65.2365.0015.4712.0034.4033.0059.1710Winter
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "2 124204 42.00 630.00 123.00 795 34b \n", "5 125465 150.00 720.00 13.00 883 34b \n", "6 125564 98.00 443.00 66.00 607 34b \n", "12 128959 44.00 447.00 25.00 516 34c \n", "14 130259 54.00 643.00 216.00 913 36c \n", "16 131117 71.00 798.00 112.00 981 34b \n", "17 131533 70.00 973.00 48.00 1091 34b \n", "28 136860 66.00 618.00 24.00 708 34c \n", "29 137585 74.00 932.00 94.00 1100 34b \n", "30 138431 87.00 395.00 6.00 488 34c \n", "41 144051 59.00 416.00 25.00 500 36c \n", "48 146684 31.00 425.00 38.00 494 34b \n", "62 152662 39.00 404.00 42.00 485 34b \n", "63 152836 174.00 585.00 35.00 794 34b \n", "65 153475 41.00 408.00 70.00 519 34c \n", "66 154002 37.00 537.00 49.00 623 34c \n", "88 166633 128.00 615.00 61.00 804 34b \n", "91 168592 29.00 402.00 98.00 529 34c \n", "92 168610 44.00 429.00 59.00 532 34b \n", "1972 1076484 76.00 437.00 42.00 555 36c \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "2 136.88 135.00 4.65 party \n", "5 143.82 138.00 4.69 formal affair \n", "6 142.99 138.00 4.43 formal affair \n", "12 140.82 138.00 4.65 formal affair \n", "14 148.22 140.00 4.38 wedding \n", "16 139.21 135.00 4.52 formal affair \n", "17 140.68 138.00 4.69 formal affair \n", "28 138.95 135.00 4.62 wedding \n", "29 129.47 129.00 4.63 wedding \n", "30 139.79 138.00 4.63 formal affair \n", "41 146.32 140.00 4.52 wedding \n", "48 133.21 131.50 4.50 formal affair \n", "62 136.36 135.00 4.66 formal affair \n", "63 125.80 125.00 4.34 party \n", "65 139.58 135.00 4.55 formal affair \n", "66 135.25 135.00 4.56 formal affair \n", "88 126.02 125.00 4.33 wedding \n", "91 135.33 135.00 4.65 formal affair \n", "92 135.79 135.00 4.55 wedding \n", "1972 142.37 138.00 4.51 wedding \n", "\n", " rented_for_all body_type_top \\\n", "2 [formal affair, work, other, party, wedding, d... hourglass \n", "5 [formal affair, work, other, party, wedding, d... hourglass \n", "6 [formal affair, everyday, other, party, weddin... hourglass \n", "12 [formal affair, work, everyday, other, party, ... hourglass \n", "14 [formal affair, work, everyday, other, party, ... hourglass \n", "16 [formal affair, work, other, party, wedding, d... athletic \n", "17 [formal affair, work, other, party, wedding, d... hourglass \n", "28 [formal affair, work, other, party, wedding, d... hourglass \n", "29 [formal affair, other, party, wedding, date, v... athletic \n", "30 [formal affair, work, other, party, wedding, d... hourglass \n", "41 [formal affair, work, other, party, wedding, d... hourglass \n", "48 [formal affair, other, party, wedding, date, v... hourglass \n", "62 [formal affair, work, other, party, wedding, d... hourglass \n", "63 [formal affair, other, party, wedding, date, v... petite \n", "65 [formal affair, other, party, wedding, date] hourglass \n", "66 [formal affair, other, party, wedding, date] hourglass \n", "88 [formal affair, work, other, party, wedding, d... athletic \n", "91 [formal affair, party, other, wedding] hourglass \n", "92 [formal affair, other, party, wedding, date] hourglass \n", "1972 [formal affair, work, other, party, wedding, d... hourglass \n", "\n", " category_top height_mean height_median size_mean size_median \\\n", "2 dress 65.15 65.00 10.97 8.00 \n", "5 gown 65.83 66.00 16.92 13.00 \n", "6 gown 65.48 65.00 17.05 16.00 \n", "12 gown 65.29 65.00 14.20 13.00 \n", "14 dress 65.50 65.00 18.00 16.00 \n", "16 gown 65.91 66.00 12.54 12.00 \n", "17 gown 65.81 66.00 13.81 12.00 \n", "28 sheath 65.79 66.00 12.19 12.00 \n", "29 sheath 64.81 65.00 7.93 8.00 \n", "30 gown 65.67 66.00 13.86 12.00 \n", "41 sheath 65.54 65.00 19.34 16.00 \n", "48 gown 64.88 65.00 10.89 11.00 \n", "62 gown 65.71 66.00 12.29 12.00 \n", "63 mini 63.97 64.00 7.89 8.00 \n", "65 gown 65.66 66.00 13.68 12.00 \n", "66 gown 65.43 65.00 11.22 9.00 \n", "88 mini 64.09 64.00 7.45 8.00 \n", "91 gown 65.50 66.00 9.92 8.00 \n", "92 gown 65.58 66.00 11.10 9.00 \n", "1972 dress 65.23 65.00 15.47 12.00 \n", "\n", " age_mean age_median review_length_average review_month_top \\\n", "2 33.33 33.00 62.13 12 \n", "5 32.70 31.00 64.22 4 \n", "6 38.16 36.00 61.73 11 \n", "12 35.57 34.00 70.76 11 \n", "14 36.15 35.00 65.43 1 \n", "16 31.31 31.00 70.12 4 \n", "17 33.32 31.00 64.30 5 \n", "28 33.36 32.00 62.59 6 \n", "29 30.77 31.00 57.05 4 \n", "30 34.00 32.00 66.25 4 \n", "41 34.70 33.00 55.15 10 \n", "48 34.02 33.00 69.59 1 \n", "62 33.24 32.00 70.60 5 \n", "63 31.92 32.00 53.74 5 \n", "65 34.06 33.00 66.26 4 \n", "66 33.78 33.00 78.80 5 \n", "88 30.84 31.00 59.31 6 \n", "91 32.64 32.00 61.09 4 \n", "92 31.60 31.00 65.23 5 \n", "1972 34.40 33.00 59.17 10 \n", "\n", " review_season_top \n", "2 Winter \n", "5 Spring \n", "6 Winter \n", "12 Winter \n", "14 Winter \n", "16 Spring \n", "17 Spring \n", "28 Spring \n", "29 Winter \n", "30 Winter \n", "41 Winter \n", "48 Winter \n", "62 Spring \n", "63 Winter \n", "65 Winter \n", "66 Winter \n", "88 Spring \n", "91 Spring \n", "92 Spring \n", "1972 Winter " ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Example item\n", "content_based_similarity(similarity_matrix, 123373)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Text Review-Based Recommender\n", "\n", "To recommend items based on text reviews, Natural Language Processing (NLP) is used to:\n", "- Clean the text by removing stopwords and performing lemmatization.\n", "- Create the Term Frequency-Inverse Document Frequency (TF-IDF) vectors for the *documents*, which are the reviews.\n", "- Compute the pairwise cosine similarity from the constructed matrix of TF-IDF scores." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "[nltk_data] Downloading package stopwords to\n", "[nltk_data] /Users/czarinaluna/nltk_data...\n", "[nltk_data] Package stopwords is already up-to-date!\n", "[nltk_data] Downloading package wordnet to\n", "[nltk_data] /Users/czarinaluna/nltk_data...\n", "[nltk_data] Package wordnet is already up-to-date!\n" ] } ], "source": [ "# Import the Natural Language Toolkit (nltk)\n", "import re\n", "import nltk\n", "\n", "nltk.download('stopwords')\n", "nltk.download('wordnet')\n", "\n", "stopwords = nltk.corpus.stopwords.words('english')" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "from nltk.stem.wordnet import WordNetLemmatizer\n", "\n", "lemmatizer = nltk.stem.WordNetLemmatizer()\n", "\n", "def preprocess(text):\n", " '''\n", " Text preprocessing to standardize, remove special characters and stopwords, and lemmatize.\n", " '''\n", " text = text.apply(lambda x: x.lower())\n", " text = text.apply(lambda x: re.sub(r'([^A-Za-z0-9|\\s|[:punct:]]*)', '', x))\n", " text = text.apply(lambda x: x.replace('[^a-zA-Z#]', ' '))\n", " text = text.apply(lambda x: ' '.join([i for i in x.split() if len(i)>3]))\n", " text = text.apply(lambda x: x.split())\n", " text = text.apply(lambda x: [lemmatizer.lemmatize(word) for word in x])\n", " text = text.apply(lambda x: [word for word in x if word not in stopwords])\n", " text = text.apply(lambda x: ' '.join(x))\n", " \n", " return text\n", "\n", "def create_text_df(df=data, item_df=item_data, text_review=True, category=False):\n", " '''\n", " Creates new feature combining review summary and review text, to add to item data.\n", " '''\n", " if item_df is None:\n", " item_df = create_item_df(df)\n", " \n", " text_df = df.copy()\n", " text_df['review'] = text_df['review_summary'] + ' ' + text_df['review_text']\n", " text_df['review'] = text_df['review'].fillna('')\n", " text_df['review'] = preprocess(text_df['review'])\n", " \n", " if text_review:\n", " text_df = text_df[['item_id', 'review']].groupby('item_id').agg(' '.join).reset_index()\n", " text_item_df = item_df.merge(text_df, on='item_id')\n", " \n", " if text_review == False and category == True:\n", " text_df = text_df[['item_id', 'rented_for']].groupby('item_id').agg(' '.join).reset_index()\n", " text_item_df = item_df.merge(text_df, on='item_id')\n", " \n", " return text_item_df" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "# Create new dataframe for text item data\n", "text_item_data = create_text_df()" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer\n", "\n", "count = CountVectorizer()\n", "tfidf = TfidfVectorizer(ngram_range=(1,3))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "> \"The TF-IDF score is the frequency of a word occurring in a document, down-weighted by the number of documents in which it occurs.\" [(Aditya Sharma)](https://www.datacamp.com/community/tutorials/recommender-systems-python])\n", "\n", "Finally, to compute the cosine similarity score between the text reviews, the dot product between each TF-IDF vector is calculated in the function `text_based_recommendation` below:" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics.pairwise import cosine_similarity, linear_kernel\n", "\n", "def text_based_recommendation(text_item_df, item_id, n=10, text_review=True, category=False):\n", " '''\n", " Returns the most similar item recommendations to the given item based on text reviews.\n", " '''\n", " if text_review:\n", " tfidf_matrix = tfidf.fit_transform(text_item_df['review'])\n", " cosine_similarity_ = linear_kernel(tfidf_matrix, tfidf_matrix)\n", "\n", " if text_review == False and category == True:\n", " count_matrix = count.fit_transform(text_item_df['rented_for'])\n", " cosine_similarity_ = cosine_similarity(count_matrix, count_matrix)\n", " \n", " indices = pd.Series(text_item_df.index, index=text_item_df['item_id']).drop_duplicates()\n", " idx = indices[item_id]\n", " \n", " similarity_scores = list(enumerate(cosine_similarity_[idx]))\n", " similarity_scores = sorted(similarity_scores, key=lambda x: x[1], reverse=True)\n", "\n", " top_similarity_scores = similarity_scores[1:n+1]\n", " item_indices = [i[0] for i in top_similarity_scores]\n", " top_text_based_recommendations = text_item_df['item_id'].iloc[item_indices]\n", " \n", " display(item_data.loc[item_data['item_id']==item_id])\n", " print(f'----------------------------------------\\nTop {n} Recommendations for Item #{item_id}:')\n", " \n", " recommendations_df = item_data.loc[item_data['item_id'].isin(top_text_based_recommendations)]\n", " return recommendations_df" ] }, { "cell_type": "code", "execution_count": 36, "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", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_top
012337373.00566.0047.0068636d140.67135.004.40formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.3965.0015.1213.0034.3633.0066.0812Winter
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "0 123373 73.00 566.00 47.00 686 36d \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "0 140.67 135.00 4.40 formal affair \n", "\n", " rented_for_all body_type_top \\\n", "0 [formal affair, work, other, party, wedding, d... hourglass \n", "\n", " category_top height_mean height_median size_mean size_median age_mean \\\n", "0 gown 65.39 65.00 15.12 13.00 34.36 \n", "\n", " age_median review_length_average review_month_top review_season_top \n", "0 33.00 66.08 12 Winter " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "----------------------------------------\n", "Top 10 Recommendations for Item #123373:\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_idfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_top
112379365.001497.00152.00171434b132.98130.004.77formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.0665.009.728.0031.3131.0074.415Winter
5125465150.00720.0013.0088334b143.82138.004.69formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.8366.0016.9213.0032.7031.0064.224Spring
612556498.00443.0066.0060734b142.99138.004.43formal affair[formal affair, everyday, other, party, weddin...hourglassgown65.4865.0017.0516.0038.1636.0061.7311Winter
1012786578.001278.0037.00139334b136.03135.004.72formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.1765.0012.0412.0036.3535.0068.9311Winter
1713153370.00973.0048.00109134b140.68138.004.69formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.8166.0013.8112.0033.3231.0064.305Spring
2013273860.00937.00580.00157734b144.50138.004.62formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.5666.0015.4513.0032.1432.0078.315Winter
311390867.00331.00178.0051634b137.44135.004.61formal affair[formal affair, other, party, wedding, date]hourglassgown65.4565.0011.9911.0035.4934.0061.4512Winter
331403216.00288.00156.0045034c140.17135.004.54formal affair[formal affair, work, other, party, wedding, d...hourglassgown65.7066.0013.6612.0035.4233.5055.5111Winter
4714590676.001154.00242.00147234b135.60135.004.51formal affair[formal affair, other, party, wedding, date, v...hourglassgown65.7866.0010.599.0030.3630.0064.904Winter
6515347541.00408.0070.0051934c139.58135.004.55formal affair[formal affair, other, party, wedding, date]hourglassgown65.6666.0013.6812.0034.0633.0066.264Winter
\n", "
" ], "text/plain": [ " item_id fit_small fit fit_large user_count bust_size_top \\\n", "1 123793 65.00 1497.00 152.00 1714 34b \n", "5 125465 150.00 720.00 13.00 883 34b \n", "6 125564 98.00 443.00 66.00 607 34b \n", "10 127865 78.00 1278.00 37.00 1393 34b \n", "17 131533 70.00 973.00 48.00 1091 34b \n", "20 132738 60.00 937.00 580.00 1577 34b \n", "31 139086 7.00 331.00 178.00 516 34b \n", "33 140321 6.00 288.00 156.00 450 34c \n", "47 145906 76.00 1154.00 242.00 1472 34b \n", "65 153475 41.00 408.00 70.00 519 34c \n", "\n", " weight_mean weight_median rating_average rented_for_top \\\n", "1 132.98 130.00 4.77 formal affair \n", "5 143.82 138.00 4.69 formal affair \n", "6 142.99 138.00 4.43 formal affair \n", "10 136.03 135.00 4.72 formal affair \n", "17 140.68 138.00 4.69 formal affair \n", "20 144.50 138.00 4.62 formal affair \n", "31 137.44 135.00 4.61 formal affair \n", "33 140.17 135.00 4.54 formal affair \n", "47 135.60 135.00 4.51 formal affair \n", "65 139.58 135.00 4.55 formal affair \n", "\n", " rented_for_all body_type_top \\\n", "1 [formal affair, work, other, party, wedding, d... hourglass \n", "5 [formal affair, work, other, party, wedding, d... hourglass \n", "6 [formal affair, everyday, other, party, weddin... hourglass \n", "10 [formal affair, work, other, party, wedding, d... hourglass \n", "17 [formal affair, work, other, party, wedding, d... hourglass \n", "20 [formal affair, work, other, party, wedding, d... hourglass \n", "31 [formal affair, other, party, wedding, date] hourglass \n", "33 [formal affair, work, other, party, wedding, d... hourglass \n", "47 [formal affair, other, party, wedding, date, v... hourglass \n", "65 [formal affair, other, party, wedding, date] hourglass \n", "\n", " category_top height_mean height_median size_mean size_median age_mean \\\n", "1 gown 65.06 65.00 9.72 8.00 31.31 \n", "5 gown 65.83 66.00 16.92 13.00 32.70 \n", "6 gown 65.48 65.00 17.05 16.00 38.16 \n", "10 gown 65.17 65.00 12.04 12.00 36.35 \n", "17 gown 65.81 66.00 13.81 12.00 33.32 \n", "20 gown 65.56 66.00 15.45 13.00 32.14 \n", "31 gown 65.45 65.00 11.99 11.00 35.49 \n", "33 gown 65.70 66.00 13.66 12.00 35.42 \n", "47 gown 65.78 66.00 10.59 9.00 30.36 \n", "65 gown 65.66 66.00 13.68 12.00 34.06 \n", "\n", " age_median review_length_average review_month_top review_season_top \n", "1 31.00 74.41 5 Winter \n", "5 31.00 64.22 4 Spring \n", "6 36.00 61.73 11 Winter \n", "10 35.00 68.93 11 Winter \n", "17 31.00 64.30 5 Spring \n", "20 32.00 78.31 5 Winter \n", "31 34.00 61.45 12 Winter \n", "33 33.50 55.51 11 Winter \n", "47 30.00 64.90 4 Winter \n", "65 33.00 66.26 4 Winter " ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Same example item\n", "text_based_recommendation(text_item_data, 123373, n=10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Key Differences** between the text-based recommendations and the content-based recommendations to the same item:\n", "\n", "|Feature|Content-based|Text-based|Item|\n", "|---|---|---:|:---|\n", "|rating_average|4.38 - 4.69|4.43 - 4.77|4.40|\n", "|rented_for_top|party, formal affair, wedding|formal affair (across the board)|formal affair|\n", "|body_type_top|hourglass, athlete|hourglass (across the board)|hourglass|\n", "|category_top|dress, gown, sheath|gown (across the board)|gown|\n", "\n", "***\n", "\n", "### Collaborative Filtering Systems\n", "\n", "Collaborative filtering systems recommend items to a user based on the user's past ratings *and* on the past ratings and preferences of other similar users. I apply the different implementations of collaborative filtering recommendation systems using the Python library [`surprise`](https://surprise.readthedocs.io/en/stable/index.html):\n", "\n", "\n", "|Prediction Algorithm|Description|\n", "|:---|:---|\n", "|[Normal Predictor](https://surprise.readthedocs.io/en/stable/basic_algorithms.html#surprise.prediction_algorithms.random_pred.NormalPredictor)|Algorithm predicting a random rating based on the distribution of the training set, which is assumed to be normal.\n", "|[Baseline Only](https://surprise.readthedocs.io/en/stable/basic_algorithms.html#surprise.prediction_algorithms.baseline_only.BaselineOnly)|Algorithm predicting the baseline estimate for given user and item.|\n", "|[KNN Basic](https://surprise.readthedocs.io/en/stable/knn_inspired.html#surprise.prediction_algorithms.knns.KNNBasic)|A basic collaborative filtering algorithm.|\n", "|[KNN Baseline](https://surprise.readthedocs.io/en/stable/knn_inspired.html#surprise.prediction_algorithms.knns.KNNBaseline)|A basic collaborative filtering algorithm, taking into account the mean ratings of each user.|\n", "|[KNN with Means](https://surprise.readthedocs.io/en/stable/knn_inspired.html#surprise.prediction_algorithms.knns.KNNWithMeans)|A basic collaborative filtering algorithm, taking into account the z-score normalization of each user.|\n", "|[KNN with Z-Score](https://surprise.readthedocs.io/en/stable/knn_inspired.html#surprise.prediction_algorithms.knns.KNNWithZScore)|A basic collaborative filtering algorithm taking into account a *baseline* rating.\n", "|[Single Value Decomposition](https://surprise.readthedocs.io/en/stable/matrix_factorization.html#surprise.prediction_algorithms.matrix_factorization.SVD)|The famous SVD algorithm, as popularized by Simon Funk during the Netflix Prize. When baselines are not used, this is equivalent to Probabilistic Matrix Factorization.|\n", "|[Single Value Decomposition ++](https://surprise.readthedocs.io/en/stable/matrix_factorization.html#surprise.prediction_algorithms.matrix_factorization.SVDpp)|The SVD++ algorithm, an extension of SVD taking into account implicit ratings.|\n", "|[Non-Negative Matrix Factorization](https://surprise.readthedocs.io/en/stable/matrix_factorization.html#surprise.prediction_algorithms.matrix_factorization.NMF)|A collaborative filtering algorithm based on Non-negative Matrix Factorization.|\n", "|[SlopeOne](https://surprise.readthedocs.io/en/stable/slope_one.html#surprise.prediction_algorithms.slope_one.SlopeOne)|A simple yet accurate collaborative filtering algorithm.|\n", "|[CoClustering](https://surprise.readthedocs.io/en/stable/co_clustering.html#surprise.prediction_algorithms.co_clustering.CoClustering)|A collaborative filtering algorithm based on co-clustering.|" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "data = data.rename(columns={'user_id': 'userID', 'item_id': 'itemID'})\n", "\n", "df_columns = ['userID', 'itemID', 'rating']\n", "df = data[df_columns]\n", "\n", "# Only use items with more than 25 ratings\n", "df['reviews'] = df.groupby(['itemID'])['rating'].transform('count')\n", "df = df.loc[df['reviews']>25, df_columns]" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "from surprise import Reader, Dataset\n", "\n", "reader = Reader(rating_scale=(1,5))\n", "read_data = Dataset.load_from_df(df, reader)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Data Modeling:" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Estimating biases using als...\n", "Estimating biases using als...\n", "Estimating biases using als...\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Estimating biases using als...\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Estimating biases using als...\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Estimating biases using als...\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the cosine similarity matrix...\n", "Done computing similarity matrix.\n" ] } ], "source": [ "from surprise import NormalPredictor, BaselineOnly, SVD, SVDpp, NMF, SlopeOne, CoClustering\n", "from surprise.model_selection import cross_validate\n", "\n", "from surprise.prediction_algorithms import knns\n", "sim_cos = {'name':'cosine', 'user_based':False}\n", "\n", "evaluation = []\n", "recommendation_systems = [NormalPredictor(), BaselineOnly(), knns.KNNBasic(sim_options=sim_cos), knns.KNNBaseline(sim_options=sim_cos), knns.KNNWithMeans(sim_options=sim_cos), knns.KNNWithZScore(sim_options=sim_cos), SVD(), SVDpp(), NMF(), SlopeOne(), CoClustering()]\n", "\n", "# Evaluate recommendation systems using Mean Absolute Error\n", "for system in recommendation_systems:\n", " score = cross_validate(system, read_data, measures=['MAE'], cv=3, verbose=False)\n", " evaluation.append((str(system).split(' ')[0].split('.')[-1], score['test_mae'].mean()))\n", "\n", "pd.options.display.float_format = '{:.4f}'.format \n", "\n", "evaluation = pd.DataFrame(evaluation, columns=['system', 'mae'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To evaluate, I use the mean absolute error which measures the difference between the rating predicted by the model and the actual rating by the user:" ] }, { "cell_type": "code", "execution_count": 40, "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", "
systemmae
0NormalPredictor0.6566
1BaselineOnly0.5398
2KNNBasic0.5727
3KNNBaseline0.5457
4KNNWithMeans0.5624
5KNNWithZScore0.5635
6SVD0.5359
7SVDpp0.5396
8NMF0.6980
9SlopeOne0.5802
10CoClustering0.5673
\n", "
" ], "text/plain": [ " system mae\n", "0 NormalPredictor 0.6566\n", "1 BaselineOnly 0.5398\n", "2 KNNBasic 0.5727\n", "3 KNNBaseline 0.5457\n", "4 KNNWithMeans 0.5624\n", "5 KNNWithZScore 0.5635\n", "6 SVD 0.5359\n", "7 SVDpp 0.5396\n", "8 NMF 0.6980\n", "9 SlopeOne 0.5802\n", "10 CoClustering 0.5673" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "evaluation" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Estimating biases using als...\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Estimating biases using als...\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Estimating biases using als...\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\n", "Computing the pearson similarity matrix...\n", "Done computing similarity matrix.\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", "
systemmae
0KNNBasic0.5729
1KNNBaseline0.5391
2KNNWithMeans0.5586
3KNNWithZScore0.5583
\n", "
" ], "text/plain": [ " system mae\n", "0 KNNBasic 0.5729\n", "1 KNNBaseline 0.5391\n", "2 KNNWithMeans 0.5586\n", "3 KNNWithZScore 0.5583" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Switch similarity measure from cosine to pearson\n", "sim_pearson = {'name':'pearson', 'user_based':False}\n", "\n", "pearson_evaluation = []\n", "pearson_knns = [knns.KNNBasic(sim_options=sim_pearson), \n", " knns.KNNBaseline(sim_options=sim_pearson), \n", " knns.KNNWithMeans(sim_options=sim_pearson), \n", " knns.KNNWithZScore(sim_options=sim_pearson)]\n", "\n", "for system in pearson_knns:\n", " pearson_score = cross_validate(system, read_data, measures=['MAE'], cv=3, verbose=False)\n", " pearson_evaluation.append((str(system).split(' ')[0].split('.')[-1], pearson_score['test_mae'].mean()))\n", "\n", "pearson_evaluation = pd.DataFrame(pearson_evaluation, columns=['system', 'mae'])\n", "pearson_evaluation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The mean absolute errors of `KNNBaseline`, `KNNWithMeans`, and `KNNWithZScore` decreased by 0.01 and `KNNBaseline` becomes second to `SVD`.\n", "\n", "***\n", "\n", "#### Hyperparamater Tuning\n", "\n", "`GridSearchCV` is performed to optimize the Single Value Decomposition models:" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [], "source": [ "from surprise.model_selection import GridSearchCV\n", "\n", "def grid_search(system, params):\n", " '''\n", " Implements grid search and returns best cross validation scores and parameters.\n", " '''\n", " model = GridSearchCV(system, param_grid=params, n_jobs=-1)\n", " model.fit(read_data)\n", " \n", " print(model.best_score)\n", " print(model.best_params)" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'rmse': 0.6785759649206107, 'mae': 0.5288288608687417}\n", "{'rmse': {'n_factors': 10, 'n_epochs': 100, 'lr_all': 0.001, 'reg_all': 0.1}, 'mae': {'n_factors': 10, 'n_epochs': 20, 'lr_all': 0.01, 'reg_all': 0.02}}\n" ] } ], "source": [ "params_svd1 = {'n_factors': [10, 50, 100], 'n_epochs': [10, 20, 100], 'lr_all': [0.001, 0.005, 0.01], 'reg_all': [0.02, 0.05, 0.1]}\n", "grid_search(SVD, params_svd1)" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'rmse': 0.6785226031170102, 'mae': 0.5300882259833981}\n", "{'rmse': {'n_factors': 10, 'n_epochs': 100, 'lr_all': 0.001, 'reg_all': 0.1}, 'mae': {'n_factors': 10, 'n_epochs': 100, 'lr_all': 0.005, 'reg_all': 0.1}}\n" ] } ], "source": [ "params_svdpp1 = {'n_factors': [10, 50, 100], 'n_epochs': [10, 20, 100], 'lr_all': [0.001, 0.005, 0.01], 'reg_all': [0.02, 0.05, 0.1]}\n", "grid_search(SVDpp, params_svdpp1)" ] }, { "cell_type": "code", "execution_count": 45, "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", "
systemmae
0SVD0.5302
1SVDpp0.5329
\n", "
" ], "text/plain": [ " system mae\n", "0 SVD 0.5302\n", "1 SVDpp 0.5329" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "svd_evaluation = []\n", "\n", "# Evaluate tuned Singular Value Decomposition models\n", "for system in [SVD(n_factors=10, n_epochs=20, lr_all=0.01, reg_all=0.02), \n", " SVDpp(n_factors=10, n_epochs=100, lr_all=0.005, reg_all=0.1)]:\n", " svd_score = cross_validate(system, read_data, measures=['MAE'], cv=3, verbose=False)\n", " svd_evaluation.append((str(system).split(' ')[0].split('.')[-1], svd_score['test_mae'].mean()))\n", "\n", "svd_evaluation = pd.DataFrame(svd_evaluation, columns=['system', 'mae'])\n", "svd_evaluation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## V. Results and Recommendations\n", "\n", "#### Systems Performance:" ] }, { "cell_type": "code", "execution_count": 46, "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", "
systemmae
0NormalPredictor0.6566
1BaselineOnly0.5398
2KNNBasic0.5727
3KNNBaseline0.5457
4KNNWithMeans0.5624
5KNNWithZScore0.5635
6SVD0.5359
7SVDpp0.5396
8NMF0.6980
9SlopeOne0.5802
10CoClustering0.5673
11KNNBasic0.5729
12KNNBaseline0.5391
13KNNWithMeans0.5586
14KNNWithZScore0.5583
15SVD0.5302
16SVDpp0.5329
\n", "
" ], "text/plain": [ " system mae\n", "0 NormalPredictor 0.6566\n", "1 BaselineOnly 0.5398\n", "2 KNNBasic 0.5727\n", "3 KNNBaseline 0.5457\n", "4 KNNWithMeans 0.5624\n", "5 KNNWithZScore 0.5635\n", "6 SVD 0.5359\n", "7 SVDpp 0.5396\n", "8 NMF 0.6980\n", "9 SlopeOne 0.5802\n", "10 CoClustering 0.5673\n", "11 KNNBasic 0.5729\n", "12 KNNBaseline 0.5391\n", "13 KNNWithMeans 0.5586\n", "14 KNNWithZScore 0.5583\n", "15 SVD 0.5302\n", "16 SVDpp 0.5329" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_systems = pd.concat([evaluation, pearson_evaluation, svd_evaluation], ignore_index=True)\n", "all_systems" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The results show that the tuned Singular Value Decomposition algorithm attains the lowest Mean Absolute Error of 0.5302 with a rating scale of 1 to 5." ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "data": { "image/png": "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ysfHR4ZhaMqUKXbvZw8AXhWhEQA8g5OTk8aOHav69etr2bJlOn36tHbs2CFnZ2cVLFhQPXv21EcffWR1kj1w4EAVKVJES5Ys0dq1a+Xs7KzChQtr6NCh+uCDD16phsKFC2v27NmaNm2afHx85OTkpJw5c6pHjx5q3ry5qlSpoh07dqhTp06W1xQqVEjfffedvv/+e+3atUvZs2fX119/bXXCUbp0aa1cuVIzZsywnES/8cYb6tKlizp06PDMzpL/a32tWrXS4cOHdejQIUvH1i/y4YcfatmyZSpVqtQz+5opW7asfvvtN82cOVN79+7V9u3blT17drVt21adO3d+bqfgtta5c2cFBARo9+7dunjxotq1a6dUqVJp4cKFmjt3rtavX69ff/1Vnp6eKl26tDp16mR52petDR06VHny5NGKFSu0bNkyZcuWTf369VNgYKDmzp0bZ6fCY8aMUfbs2eXj46PFixcrS5YsKlasmDp27Kh169ZpwYIF2r9/f7z6ZZk8ebK8vb21cuVKLV26VG+++aZ+/PFHrVy5MsFCo2zZsql3794aOXKkxowZo8qVKytdunRq37693nrrLf3888/avHmzTCaTcufOrYEDB6p169axOnFu0qSJsmXLplmzZmnTpk2Kjo5WkSJFNHr06FiPfm/Xrp3efPNNzZs3T5s3b5ZhGMqfP786deqUJPvhcnBw0LRp07RkyRL98ccf+u2335QqVSq9/fbbat++vWrWrBnveffv31/58uXTwoULtWLFCmXPnl2jRo3SmTNntHDhwljT1q1bV9mzZ9esWbO0a9cuhYeHK2fOnOratau++OKLl9o3PY+7u7sWL16sP//8Uxs2bND+/ft1//59pUmTRvnz59fQoUPVsmXLZ4an6dOnV6VKlbRz585nXiXWtm1bZcqUSQsXLtT69esVHh6uN998U4MGDYoVwuTMmVO9evXSggULtGTJEuXPn18FChSw6XI/LVeuXFq6dKlmzJihw4cPa9u2bcqQIYMaNWqk7t27W4KtuBw4cMDyRLPnKVy4cKzQyNXVVXXq1NGKFSusrjKSHn9PGIahpUuX6rfffpOnp6fy5cunyZMny83NTd26ddOOHTue299goUKFNHv2bP3444/asGGDPDw8VLNmTX399ddWV/i8yv7M1dVVQ4cO1bRp0yz772eFRm5ubvrll180b948rV27VkuXLlXatGlVrVo1derUSUWKFHmZpgWAJMXBoFt+AACSvcDAQLm4uDzzNrgBAwZo1apV2r17t93CNiApM5lMqlatmnLmzKlff/3V3uUAAJBo6NMIAIAUYM2aNapQoYKls16zy5cva8uWLXr77bcJjIDn+O2333Tz5k19/PHH9i4FAIBExZVGAACkADdv3lTDhg0VHh6uGjVqKG/evAoMDNTmzZsVFRWlOXPmqGLFivYuE0hSevXqpTNnzujChQvKly+f1qxZY+nsHgCAlIA+jQAASAGyZ8+ulStXatasWdq3b5+2bdumtGnT6t1331WnTp1UtGhRe5cIJDmZMmXS9evXVbx4cY0fP57ACACQ4nClEQAAAAAAAKzQpxEAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArDjbasYmk0nDhg3TmTNn5OrqqlGjRilv3rySpMDAQPXp08cy7alTp9S3b1998skntioHAAAAAAAAr8DBMAzDFjPevHmztm3bpnHjxuno0aOaNWuWZs6caTXdkSNHNGXKFM2fP19OTk62KAUAAAAAAACvyGZXGvn6+qpy5cqSpJIlS8rPz89qGsMwNHLkSE2aNInACAAAAAAAIAmxWZ9GISEh8vDwsPzt5OSk6OjoWNNs27ZNBQoU0FtvvWWrMgAAAAAAABAPNrvSyMPDQ6GhoZa/TSaTnJ1jv92aNWvUrl27l5qfv7+/IiIiErRGAACQsri5udm7hAQVGRlp7xIAAMBrrkyZMs8dZ7PQqHTp0tq+fbvq1auno0ePysvLy2oaf39/lS5d+qXmV7Ro0YQuEQAApDBLpvfVvbs37F1GgsiQKYdaf/W9vcsAAADJmM1Co1q1amn37t1q2bKlDMPQmDFjtHbtWoWFhalFixYKCgqSu7u7HBwcbFUCAABALPfu3lDQ7Sv2LgMAAOC1YLPQyNHRUSNGjIg1LH/+/JZ/Z8yYUatXr7bV2wMAAAAAAOA/sFlH2AAAAAAAAHh9ERoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsONu7gITQf8As3bwZZO8yEkT27Bk1YXwne5cBAAAAAABSuGQRGt28GaSrVwPtXQYAAAAAAECywe1pAAAAAAAAsEJoBAAAAAAAACuERgAAAAAAALBCaAQAAAAAAAArhEYAAAAAAACwQmgEAAAAAAAAK4RGAAAAAAAAsEJoBAAAAAAAACuERgAAAAAAALBCaAQAAAAAAAArhEYAAAAAAACwQmgEAAAAAAAAK4RGAAAAAAAAsEJoBAAAAAAAACuERgAAAAAAALBCaAQAAAAAAAArhEYAAAAAAACwQmgEAAAAAAAAK4RGAAAAAAAAsEJoBAAAAAAAACuERgAAAAAAALBCaAQAAAAAAAArhEYAAAAAAACwQmgEAAAAAAAAK4RGAAAAAAAAsOJsqxmbTCYNGzZMZ86ckaurq0aNGqW8efNaxh8/flzjxo2TYRjKkiWLJk6cKDc3N1uVAwAAAAAAgFdgsyuNfHx8FBUVpeXLl6tv374aN26cZZxhGPr22281duxYLV26VJUrV9a1a9dsVQoAAAAAAABekc2uNPL19VXlypUlSSVLlpSfn59l3IULF5Q+fXotWLBAZ8+eVdWqVfXWW2/ZqhQAAAAAAAC8IpuFRiEhIfLw8LD87eTkpOjoaDk7O+vevXs6cuSIvv32W+XNm1edO3eWt7e3KlWq9Nz5+fv7KyIiwmp4crylzc/PT5GRkfYuAwCAZIVjBgAAAGtlypR57jibhUYeHh4KDQ21/G0ymeTs/Pjt0qdPr7x58+rtt9+WJFWuXFl+fn4vDI2KFi36gndbmyA1JxXe3t72LgEAgGTp75X2riBhccwAAABsyWZ9GpUuXVo7d+6UJB09elReXl6Wcblz51ZoaKguXbokSTp06JAKFChgq1IAAAAAAADwimx2pVGtWrW0e/dutWzZUoZhaMyYMVq7dq3CwsLUokULjR49Wn379pVhGCpVqpTef/99W5UCAAAAAACAV2Sz0MjR0VEjRoyINSx//vyWf1eqVEkrVyaza8QBAAAAAACSCZvdngYAAAAAAIDXF6ERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsONu7AAAAACSuf9Z+q9CHN+1dRoJwT5td7zUcae8yAABIlgiNAAAAUpjQhzcV8uC6vcsAAABJHLenAQAAAAAAwAqhEQAAAAAAAKxwexqSlZ/n++nevQh7l5FgMmRIpc/be9u7DAAAkEzdOL1J0ZEh9i4jQTi7eShHodr2LgMAkhVCIyQr9+5F6M7d5BMaAQAA2FJ0ZIgeRTy0dxkAgCSK29MAAAAAAABghSuNAAAAkOJc3D9Vj8Lu2LuMBOOSJrPerNDL3mUAAJIZQiMAAACkOI/C7igq9La9ywAAIEkjNAKQLH0/q7/uBN20dxkJJnPG7OrbacIrv27FXxN0PzjQBhXZR3rPLPq4fn97lwEAAACkCIRGAJKlO0E3dSvwqr3LsLv7wYG69yD5hGcAAAAAEg+hEQAAAACkcD5jxij4dvK5ZdMza1bV/OabV37dqZ/mKTLong0qSnxuGTOocOcv7F0GXnOERgAAAACQwgXfvq3gGzfsXYbdRQbdU0Rg8ukkH/ivHO1dAAAAAAAAAJIeQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBWengYkQ9u2X1ZI6CN7l5EgPNxdVL1aHnuXAQAAAAApDqERkAyFhD5ScHCUvcsAAAAAALzGuD0NAAAAAAAAVrjSKJmYMHG9AgOD7V1GgsmSxVP9+9WzdxkAkGycubhNkVEh9i4jwbi5eqjgm9XtXQYAAECyRmiUTAQGBuvmrQf2LgMAkERFRoUoIir5/LgAAAnpl0EDdO/mTXuXkSAyZM+uz8aOt3cZAJIJQiMAQLK3x+9nhUbcs3cZCcI9VQa94/25vcsAgGTl3s2bunvtqr3LAIAkh9AIAJDshUbcU2jEHXuXAQAAALxWCI0AAAAAAACeMGfwTAXdumvvMhJMxmyZ1GF0l1d+HaERAAAAAACQJN3Ysl3RIcnn4RnOHh7KUavaK78u6NZd3bkWaIOKXi+ERgAAAAAAQJIUHRKiRw95eAYec7R3AQAAAAAAAEh6CI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFacbTVjk8mkYcOG6cyZM3J1ddWoUaOUN29ey/j58+dr5cqVypgxoyRp+PDheuutt2xVDgAAAAAAAF6BzUIjHx8fRUVFafny5Tp69KjGjRunmTNnWsb7+/tr/Pjx8vb2tlUJAAAAAAAAiCebhUa+vr6qXLmyJKlkyZLy8/OLNd7f31+zZ89WYGCg3n//fXXq1MlWpQAAAAAAAOAV2axPo5CQEHl4eFj+dnJyUnR0tOXv+vXra9iwYVqwYIF8fX21fft2W5UCAAAAAACAV2SzK408PDwUGhpq+dtkMsnZ+fHbGYahTz/9VJ6enpKkqlWr6uTJk6pWrdpz5+fv76+IiAir4W5ubglcuf35+fkpMjLypadPjm0g0Q5m8WuH1LYryA5YFx6jHR6jHeLZBq42LMhOWBdevQ0k2kF63AbJrxXi1w7pbFiPPbBNPMb+8THagf2CGevCY89rhzJlyjz3NTYLjUqXLq3t27erXr16Onr0qLy8vCzjQkJC1KBBA61fv15p0qTR/v371axZsxfOr2jRoi8YuzaBqk4a4tfPk3+C12Fv8WmHTZsP2aAS+4pPO5y/GGCDSuwnXttE8totSIpfO+zxi3ua10182uHGoU02qMR+4tMGx8+et0El9hWfdvh7pQ0KsaP49g157VgCF2Jn8WmHc8nwIvf4tMOVY2dsUIn9xHeb2JLAddhbvLYJG9Rhb/Fph6NrNtqgEvuJ137h3AUbVGJf8WmHv7Qq4Quxs/i0g81Co1q1amn37t1q2bKlDMPQmDFjtHbtWoWFhalFixbq3bu32rVrJ1dXV1WqVElVq1a1VSkAAAAAAAB4RTYLjRwdHTVixIhYw/Lnz2/5d+PGjdW4cWNbvT0AAAAAAAD+A5t1hA0AAAAAAIDXF6ERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMBKnKHRlClTEqMOAAAAAAAAJCFxhkbbt2+XYRiJUQsAAAAAAACSCOe4JkifPr3q1KmjokWLys3NzTJ87NixNi0MAAAAAAAA9hNnaNSkSZPEqAMAAAAAAABJSJy3pzVp0kRFixZVaGioHjx4oEKFChEkAQAAAAAAJHNxhkarVq1S165ddfXqVV2/fl3du3fXypUrE6M2AAAAAAAA2Emct6fNnz9fv/32mzJkyCBJ6ty5s9q1a6fmzZvbvDgAAAAAAADYR5xXGplMJktgJEkZM2aUg4ODTYsCAAAAAACAfcV5pVHBggU1evRoy5VFK1euVKFChWxeGAAAAAAAAOwnziuNRo0aJVdXV33zzTcaNGiQXFxc9N133yVGbQAAAAAAALCTOK80Gj58uMaOHZsYtQAAAAAAACCJiPNKo7Nnzyo0NDQxagEAAAAAAEASEeeVRg4ODqpWrZry5csnNzc3y/CFCxfatDAAAAAAAADYT5yhUZ8+feTsHOdkAAAAAAAASEbiTIMmTpyoP//8MzFqAQAAAAAAQBIRZ59GmTNn1qFDhxQVFZUY9QAAAAAAACAJiPNKoxMnTqhNmzZycHCQJBmGIQcHB506dcrmxQEAAAAAAMA+4gyN9u3blxh1AAAAAAAAIAl57u1pv/76q+Xf586dizVu9OjRtqsIAAAAAAAAdvfc0Oi3336z/Lt///6xxh06dMh2FQEAAAAAAMDunhsaGYbxzH8DAAAAAAAg+Yvz6WmSLJ1gAwAAAAAAIGV4bmhEUAQAAAAAAJByPffpaefOnVONGjUkSbdu3bL82zAMBQYGJk51AAAAAAAAsIvnhkabNm1KzDoAAAAAAACQhDw3NMqZM2di1gEAAAAAAIAk5KU6wgYAAAAAAEDKQmgEAAAAAAAAKy8VGvn6+mrp0qWKiorSwYMHbV0TAAAAAAAA7CzO0GjBggWaOnWqfvnlF4WGhmro0KGaN29enDM2mUwaOnSoWrRoobZt2+rSpUvPnO7bb7/VpEmTXr1yAAAAAAAA2EycodGff/6pefPmKXXq1MqQIYNWrlyp33//Pc4Z+/j4KCoqSsuXL1ffvn01btw4q2mWLVums2fPxq9yAAAAAAAA2EycoZGjo6NcXV0tf7u5ucnJySnOGfv6+qpy5cqSpJIlS8rPzy/W+CNHjujYsWNq0aLFq9YMAAAAAAAAG3OOa4Ly5ctr/PjxCg8Pl4+Pj5YvX64KFSrEOeOQkBB5eHhY/nZyclJ0dLScnZ11+/Zt/fjjj/rxxx+1YcOGlyrU399fERERVsPd3Nxe6vWvEz8/P0VGRr709MmxDSTawSx+7ZDadgXZAevCY7TDY7RDPNvANe7pXjesC6/eBhLtID1ug+TXCvFrh3Q2rMce2CYeY//4GO3AfsGMdeGx57VDmTJlnvuaOEOj/v37a8WKFSpYsKBWrVqlqlWr6pNPPomzGA8PD4WGhlr+NplMcnZ+/HYbN27UvXv31LFjRwUGBioiIkJvvfWWmjZt+tz5FS1a9AXvtjbOel4n3t7e8XiVf4LXYW/xaYdNmw/ZoBL7ik87nL8YYINK7Cde20Ty2i1Iil877PGLe5rXTXza4cahTTaoxH7i0wbHz563QSX2FZ92+HulDQqxo/gdM0jXjiVwIXYWn3Y4t90GhdhZfNrhyrEzNqjEfuK7TWxJ4DrsLV7bhA3qsLf4tMPRNRttUIn9xGu/cO6CDSqxr/i0w19alfCF2Fl82iHO0GjOnDnq1KmTWrZsaRk2efJk9enT54WvK126tLZv36569erp6NGj8vLysoxr166d2rVrJ0n6448/dP78+RcGRgAAAAAAAEhczw2NJk2apLt372rbtm26ePGiZXhMTIyOHTsWZ2hUq1Yt7d69Wy1btpRhGBozZozWrl2rsLAw+jECAAAAAABI4p4bGn3wwQcKCAjQvn37VL58ectwJycnde3aNc4ZOzo6asSIEbGG5c+f32o6rjACAAAAAABIep4bGhUvXlzFixdXrVq1YnVoDQAAAAAAgOQvzj6NypYtKwcHh1jDsmTJop07d9qsKAAAAAAAANhXnKHR6dOnLf9+9OiRfHx8dPToUVvWBAAAAAAAADtzfJWJXVxcVLduXe3bt89W9QAAAAAAACAJiPNKo1WrVln+bRiGzp07J2fnOF8GAAAAAACA11ic6c/+/ftj/Z0hQwZNnTrVVvUAAAAAAAAgCYgzNBo7dmxi1AEAAAAAAIAk5LmhUfXq1a2emvakrVu32qQgAAAAAAAA2N9zQ6NFixYlZh0AAAAAAABIQp4bGuXMmVPS486vly5dqn379ik6OloVK1ZUmzZtEq1AAAAAAAAAJL44+zSaMGGCLl26pGbNmskwDP3xxx+6cuWKBg8enBj1AQAAAAAAwA7iDI12796tVatWydHRUZL0/vvvq2HDhjYvDAAAAAAAAPbjGNcEMTExio6OjvW3k5OTTYsCAAAAAACAfcV5pVHDhg3Vrl071a9fX5L0119/qUGDBjYvDAAAAAAAAPYTZ2jUuXNnFSlSRHv37pVhGOrSpYuqVq2aGLUBAAAAAADATuK8PS0qKkpZs2bVgAEDVKRIEe3bt09BQUGJURsAAAAAAADsJM7QqF+/flq7dq2OHz+u//3vf/Lw8NCgQYMSozYAAAAAAADYSZyh0dWrV9WvXz9t2rRJzZo1U7du3XTnzp3EqA0AAAAAAAB28lJPTwsKCpKPj4/ef/99BQYGKjIyMjFqAwAAAAAAgJ3E2RH2F198oY8//ljVq1eXl5eXateurZ49eyZGbQAAAAAAALCTOEOjhg0bqmHDhgoJCVFERITWr18vJyenxKgNAAAAAAAAdhJnaHT27FkNGDBA169flyS99dZbGj9+vPLkyWPz4gAAAAAAAGAfcfZpNHToUPXq1Uv79+/X/v379fnnn+ubb75JjNoAAAAAAABgJ3GGRpGRkapatarl71q1aikkJMSmRQEAAAAAAMC+nhsaXb9+XdevX1ehQoU0e/ZsBQUF6cGDB1q8eLHKli2bmDUCAAAAAAAgkT23T6M2bdrIwcFBhmFo//79WrZsmWWcg4ODhgwZkigFAgAAAAAAIPE9NzTatm3bc1904cIFmxQDAAAAAACApCHOPo3MoqOjtX79erVr105Nmza1ZU0AAAAAAACws+deaWR25coVLV++XH/88YcePnyozp07a+rUqYlQGgAAAAAAAOzluVcabdmyRV988YU++ugjPXjwQBMnTlTWrFnVvXt3ZcyYMTFrBAAAAAAAQCJ77pVGX331lerWravly5crb968kh53gA0AAAAAAIDk77mh0Zo1a/THH3+oVatWypkzp+rXr6+YmJjErA0AAAAAAAB28tzb07y8vDRw4EDt2LFDHTt21P79+3Xnzh117NhRO3bsSMwaAQAAAAAAkMjifHqas7OzatasqRkzZmjnzp2qWLGivv/++8SoDQAAAAAAAHYSZ2j0pIwZM+rzzz/XmjVrbFUPAAAAAAAAkoBXCo0AAAAAAACQMhAaAQAAAAAAwMpzn55mtmvXLk2ZMkUPHz6UYRgyDEMODg7aunVrYtQHAAAAAAAAO4gzNBo1apQGDhyoAgUKyMHBITFqAgAAAAAAgJ3FGRplyJBB1apVS4xaAAAAAAAAkETEGRqVKVNGY8eOVeXKleXm5mYZXq5cOZsWBgAAAAAAAPuJMzQ6fvy4JOnkyZOWYQ4ODlq4cKHtqgIAAAAAAIBdxRkaLVq0KDHqAAAAAAAAQBISZ2h09OhRzZo1S2FhYTIMQyaTSdevX9e2bdsSoz4AAAAAAADYgWNcE3zzzTeqWbOmYmJi1Lp1a2XLlk01a9ZMjNoAAAAAAABgJ3GGRq6urmrWrJnKly+vtGnTasKECfrnn3/inLHJZNLQoUPVokULtW3bVpcuXYo1ftOmTWrWrJmaN2+u3377Lf5LAAAAAAAAgAQXZ2jk5uam+/fvK1++fDp27JicnJwUExMT54x9fHwUFRWl5cuXq2/fvho3bpxlXExMjL7//nv98ssvWr58uebOnaugoKD/tiQAAAAAAABIMHGGRp999pl69+6tatWqafXq1apfv768vb3jnLGvr68qV64sSSpZsqT8/Pws45ycnLR+/Xp5enrq/v37kiR3d/d4LgIAAAAAAAASWpwdYdetW1d16tSRg4ODfv/9d128eFGFChWKc8YhISHy8PCw/O3k5KTo6Gg5Oz9+S2dnZ23evFkjRoxQ1apVLcOfx9/fXxEREVbD3dzc4qzldePn56fIyMiXnj45toFEO5jFrx1S264gO2BdeIx2eIx2iGcbuNqwIDthXXj1NpBoB+lxGyS/VohfO6SzYT32wDbxGPvHx2gH9gtmrAuPPa8dypQp89zXxBkaPXjwQBMnTtTly5c1bdo0LVq0SAMHDlS6dC9elTw8PBQaGmr522QyWQVDH3zwgWrWrKmBAwdq1apVatas2XPnV7Ro0Re829q4FuO18jJXclnzT/A67C0+7bBp8yEbVGJf8WmH8xcDbFCJ/cRrm0heuwVJ8WuHPX5xT/O6iU873Di0yQaV2E982uD42fM2qMS+4tMOf6+0QSF2FL9jBunasQQuxM7i0w7nttugEDuLTztcOXbGBpXYT3y3iS0JXIe9xWubsEEd9hafdji6ZqMNKrGfeO0Xzl2wQSX2FZ92+EurEr4QO4tPO8R5e9q3336rYsWK6f79+0qTJo2yZs2qfv36xTnj0qVLa+fOnZKko0ePysvLyzIuJCREbdq0UVRUlBwdHZU6dWo5OsZZCgAAAAAAABJJnEnN1atX1aJFCzk6OsrV1VW9e/fWzZs345xxrVq15OrqqpYtW2rs2LEaNGiQ1q5dq+XLl8vDw0MNGzZU69at9cknn8jBwUGNGjVKkAUCAAAAAADAfxfn7WlOTk4KDg6Wg4ODJOnixYsvdVWQo6OjRowYEWtY/vz5Lf9u0aKFWrRo8ar1AgAAAAAAIBHEGRp99dVXatu2rW7cuKGuXbvq6NGjGjNmTGLUBgAAAAAAADuJMzSqUqWKvL29dfz4ccXExGjEiBHKnDlzYtQGAAAAAAAAO3luaLRq1apnDv/nn38kSY0bN7ZFPQAAAAAAAEgCnhsaDRw4UJkyZVKlSpXk4uJiNZ7QCAAAAAAAIPl6bmj0559/av369dq9e7cKFSqkevXq6Z133nmpTrABAAAAAADwentuaFS4cGEVLlxYffv21YkTJ7R+/XpNnjxZ3t7eql+/vipUqJCYdQIAAAAAACARxdkRtiQVK1ZMxYoV06FDhzRp0iStXbtWR44csXVtAAAAAAAAsJMXhkaGYejgwYPauHGjdu7cqcKFC6tt27aqVq1aYtUHAAAAAAAAO3huaPTdd99p165dKlKkiOrWrat+/fopderUiVkbAAAAAAAA7OS5odHy5cuVPn16nTx5UidPntTkyZNjjd+6davNiwMAAAAAAIB9PDc0IhQCAAAAAABIuZ4bGuXMmTMx6wAAAAAAAEAS4mjvAgAAAAAAAJD0EBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArBAaAQAAAAAAwAqhEQAAAAAAAKwQGgEAAAAAAMAKoREAAAAAAACsEBoBAAAAAADACqERAAAAAAAArDjbasYmk0nDhg3TmTNn5OrqqlGjRilv3ryW8evWrdOCBQvk5OQkLy8vDRs2TI6OZFgAAAAAAABJgc1SGh8fH0VFRWn58uXq27evxo0bZxkXERGhqVOnauHChVq2bJlCQkK0fft2W5UCAAAAAACAV2Sz0MjX11eVK1eWJJUsWVJ+fn6Wca6urlq2bJlSp04tSYqOjpabm5utSgEAAAAAAMArslloFBISIg8PD8vfTk5Oio6Ofvymjo7KnDmzJGnRokUKCwvTu+++a6tSAAAAAAAA8Ips1qeRh4eHQkNDLX+bTCY5OzvH+nvixIm6cOGCpk+fLgcHhxfOz9/fXxEREVbDk+MVSn5+foqMjHzp6ZNjG0i0g1n82iG17QqyA9aFx2iHx2iHeLaBqw0LshPWhVdvA4l2kB63QfJrhfi1Qzob1mMPbBOPsX98jHZgv2DGuvDY89qhTJkyz32NzUKj0qVLa/v27apXr56OHj0qLy+vWOOHDh0qV1dXzZgx46U6wC5atOgLxq79j9UmLd7e3vF4lX+C12Fv8WmHTZsP2aAS+4pPO5y/GGCDSuwnXttE8totSIpfO+zxi3ua10182uHGoU02qMR+4tMGx8+et0El9hWfdvh7pQ0KsaP4HTNI144lcCF2Fp92OJcMu9OMTztcOXbGBpXYT3y3iS0JXIe9xWubsEEd9hafdji6ZqMNKrGfeO0Xzl2wQSX2FZ92+EurEr4QO4tPO9gsNKpVq5Z2796tli1byjAMjRkzRmvXrlVYWJi8vb21cuVKlS1bVp9++qkkqV27dqpVq5atygEAAAAAAMArsFlo5OjoqBEjRsQalj9/fsu/T58+bau3BgAAAAAAwH9ks46wAQAAAAAA8PoiNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFUIjAAAAAAAAWCE0AgAAAAAAgBVCIwAAAAAAAFghNAIAAAAAAIAVQiMAAAAAAABYITQCAAAAAACAFZuFRiaTSUOHDlWLFi3Utm1bXbp0yWqa8PBwtWzZUgEBAbYqAwAAAAAAAPFgs9DIx8dHUVFRWr58ufr27atx48bFGn/ixAm1bt1aV65csVUJAAAAAAAAiCebhUa+vr6qXLmyJKlkyZLy8/OLNT4qKkr/+9//9NZbb9mqBAAAAAAAAMSTs61mHBISIg8PD8vfTk5Oio6OlrPz47csU6bMK83P399fERERVsPd3Nz+W6FJkJ+fnyIjI196+uTYBhLtYBa/dkhtu4LsgHXhMdrhMdohnm3gasOC7IR14dXbQKIdpMdtkPxaIX7tkM6G9dgD28Rj7B8fox3YL5ixLjz2vHZ4UT5js9DIw8NDoaGhlr9NJpMlMIqPokWLvmDs2njPNyny9vaOx6v8E7wOe4tPO2zafMgGldhXfNrh/MXk1U9YvLaJ5LVbkBS/dtjjF/c0r5v4tMONQ5tsUIn9xKcNjp89b4NK7Cs+7fD3ShsUYkfxO2aQrh1L4ELsLD7tcG67DQqxs/i0w5VjZ2xQif3Ed5vYksB12Fu8tgkb1GFv8WmHo2s22qAS+4nXfuHcBRtUYl/xaYe/tCrhC7Gz+LSDzW5PK126tHbu3ClJOnr0qLy8vGz1VgAAAAAAAEhgNrvSqFatWtq9e7datmwpwzA0ZswYrV27VmFhYWrRooWt3hYAAAAAAAAJwGahkaOjo0aMGBFrWP78+a2mW7Roka1KAAAAAAAAQDzZ7PY0AAAAAAAAvL4IjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWCI0AAAAAAABghdAIAAAAAAAAVgiNAAAAAAAAYIXQCAAAAAAAAFYIjQAAAAAAAGCF0AgAAAAAAABWbBYamUwmDR06VC1atFDbtm116dKlWOO3bdumZs2aqUWLFlqxYoWtygAAAAAAAEA82Cw08vHxUVRUlJYvX66+fftq3LhxlnGPHj3S2LFj9fPPP2vRokVavny5AgMDbVUKAAAAAAAAXpHNQiNfX19VrlxZklSyZEn5+flZxgUEBChPnjxKly6dXF1dVaZMGR06dMhWpQAAAAAAAOAVOdtqxiEhIfLw8LD87eTkpOjoaDk7OyskJESenp6Wce7u7goJCYn3e2XPnvE/1ZqUxHdZsmTxjHui10h8lydDhlQJXIl9xXd5PNxdErgS+4nvsmTOmD2BK7Gv+C5Pes8sCVyJfcV3edxTZUjgSuwnvsvi5uoR90SvkfguT4ZMORK4Evv5L8vinjb57CPjuywuaTIncCX2Fd/lcXZLPvuG/7IsGbInn20ivsvimTVrAldiX/FdHreMyeeYIb7L4uyRfPYLUvyXJ2O2TAlciX3Fd3kcDMMwErgWSdLYsWNVokQJ1atXT5JUpUoV7dy5U5J0+vRpff/995ozZ44kacyYMSpdurTq1Klji1IAAAAAAADwimx2e1rp0qUtIdHRo0fl5eVlGZc/f35dunRJ9+/fV1RUlA4dOqRSpUrZqhQAAAAAAAC8IptdaWQymTRs2DCdPXtWhmFozJgxOnnypMLCwtSiRQtt27ZN//vf/2QYhpo1a6bWrVvbogwAAAAAAADEg81CIwAAAAAAALy+bHZ7GgAAAAAAAF5fhEYAAAAAAACwQmgEAAAAAAAAK4RGSYDJZLJ3CYkuJS4zAMSFbgaTr5iYGHuXAAAA8MoIjewsJiZGjo6OCgoK0p49e1LMQaWjo6MMw9C1a9fsXUqSRKj2fCm1bVLqcj/P0+HK694+ISEhioqKkoODg71LSXJe98/WZDJp8uTJun79ur1LSfIITWELrFePmc8xaA+Y14Unv19fl/XCMAzt2rVLBw8eVEBAgL3LSXJsdczkbJO54qU5OTkpKChI3bt311dffSUnJyd7l5Rotm7dqrNnz6pr164yDIOTpf/PZDLJ0dFRgYGBOnfunB49eqSqVavau6wkwdw29+7dU2hoqKKiovTWW2/Zuyybi4mJkZOTk+7cuSNfX19lypRJRYoUUZo0aexdml2Y14OHDx8qJCRE7u7uSpcu3Wu5HzGZTOrVq5c8PDwUEBCgTz75RKVKlVLevHntXZrdmT9nR8fHv29du3ZNOXLksPz9OjCZTBo0aJDSpUun3LlzW4a/juuqrZn3c2bmzx+0xasyr0tRUVFydHSUs7Oz1fqV0phMJjk5OenmzZtavny5UqVKpU6dOtm7rERj/vyjo6Pl7JyyT3/N68KtW7e0cuVKpU+fXq1bt5aDg0OS/24ymUzq1q2bsmTJovv378vT01O5c+dW586d7V1akmG+IGXr1q3Knz+/3nzzzQSZL99AdvJkmrtt2zZdu3bNcpLwuv+q+jxPJ9ienp66cOGCJCXpHVRiMwdG3bt319WrVzV8+HDNmzfP3mUlCY6Ojrp9+7a6du2qDRs2qEuXLtq3b5+9y7I584HegAEDFBAQoN9//12zZs1SZGSkvUuzC0dHR926dUtffvmlli9fro8++khnzpyxHPC8LkwmkwYPHqx8+fJpzJgx+vzzz3X16lVt3LhRd+7csXd5dufo6KiQkBDt3r1bI0aM0NKlS1+rE2fDMNS9e3flzp1b33zzjSTpn3/+kcR33tPMJzEmk0nffPON5syZo5kzZyokJMTepdmd+QTAMAz17NlTK1eutHdJSdqT4cjgwYP11VdfKTAw0LJ+pUSGYVh+cBs6dKgcHR119OjRFHOi/WRI0qNHD02fPl3btm2zd1l2Y77DZfDgwTIMQ3PnztWECRMkKUkfR5mPmYoWLaoRI0Zo/Pjx+uyzz3Tu3DmtWLHC3uXZnWEYiomJ0S+//KJPP/1UGzZsSLDASCI0sguTySQHBweFhIQoLCxM3t7e6tixoyZNmqR///3XcnCQnPz222+WS/MXLlyokydPqkKFCnrjjTc0Z84cO1eXdJhMJhmGofnz56tp06Zq3LixsmbNqkuXLunw4cP2Ls+uTCaToqKiNHbsWH322Wdq2rSpUqdOrQ0bNqSI2xyXLl2qjz76SPXr19fFixeVIUMGS+iakhiGocjISE2YMEFdunRRhw4dJEkrVqxQSEjIa3Uy3rVrV0lS7969JUm1a9fWe++9p8DAwBQfGpm/Ay9cuKChQ4fq3Llz+vTTT+1c1atZvny5goKC1LRpU0nStGnTtGHDhmT3/Z4QzMc9Xbt2VaFChZQvXz79888/WrdunaKjo+1dnl2Zw47JkyfLyclJP/30k3777Td7l5VkmU+Ix48fr3fffVf58+dXu3btdPfuXTk6OqbI4MjBwUHh4eGaPXu23njjDX311VeaOXOm0qRJo7Zt29q7PJszX5k8depUeXt7K3v27Nq4caN27Nhh79LsIiIiQpMnT9Zbb72l7t27a9WqVdq7d6+GDx8uKen+qDFmzBj5+vqqe/fukiQXFxe9/fbbatSokS5fvpwit+0nOTg4yMnJSb6+vnrw4IEqVKiQoPMnNEpk5kuMb926pT59+mjs2LGaN2+eXF1dVa1aNU2aNEkXL15MshtsfPn6+uqHH37QhQsXdO7cOa1bt07t27dXzpw59eDBA3uXZ3fme4sdHR3l4OCgIkWKyN/fX+3atdMPP/ygypUr68iRIymmz6snmb8EHB0d5erqqsKFC+vWrVvq1auXpk6dqpIlS+rcuXN2rjLhPf1Zp0qVSr6+vho7dqy+/fZbubu7a9euXXaqLvGZ1wMHBwe5ubkpX758On36tLp166b58+crf/78OnTokJ2rfDmGYWjt2rUqWLCgcuXKpRs3bljGlSxZUu7u7in6aoInL48/fvy4smbNquzZs2vfvn0KDg62c3VxMwxD/v7+atCggSpVqqRNmzZp0KBBunr1qkaNGpWkf8lNbE+2Q3h4uPLnz6+PP/5YK1euVJMmTeTp6amHDx/asUL7MrfPd999ZznRmzJlimbPnq3Vq1fbubqk6dGjR1q8eLFu3bqlxo0b6+uvv1bt2rXVqFEjBQUFvVZXK/5XT55EOzo6KmvWrLp79662b98uSZo8ebJy5swZ6zsoOYqMjNSkSZPk4uKirl27qn79+nr//fe1YsWKFHMc9XSg4uXlpcOHD+vAgQNKly6d5s2bp1OnTunu3btJ7vvJMAxNnTpVrVu3VoECBTR79mxJkrOzsxwcHPT222/r/PnzCgsLs3Ol9vHkDyt///23DMNQx44d5e/vr/379yfY+6ScPWcS4ejoqNDQUPXp00d169ZVjx49VKtWLf3zzz/KkyeP3nvvPaVOndreZSYY84o8btw4pU+fXgsWLFCnTp3Uv39/1a1bV6dPn9aSJUu0bt06O1dqP+bLZgMDAzVt2jT5+/srderUunPnjry9vXX48GHNnDlT77//foq7H98csgYFBWnjxo0KDw+Xq6urVq5cqbp16+rGjRtasGCB8uXLZ+9SE5T53vvbt2/rt99+0969e9WsWTNt3LhRuXPnVlhYmFavXq1q1arZu9RE8eR6sG3bNgUHB8vDw0M7duzQu+++q5s3b2rZsmXKnz+/vUt9KXv27NHRo0dVs2ZNGYahJUuW6OLFi5bx+fPn1xtvvGG/Au3EfKBqDozOnTunVKlSaenSpWrcuLFCQkLk6elpzxJfypQpU9SsWTOdO3dO7du3V1BQkC5cuKA2bdpYli25/TAUHzExMZZ2ePDggVxdXbV3717Vq1dP7dq1U6VKlTR37lzdu3fPzpUmPvOPBub2yZ07t+VX42LFiqlevXqaOnWq/vrrL7vVmJSYT4ijoqLk4uKiSpUqKXPmzJo2bZokqVevXmrVqlWKut3xyf4xx4wZow0bNih16tSqVq2ajh07Jh8fH0mPj89z5Mhh52oTnnkbio6Olpubm4oVK6bw8HDt2rVLzs7OqlKliho1aiQvLy87V2p7T64LEydO1Pr165UuXTp16tRJf/zxh/bs2aOMGTPq119/VaZMmZLc95ODg4NOnDihu3fvqm/fvtq3b5/+97//WcafPn1aLi4uKSoQfpK5j64dO3YoS5YsmjVrlurVq6fGjRsn6NVGDkZSixOTqXPnzikiIkJeXl4KDg7W6NGjNWXKFElSUFCQJk+erL59+ypDhgx2rjThmHdSjx490v3795UlSxb9+OOP+vfffzVo0CBly5ZNkrR//36dPHlS7du3t3PF9nPv3j0NHjxYrq6uevjwoT799FMFBwfLZDLp0KFD+uyzz1JEh8/PcvfuXfXq1UsxMTFKnTq1Ro4cqVWrVsnZ2Vm+vr7q37//axMWvIqgoCD17NlTXl5e2rVrlzp27Kj33ntPCxcu1KNHj/Txxx+rQIEC9i7T5sxXnQQFBalXr14KDQ1VqVKlVLt2bfn6+srR0VFHjhzR119//dqsB8ePH9f06dM1fvx4hYeHa9WqVYqIiFCnTp109OhRzZs3T0OGDHltlichhYWF6eTJk9qxY4fy58+vBg0avHadlm7cuFFjx46VJI0cOVIVK1bU//73P6VNm1ZlypRRyZIl7VtgEmA+PjB3BG8YhipXrqwaNWroo48+Utu2bbV+/Xp99dVXqlKlir3LTVTmtjEMQ9u3b1f58uW1YcMG+fr6qlWrVgoODtYff/yhIkWK6Pr16xo8eHCKPVmS/q+9bt++rVGjRuntt99WZGSkqlSpon/++Ucmk0n9+vWzd5l2cefOHXXr1k1Vq1aVm5ubAgMDlS1bNssPlV26dFHq1KmTXEjwX5nXiZs3b2rGjBmSpDp16ujgwYN6+PCh3nvvPVWpUsVydX9KcPv2bfXt21dly5ZVjhw59Pfff6tq1apycHDQ0aNHNXToULm6uia5fUl0dLScnJw0c+ZMeXh4qF27dgoICNCYMWNUvXp1vfnmm/rll180cODAFHfMZBiGHj16pEmTJunOnTvKkiWL+vfvb3WBQUJ1bk5olAgMw9DBgwe1evVqBQcHa8iQIfr222+VLVs2jRgxQlu3btXPP/+sqVOnKkuWLPYuN0E8eUBo7nPEwcFBs2fP1qxZs3Ts2DENHTpUb7zxhtauXau//vpL//vf/1LUlTR//vmnGjZsqIiICHXo0EEfffSRmjZtqrVr12rv3r2qUqWK6tSpkyKfmnLo0CGVLVtWwcHB6t+/v5o3b64aNWpo1KhRCgsLU9euXZUrVy6FhYUlmyeIGYahI0eOqGTJkpbbEDJmzKiuXbvq6tWr6tatmxo2bKgvv/zS3qUmCsMwdOzYMZUsWVJBQUH67rvv1KJFC7333nsaOXKkMmfOrPfee0/FihVTSEiIPDw87F3yK/nhhx8UEhKiwYMHy8/PT3v37tW+ffv08OFDTZw4MUE7L3wdPHr0SC4uLtqyZYtmzJihVKlS6eeff1bq1Klfy6ce/f7774qIiLAczFaoUEHTpk1T1qxZ1a5dO7m6utq7RLsxH8AahqExY8Yoffr0ql27tnr06KEvvvhC9evX19WrV/Xo0SMVLlzY3uXahbnT68DAQBmGoYkTJ+qvv/5SeHi4jhw5ooEDB+rGjRtau3atJk6cKBcXF3uXbFf37t1T586d1ahRIxUsWFDbtm1TZGSkateurc2bN6tr167KmDGjvctMdOvXr9e5c+fUs2dPBQcH688//5SLi4saNWqk6OhopUuXzt4l2sy9e/fUo0cPNWvWTNHR0Tp79qzeeecdXb16VefPn1e/fv2S1Z0dcVm1apVu3rypzp07KyIiQn/99ZfCwsLUvHlzPXr0SGnTprV3iS907tw5DRgwQN99951KlCihCxcuqHfv3goKCkqWdxy8rJiYGHXq1EmXL1/W6NGjVa5cOZudN6asM1E7MF9+XahQIV2+fFm3bt1SYGCgJkyYYOmXZfbs2RoxYkSyCYzMT2kwmUyaNGmSKlSooHnz5ilHjhzq0qWLOnXqJG9vb8sl52nTptWgQYNeu5OC/+LWrVt68803ZRiGPDw8lD17di1atEiS1LBhQ5UtW1Y7duxQSEhIiguMDh8+LAcHB8XExCg4OFjXr1+33JM7ZMgQOTg4aMqUKYqOjk5WX/j+/v6Wp6GdPn1arq6uOn36tAICApQrVy5NmzZNPj4+CgoKSnL3m9uCn5+fQkNDJT3ej27btk3//vuvJKlv3766fPmytmzZoujo6CQfGBmGoVWrVsW6t7xx48aWz9Hb21sVK1aUt7e3xo0bl6ICo5CQEMstJZJ04sQJOTo6qmTJktq9e7eioqKS/HeDyWTSkiVLYvWtFh4eLg8PD82cOVMTJ07Unj171LNnTzVt2jRFB0bS44BQenxF1okTJ1SzZk29/fbbmjdvnv73v/9p7ty5evvtt1NcYHTkyBHLv7/99luVKVNGS5cuVaVKlTRlyhTVrl1bvXv3VufOnXX8+HHNnTtX3bp1S7GB0ZPfg7du3VKRIkXUunVrlSlTRrVr11bq1KlVvnx59evXL8UERuZbsszbmLu7u/7++2/dunVLnp6eMplMOnHihFKnTp0sA6Mn1wk/Pz9lzJhRjRs3VvPmzVWkSBGtXbtWbdq0Ue/evZPV8eOzPLkumNvF/PTOVKlS6e7du/r333+VOnXqJBkYTZw4UX369NHNmzd1//59FShQQE2bNrU8VClfvnyaOnWqlixZkmICI8MwtGvXLh08eFABAQGSHj8EJiYmRl9++aXmzJmjgIAAm503cqWRDT3ZL4m/v78yZcokf39/Xbt2TfXr11emTJn06NEjeXp6JskNNj5CQkL04MED5cyZU7t27dLixYv17rvvql27dpKk/v376/bt2/rll1/sW2gS8dNPPykwMFDffvutBg4cqDt37mju3LmS9FpePZEQzCeJs2fPVrZs2VS6dGmNHTtWJUuWVJcuXSQ9vuQ6c+bMdq404RmGoUmTJsnLy0s5c+bUkSNHFB4ertq1a6tgwYKKjo5+7W7Via9Hjx7J0dFRY8eOVY0aNZQlSxZ9/vnn6tOnjxo3bqzIyEgFBwe/FutBQECA1qxZo40bN6p58+by9vZWpUqV1KdPHxUuXNhyNWZUVFSKCRTMtyV5eHgoICBALVu2VNasWXXz5k3VrVtXq1evlqenpxo0aGDvUuM0atQoLV68WG+//ba6dOmiDBkyqGLFiurXr586d+6su3fvauzYsVq6dGmyuTIyPiZMmKCYmBj5+vrqs88+U0REhO7evaugoCA1b95cBQoU0PXr13X9+nWVLVvW3uUmqtOnT+vatWuqUaOG7ty5o759+ypTpkyaPHmypMcnUP7+/vrpp5906dIlnT59Wt7e3inudgwz8/F1eHi4oqKiFBISopYtW2rcuHF69913tWrVKq1du1bTp09PMdvck7dk/fDDD/rggw9Urlw5/frrr9q0aZPq1aundevW6fvvv0+W3R2Ylz80NFTu7u66fv26pk+frjp16qhq1ar6+++/tXr1ao0bN05ubm72LtemzG1x48YNzZs3T++++66qVaumoUOH6vz586pXr55Wr16tsWPHJtl14d9//9XixYvl4OCgW7duqXfv3jp58qQ2bdqkadOmpZhjYTOTyaRu3bopS5Ysun//vjw8PJQrVy41bNhQuXPnVlRUlA4fPqyKFSvarAZCIxu7efOm+vfvr+zZs6tNmzbKnz+/Fi5cqPPnzysoKEg//PBDsgkGxo4dq5CQEB0/fly1a9dWhgwZ5O7urpMnT1p++ZGks2fPpoiO557FvCMPDg6Wg4ODrly5orVr18rFxUW9e/dWjx49FB0drRkzZiTYPaivC/NBYEREhBwdHbVmzRoFBASoWLFi8vb21qBBg1S1alV17NjR3qUmKPNyh4SEyNXVVXv27NHmzZtVtWpVpU2bVr6+vpKkjh07ysXFJdmvE+b2iIqKkiT5+PjIx8dHbdq0UYYMGdSkSRONGDFCjRo1snOlcTMMQ7/99psyZMigIkWKKDIyUlu2bNG5c+eUJk0aValSRVu3btXw4cNTTFgkPd4PDh48WFmzZlXv3r21adMmBQQEyNnZWR9++KGyZcv22gRoK1askPS4b759+/apd+/e8vPzk4uLi3LmzCl3d3d99NFHCg8PT/a/bL+I+fhg0KBB2r17ty5fvqywsDAVKFBAN27c0M2bN2P105bSvv/M1q9fr8DAQNWqVUtjx45Vnjx5LP3xXLhwIcX8ov4iT54QDxs2TFWqVFHTpk114MABDRkyRPXr19eBAwc0ceLEFBeq3bt3T/3791eTJk0sP0Z7eHgoIiJCN2/eVKlSpZQ3b147V5nwzPuLW7duacCAAfroo49UtGhR7dy5U5cuXdL9+/d1/fp1DR8+PMWcf9y/f1+9evVSixYt5ObmpjRp0sjb21tbt25VVFSUypQpk+QCI5PJpO+++07Ozs7KkSOHOnbsqNu3b2vz5s06cOCAKlSooJkzZ2rYsGGqWbOmvctNNOZjppw5c6p79+4KDw/X1atX9dNPP6l8+fJq0aJFrOlt9f1JaJTAzLchNGnSRJL0/fffK2PGjGrfvr1iYmJ04MABubm5ydPTU+7u7snmCTnjxo1TaGioRo4cqZs3b2rPnj26cuWK8ubNKwcHBx08eFDvvPOO6tWrZ+9S7ebJL7W+ffvqww8/VKVKlRQZGakNGzbo/v37GjJkiG7dumXpJDylMB8E3rp1S999951atWqlggUL6tChQzp79qzy5s2rcuXKWb5IkgvzOnHz5k0NGzZMxYoV0xdffCFfX19t2rRJFSpUUJYsWeTl5aX06dPbu1ybe3I9GD58uNq2bat8+fLJz89PmzdvVtOmTZUjRw4ZhpHkb+EymUz65ptvJEk5c+ZUq1atlClTJsv4H3/8UcHBwVq1apW2bNmSbK42fRmdO3dWhgwZLJ1FS49vS12/fr2aNWsW67akpB4ebN++XUePHtVbb72ltWvXymQyad68eVq0aJH27NmjU6dOacuWLXJ2dk5xtxqbbdmyRRs3btT3339vGWa++q5ChQrKnTu31qxZo7p16ya5kxhbM4fkhmFo5MiRevvtt3Xx4kUVLlxYFSpU0IgRI5QrVy4NGTIkyW8LicHcBiEhIerfv78+/vhjpU2bVidPnlTu3LlVtGhRXb9+XZkzZ042x9dxefKHlv3792v8+PEaPXq0xowZo7p162rTpk1asGDBaxHCx8eT68SXX36pDh06yNnZWcHBwbp69apq1aqly5cvq1ChQsnq+PFZzOuC+bxi0aJFmjhxooYMGaJChQrp/Pnzmjt3bpK8SscwDA0YMEDZs2dX06ZNlT59+ljHvWfPnlV0dLSmTZumIUOGKFeuXPYrNpGNGjVKO3fu1ObNmyU97hzc0dHRcqta7969E+U2/pR5BGNDJpNJadOmVUREhCTJzc3Ncm+xk5OT1q9fr9u3b6tAgQLJ5gvNz89PgYGBGjlypCQpe/bsqlOnjjw9PXXjxg3Vr19fpUuXTjHp/vM4ODgoNDRUX3/9tT799FPlyZNHGzZs0MaNG1WmTBm5u7srKCgoxQVGkuTo6KgHDx6oV69eat68ucLDw+Xv76+oqCjlypVLFy9eVIYMGZLdF76Dg4PCw8P17bff6qOPPlKFChU0d+5cmUwmlSpVSgcPHlSRIkVSRGAkPV4P7t27p6+//loffvihQkND9e+//yokJES1a9fW6tWrlT179iQfGEmP+yTJly+fxo0bp6+++kq+vr7666+/tH79eklS9+7dNWjQIG3atCnFBEaGYWjt2rUqWLCgcuXKpRs3bljGlS5dWu7u7vr9999jvSapnyRXq1ZNVatW1ZkzZ9S4cWOFhISoR48eatu2rX766Sf9/vvvSfKJNInJ1dVVhQoVkvS4rydJyp8/vzJkyKDff/9duXPn1qeffpriAiNJlsBo3Lhx8vT0VKtWrVS+fHmdPXtWu3bt0rfffqumTZtKSvrbgq2Z+wgNCQnRiRMn5O/vr7CwME2aNEnZs2fXmDFjFBkZqeLFiyeb4+u4GIZheRJajx49lCtXLjVq1Ei+vr4aPny4ypUrl6zbwmQyycHBQQ8ePFBoaKjl1p25c+fq0aNHun79unLkyKFq1aolu+PHp5nXBfOPbiVLllSJEiX0999/a/z48WrZsqVy5Mhh6esoqVmyZImyZcumPn366M0339TcuXM1ePBgffrpp4qJiZGXl5eKFCmin376KcUERoZhaOrUqWrdurUKFCig2bNnS5LlR6i3335b58+ft3yv2lrKPYqxgdmzZ2vBggWqUaOG+vfvr1GjRqlVq1ZasWKFfvnlF61Zs0ZXrlxR0aJF7V1qgnJxcbHcYhcdHa3o6GilSZNG7777rvbt2ydnZ2c1aNBAb7/9tp0rtQ+TyWT5t/lKmUuXLmnWrFnKnTu3goKClCdPHnXv3j3FdNZo9mTbBAYGWjqDX7x4sQICAnTu3DnVqFFDHTt2TDa3cUqxl/vhw4cKDg6WyWTSDz/8oGzZsmn27NmqXr26Bg4cmKyW+3mebI8bN27IxcVFLi4u+vnnn3Xp0iUdP35cpUqV0pAhQ16bvgiyZ8+uQoUK6dy5c+rdu7emTJkiPz8/LV26VMePH7dMlxw7I32ePXv26OjRo6pZs6YMw9CSJUt08eJFy/j8+fO/Fic4HTt21JdffqmJEydq69atypgxo4oUKaIbN26oTZs2unXrlrp16yZJsa4uS6lCQ0Pl4+OjR48eKXXq1JYf1fLly2e53Sol7Oee9OQ+LyAgQDt27FCGDBkkSZUqVVKxYsV07tw5OTk5qUiRIvYqM0lxcnLSnTt31KVLF+XOnVvDhg2Ts7OzBgwYoPz58ytPnjzy9PS0d5mJyvxj5PTp0+Xu7q58+fKpY8eOKly4sH7//XeNHDlSHTt2TLZXGZl/aOrbt698fX3VoEEDubm5acCAAcqVK5f+/fdfy63uyZ2Dg4PCwsI0depUhYeH680339TQoUOVJ08eLVy4UAMHDlT79u2T7DHUG2+8oQsXLuiXX37R119/rd27d6tFixZKnTq1ZsyYYZkuJd0g5eDgoBMnTuju3bvq27ev9u3bp//973+W8adPn5aLi0ui/ShFaJRAIiIiVLp0aV24cEEbNmzQhAkTdPz4cf3+++9asWKFgoKCdOrUKQ0ZMkS5c+e2d7kJyt3dXYcPH9bu3bvl7Oxs+TXs4cOHypo1q2JiYlLs0z1iYmLk6OiooKAg7dixQwEBAapRo4bKlSun7t27K3PmzDpx4oRSpUqV4trI3DYhISG6fPmyHB0dVbZsWYWEhGjYsGHy9vaWn5+fXF1dk9UJhfkWrPv37+v48eNydXVVu3btlDZtWg0bNkylS5e2XKGYKlUqe5drc+b1IDg4WLdv35aDg4MaN26sGzduaMiQIcqbN68uXbqk1KlTy93d3d7lxskwDMvTSpYuXaoZM2bI09NTGzZs0IABA1SuXLlYy5GSrh7w9PTU5cuXlTNnTjVp0kSpU6fW77//rpCQEP3zzz/6888/VbVqVXuX+UIxMTEqX768bt68KV9fXwUEBKhfv35at26dFi1apGHDhumTTz7RkCFDJKWsz/d56tWrp9KlS2v48OGKjIxUqlSpdPr0af30008qVaqUvctLdOZ9nmEYOnTokDw8PDRu3Dht27ZNmzdvlru7u6pXr67OnTsre/bs9i7X7swniVFRUVqwYIEePXqkXLlyqVq1anrjjTe0fPlyDRo0SH379k0xV22aQ8eYmBi5uroqc+bMcnd31969eyVJxYsXV6VKlTRx4kQVLFjQnqXaVGRkpAYNGqQcOXKoXr16ql27tnLkyKEdO3ZozJgxGjlyZLK/Utu8LpiPLc1B/J49eyRJ7777rkqUKKEffvghSd7xYd6+CxQooOLFi+vq1asqVaqU/vzzTxUvXlx16tSJtV2nlO/U6OhoGYahMmXK6OTJk3rrrbc0ePBgHT58WEuWLNHu3bu1bNky9ejRI9E6+6dPowRgvof02rVrmjx5su7du6fmzZurZs2aatOmjUqVKqVBgwbZu0ybMN9L7OPjo99//10tWrTQO++8o9OnT2vMmDHq1q2bKleubO8y7eLJ/moGDx6s9OnTK1OmTEqVKpUqVaqkU6dOae3atZo0aVKK66zR3DY3btzQd999JwcHBxUqVEhFihSRm5ubzp07p7Vr12rKlCnJqm2e7LOne/fuKliwoI4dO6Zu3bopR44cWrlypU6dOqXRo0cn6wM9s6f7dEqVKpXeeOMNlSpVSlmzZtXu3bu1detWjR8//rW5UtH8GYeFhSkkJESSlDVrVkmy9C0xadKk1+KKGlv44YcfFBISosGDB8vPz0979+7Vvn379PDhQ02cOPG1uPUwKipKPj4+2rlzp7788ku9/fbbCg4O1rlz5+Tv76+qVasqT5489i4zSXhyX79w4UIdOnRIZcuWlZ+fn7788sskHxLaislk0ueff64SJUpo06ZN6t69uzw8PDR9+nR9/vnnql+/vr1LTBLM+9OIiAilSpVKO3bs0NatW5U3b161bt1aqVKlUkBAgDw8PFLMrf1PHkdMmzZNJUqUUNWqVbV69WpFRkaqTJkyeuedd+xdps082YeTq6urfHx8tGDBAnXv3l0VKlRQcHCwwsLCZBhGsg9dzevC7du3NWXKFNWoUUM5cuTQsWPHdO3aNVWoUEFVqlSxd5nPZd6unxQTE6MHDx4oY8aM2rhxoxYvXqzhw4cnq3OBV3Hu3DkNGDBA3333nUqUKKELFy6od+/eCgoK0oIFCxL14QiERgkkKChI3bt3V6NGjZQ2bVrt27dPFStWVI0aNdSpUydNnDhRmTNnTrYJaVhYmPbt26cZM2aoSJEiunXrllq3bp2kd1aJ5bvvvlPJkiXVpEkTHT9+XGvWrFGdOnXk7e2tkJCQ1+KR4bYQHh6ufv36qV69eqpZs6ZWr16t8+fPq0mTJjIMQ+7u7snuvmXDMGQYhvr166cyZcqoVatW+vvvv/X9999rzpw5cnBwkIuLS4q6TTE0NFQ9evRQkyZNVKFCBR06dEi+vr6qX7++nJyclD59+tfiBPz69evPDIIOHz6sPXv2KDQ0VAcPHtT48eNTzMGPYRhavXq1cuTIoQoVKkiSLl26pEWLFlmuxDlx4oR8fHzUqFGj16pdwsPDtWHDBu3YsUMtW7ZUpUqV7F1SkmA+oXvSkx04Hzp0SFmzZlV0dHSK68PIfJJrMpm0aNEihYSEqFu3bvrkk0+UJ08e9e7dW1evXpWzs7NKlixp73Lt7slwZPDgwcqXL5/q16+voKAgHT9+XG5ubvriiy+S7a1XL3Lnzh316dNH9evX17Jly1S3bl01btxYv/76q9KkSaO2bdsmy6c1mteJmzdvauzYsTIMQ71799bly5e1YMECffHFF3r33XftXWaiCgwMVN++ffXOO+/owIEDqlWrlkqVKqV9+/bp/v376tixo1KnTp3kzj8XL14sd3d3ffDBB3J3d4/1I+LSpUt1+vRpPXjwQKNGjXptfjRMCBMnTtSNGzfUv39/pUqVSunTp9fixYuVKVMm1a1bV5J08eJFOTk5JfqdS0mv+/TXyJMHQnfv3tXbb7+tli1bKioqSqlTp9acOXOUKlUq/fLLL/YtNAE964BQktKkSaPq1aurZMmS8vDw0MOHD1NkGGIymTR37lw5OjrqjTfeUL169RQcHGy537R48eJavHix7ty5o1SpUqWI24/MDMPQli1bLJfPZs2aVVFRUSpatKhcXV3VpEkTdenSRQ4ODknyEtr4MplM+v3333Xv3j299957KlKkiLJnz27pv+L999/Xtm3bdP78+WT966CZYRjauXOnIiMjVaJECaVKlUpOTk6qXbu2XFxcVKFCBW3cuFFZsmR5bULD4OBgzZ8/XwUKFFCuXLn0zjvvWA5u33zzTR0+fFjZsmVTixYtXosraRLK+fPndeHCBc2cOVPNmzeXt7e3KlWqpKCgIM2ZM0cdOnRQsWLFVLBgwdfuxC916tSqV6+enJyc9PPPP8vFxUVly5a1d1l2ZTKZ5OTkJJPJpNWrV+vRo0f68MMP5ebmZjl2SKltdOXKFf31119q06aNHj16pPz58+vPP/9U+/btNWDAAEVFRWnRokX6+uuvk9zJnb2Y+6vp37+/2rZtq507d2rp0qVq166dChYsqEuXLiksLOy123f8F+Yfnv7880/Vq1dPLVq0kK+vr5YtW6agoCDVqVNHefPmTZaBkfR4nbh7966GDx+uZs2a6cKFC+rcubN+/vlnffLJJ1q8eLHKlCmTYo6tY2JitH79en388cdq0KCBjh8/rsWLF+vu3bsqXry4SpYsmWi3Lr0qd3d3nT59WqlTp1bVqlUt62z27NnVpEkTubi4KFWqVCmuX8AmTZpo8eLFmjVrlm7duqXevXvL09NTa9euVa1ateTs7Gy340j6NIon81McIiMjFRwcrFSpUunChQs6efKkXF1dFRYWprx588Z6dPDr7skDwokTJ2rKlCnatm1brPEZM2aUq6tritvIpcfL36dPH127dk3u7u6W24uaNWumzZs3a926ddqxY4euXr2a7DpDj4vJZFKPHj20adMm7du3T25ubvL09FS5cuW0dOlSXblyRQcPHlRERESyuv/cZDKpd+/eOnfunG7cuGH58s6SJYsCAgK0ZcsWrV+/XseOHUsRYYJ5G1mzZo0OHTqkiIgIpUuXztKpqWEYOnnypO7du/danAgYhqHt27fLyclJZcqU0fjx47V7925Jjw9uHz16pIwZM+rLL7/URx99lCI+Y+lxu6xYsULnz5/Xxx9/rJkzZ1rC06FDh6pevXo6f/68pYPS1+GzfpZUqVLpgw8+UOPGjZNdX4XxYe6np0ePHrp3754OHjyorl27Kjg42PKUsJQqd+7cun79uipUqKBff/1VBQoUUFRUlNzc3OTg4KBx48apYsWKBEZPOXbsmCpXrmy5jTEoKEhTpkyRi4uL2rRpk6yOF17E3G+Ng4ODHB0dVbt2bctVuiNGjFDnzp119OhRvfnmm5YfpJIb8/7jwIEDKl68uAoXLqz79++rYsWKat68uYoUKaJJkyYl+8DoyaefmYP4a9euqU+fPvrhhx/UoEEDnTp1SsWLF0+SfXxFR0dLkqpWrap///1Xq1at0o4dOyy380vSm2++qZw5c6aYc0mTyaRvv/1Ww4cP17Zt2zRs2DB16dJF77zzjqZPn66QkBAdP35cf//9t13r5Pa0eDBfYXT9+nVNmjRJrq6uqlq1qk6fPq19+/apePHiOnz4sCZPnqy8efPau9wEZRiGvv76a5UuXVoeHh6aPHmyvv/++xT76+GTRo8erTRp0qh3796WYSEhITp9+rScnJw0f/58eXh46LPPPktWV9K8jIEDBypnzpz66quvLJfoh4WF6eDBg7p69aq2bdsmFxcX9e7dO1n15TNy5EilTZtWPXv2jDX88OHDOnTokB48eKArV66oV69eKeJWjUGDBilnzpzq3r275cqD0NBQXblyRRs3btTx48cVHR2tIUOGvBbbyJkzZzRlyhTVqlVLadKk0fnz57Vv3z61atXKchlxSmMymfTNN99IknLmzKlWrVrFOvD78ccfFRwcrFWrVmnLli1J8qD2VT151XFKZW6D9evX69ChQxo6dKh69OihrFmzysvLSx9//LG9S7SLJ6/OPnjwoH7++WdFRkZq1qxZunjxonx9fXXixAnVq1cvxd1W8yzmKzQfPXokFxcXRUZG6o8//tDhw4c1fPhwHTlyRLNnz9b333+fYq5mf/I2vZkzZ+rNN99Uvnz5VKpUKU2aNElvvfWW/v77bw0dOjRZHkc83a/VjRs3LLc59+nTR7dv39b06dM1fvz4ZB/eP3l73pIlS5QqVSrVrVtXnp6eGjNmjGrUqKFff/1Vo0ePTtS+bl7VvXv31KlTJ7Vq1Ur37t3T/fv3VaRIEVWuXDnJXhllK4ZhaMCAAcqePbuaNm2q9OnTxwrDz549q+joaE2bNk1Dhgyx6xX4hEbxFBYWpp49e6pTp066evWqfv75Z40YMULp0qWTs7OznJyckk1Hp08eEJ8+fVoLFy5Uz549NWHCBBUrVkyRkZH66KOPUlQ/LM8ybdo0NW3aVLly5bIEI1FRUerfv7+6d+9u6Zfldf1V/b8YN26cBg4cKOnxrwzOzs66deuW5v+/9u4zIKrrefj4l15VLGADCyqWCP6wd4O9iyXWqDHWWFEBQUFFsaMgYmyxF+RvAzUBC4lRsVdUYtcoIk2aoLDA3ueFz26wpurK3vN5k6jEzO7evWXOnJmNGxk1ahR5eXmYmJho3bhcX19fRo8ejaWlpfom+PHjx+zYsUPdxyIrK6tQTAX7t3JycvDz82PatGno6+urb34ePnzI2rVrmT17NikpKZibmxeKaXmq4/jSpUv83//9H40aNaJjx45ER0ezfPlyHBwccHR0pEOHDpoO9ZOaMWMGFSpUYPTo0QAcPnyY3NxcdHR06Ny5s/rn0tLSZFMloM3e3LJ+9+5dtm/fzvXr15k4cSJVqlRhxYoVeHh4UKxYMQ1G+ump3hulUsnOnTupW7cuNWrUYM6cOeptNaVKlcLW1lb2SUd4PTkya9YsKleujJmZGePHj1f397h9+zbz5s0rVP3P/gvJycm4ubnRp08fEhMT+emnnxg9ejQJCQkcPnwYb29vrez7UvCYWLRoEXZ2duo+OPv27eP58+dcvHiRxYsXF4reh/+FpKQkPD096d+/P9HR0Rw/fpwFCxYQGRnJ2bNnmTVr1md5LBR8lrxz5w6rV69m6dKlAOzYsYOjR48ycOBA2rRpI6vz4bZt20hISGDq1KkA+Pn5kZqaqs4tvKsljKaI7Wl/g6o8NCcnh2fPnlG8eHH09fWJiIhg4sSJnDx5El1dXWxsbLQmYaTahqdSvnx5jIyMGDNmDE5OTjg7O3P27Fn1NgM5kiSJ/Px8YmJiCA8PB14lhvLy8jA0NMTY2BgjIyMMDQ1llzBSKpWkpaVx4sQJzp49C6Du7/Ty5Uvi4+MpUqQIVlZWWpcwUjl06BB5eXkYGBgAr7Yp3L17l9zcXABZrKoolUpSU1O5du0acXFxwB8l1np6euTm5mJoaEiZMmUKRcIIQF9fn6SkJHR0dJg4cSJRUVHs378fOzs73NzcuHfvHjVq1NB0mJ9cmTJlqFGjBnfu3GHy5Mn4+/tz/fp1goODiY6OVv+c3BII2qjglvU5c+awZcsWfv31V3R0dLC1teXZs2e4u7vTpk0bWX7eqi15rq6uxMXFkZSUxLNnz5g5cyaNGjXCz8+P+Ph4WT0gfYiuri4ZGRlMnz6dQYMG0aJFC4KDg9m3bx8DBgwAkE3CSJIkoqKiiI+PB+DBgwc0adIEe3t7jh8/zrBhw8jNzWXQoEGsXbv2s0wS/BdUfa0mTJhA9+7d0dfX5+eff+b8+fOYmZmpzz3anDCSJIkzZ86QmJhIXl4eMTEx1KlTh6pVq3Lz5k0GDhzIjRs3GD9+/Gd7LBRs6aJQKKhcuTL3799n48aNwKsJs0ZGRtSpU0d258Ny5crx4MEDNm3ahKurK1FRUfTr1w8TExO+//579c99DjU+ohH236DKdnt5eTFz5kxMTEwYP348fn5+lChRgk2bNvHVV19pOsz/jKoyQqlU4unpia6uLn379qVChQpkZGQQFxfHpEmTGDx4sNaPtfwQHR0d9PT0cHFxYenSpZQtW5auXbuir6/PsWPHiI2NxcjISNNhaoSuri4WFhZ88803hIeHU7JkSfUF7e7du7x48YLs7Gx1QkXbODo6cv36dW7cuEGtWrUwMDDg6NGjPH/+XN13QA4XSF1dXcqUKUOLFi3w8/Nj9uzZ6srEa9eukZaWRmZmJmZmZp/9+6Fa+QR49OgRgwcPZsOGDbi4uBAUFER2djYDBw5k1apV6OvL5xIrSRJ5eXlIkkRwcLC6clCVSA8MDHytou5z/5yFP6fqYbRs2TL1v2dkZGBsbEyTJk24d+8eEyZMoFGjRrLawlfwtYaHh5OQkMDs2bOZMmUKVapUITMzk3nz5tG3b1/ZV2hLksSOHTuoWrUqlSpVQk9Pjxo1amBiYsLq1avx9/fn9u3bVKtWDR8fH1kcQ0qlkkmTJqmfOTw9PdHT0+PUqVOcOHGCGTNmkJCQwI4dO2jVqpXWLTwplUqOHDlCfn4+nTt3RpIk6tevj6OjIxs3bqRPnz7o6OjQp08frW34raJUKnF1dSU7OxtTU1MGDhxIkSJFuH//Ph4eHnh7e5ORkUFISAhdu3b9LN8PSZLQ09MjPj6eGTNmUKZMGUqVKsWKFSsYPXo0d+7c4fr16yxfvhxLS0tNh/vJqK4T1apVw8HBgdjYWPWWU4COHTuSnp6u/vnP4dwntqf9CUmSuHXrFjY2NkiSREBAAKmpqSxdupSbN2+yc+dOcnJyiI+Px8PDQ6v6scCr1+/v74+RkREKhYLU1FS6d++OUqkkNzcXU1NTHB0dNR2mximVSpRKJadPn2bNmjXUqlWLEiVKcOrUKWbNmiWLlbEPefjwIT///DNXr17FyckJhULBjz/+qLUl1SoKhYK1a9eSnZ3No0ePqF+/PocOHWLOnDmyOiZUF8eUlBR27NjB+fPnGTFiBI8fPyY8PJzZs2cXqvcjIyMDhUJBqVKlOHPmDK6urixYsICKFSvyww8/4OrqqhW9ev4OVTLtxYsX6oaWVlZWwKtqu82bN+Pn56c1VbjCK25ubuTk5BAYGIhCoeDw4cPExsYyZswYTYemcdevX0dfX589e/aQn59Pq1atKF68uLoh/Oe07UATVIMRTExMyMzMpH79+rRr146FCxcSGxuLm5sbxsbGLFiwgNWrV8siwaZUKpk5cyYlS5Zk8uTJrFu3jtzcXMaOHcuiRYu4ceMG3bt3JywsjJkzZ1KtWjVNh/yfUiqVuLi4ULp0aS5cuEDt2rXx9vamU6dOZGdns2vXLnU/2ZUrV2p1o+Q3jwV/f3+srKwYNGgQc+bMISMjgzp16hAZGYmnp+dn/fyZmZmJm5sbQ4YMoWjRoowYMYJZs2bRqlUr0tLS0NfXl1XCSNWfq6D8/HzS09MpUaIEERERbNu2DR8fn8/q3lgkjT5AqVTi5uZGVlYWZcuWpWPHjpw7d46EhAScnZ3VzZ/v3btH8eLFteaCFhERQbFixWjSpAnLly/n4MGDHDlyBIC1a9dy9+5d+vXrR7169TQcqeaoHpBUfU0KSkhI4NixY5iZmeHg4KDVZbPvUrASo6D09HSuXLnCiRMnKFKkCN26ddOqpo3ve925ubkkJiZy9uxZzM3NqV69utY1yH+XD1UW7Nixg4SEBHJycujXr99n3bBRRfV6JEli06ZNXL58menTp1OmTBkiIyMZN24coaGhVKlSRWsr594lLi7unYmgS5cucerUKbKysjh//jyLFi36rG5+hH/mzR5GUVFRzJw5Ez8/PxwdHTl+/Djbt2/Hz88PU1NTWSVGlEolOjo66obgZ8+epWXLlrRs2ZJr167x4MEDdu/ezejRo/nyyy81Ha5GqaYFWVpa4uLiwpUrVwgNDWX27NlERERw4MABateuzenTp/H29ta65Mj7DB8+HD09PdauXQvA8uXLMTExYdSoUQBERkair69PxYoVtW4ap+qZq2rVqnz33XdkZGSwfPlyvL29+e2339Rb1I4dO8bixYu1esERoG/fvlStWpX58+cDEBAQgKmpKaNGjSIrK4sLFy6QkZGBvb39Z3ksFLwnTktLY8WKFTRs2JDdu3czceJETpw4QYcOHWR3X7Bt2zZ1Xy4zMzP1vWV8fDzBwcHcvHmT9PR0fH19P7tjXCSN3kOpVOLl5YWVlRUuLi54enrSpk0bmjdvzpYtW8jJycHR0ZHmzZtrOtT/1I0bNyhatCg2NjacOHGCRo0a0a1bN5o3b463tzcAa9asoVWrVrLs1wF/3DQnJiayZs0a6tWrR9u2bWXXr+hdVBeJ9PR0cnJyyM3NpXz58oB2TxgqeEycOnWK5s2by2ayy7uojoPMzExevHhBsWLFMDIyKrTHgOrzzczMRE9Pj9jYWE6ePMmdO3fw8fHht99+44cffsDNzU3rp7cU9Pz5cwIDA6lWrRrW1tY0bdpU/dmnpKSwd+9eihUrRoMGDT7Lm1rh7ynY2HnRokXk5+fTunVrcnJymD9/Pp07d+bRo0f07NmTli1bajpcjVC9Ry9fviQkJITk5GQaNmyImZkZFy5coGbNmrJ9bwqaOnUq0dHR6gXJoKAg0tLS8PLyAl4txurr62NgYCCr6sTQ0FD27NmDp6cnp0+fJiYmhoULF8piIcLf35/jx4+zb98+9a8zMjLw9vZGV1eXtLQ0nj17pu6Dqe1WrlzJTz/9xK5duwgODubatWv4+fkVim3vqvuAjIwMsrKyKFq0KEFBQZw6dYrRo0dTqVIlvL29Wb16tawqjAD27dvHzZs3cXR0pFWrVq9tKXz48CEGBgYYGxt/llV0Imn0Hr1796ZJkya4uroCsGTJEvX44KSkJHbs2IGhoSHffPPNZ7mH9J+Iiori559/pkWLFpQvX57ly5fTtm1bOnXqxDfffEPVqlWZO3eupsP8LKSkpDB8+HA6d+5M1apVcXJy4tmzZ5QsWbLQPhj/VxISEnBxceHLL78kNDSUJUuWULt2ba1/XxITE/Hw8FA3q6xVqxZmZmayWmkvKCEhgYkTJ1KvXj1OnjzJypUrsbGxea1SoTAdEwkJCbi6ulK+fHkaNGhAjRo1iIyM5NixY+jq6rJs2TLZVBVKksSxY8do1KgRx48fZ8aMGfTv3x83Nzfgj354gvZRVQNYW1vTsGFDFi1axJQpUyhSpAiTJ09m3Lhx9OvX762KJG22Zs0a9PX1GT58OFOnTqVevXoMHDiQFy9esGrVKp48eUKvXr20bpHx30hISODbb7/lq6++QqlU8ttvvzFv3jyx+Mar7bwLFy7EysqKkJAQgHdWtWsTSZI4fvw4ly9fpnz58jx8+JDU1FRmz56tHiyjza+/oIL3RWvXriUoKIhGjRqxbt064O1qz8+NKr6kpCSmTJnCy5cvGTx4MMbGxpw/fx5jY2NiYmLw8PDAzs5O0+F+MqpjOCUlBTc3NwwMDHB2dqZ58+aFZwCMpgP4XFWoUIHr168Dr760jx8/ZvLkyQBYWloyePBgdHR0tCZhBODg4MC9e/e4dOkSOTk5DBs2jNDQUPV2jAEDBnD37l1sbW3fuQ1H2wUEBNC7d29sbGy4d+8e9evXZ+TIkUiSxKFDh0hOTmbQoEGF5iH4vyZJEgqFgnnz5jF8+HDq1KnDgQMH2Lt3r7rxnTZSXeA3btxIpUqV6NixI7Nnz8bOzg5ra2sGDRqk6RA/GdV7oToOxo4di4ODAxEREWzfvp0pU6a89lDwOX9XlEolO3bsoF+/fmRlZeHm5sbIkSP5/fffOXr0KMbGxvTp0wcnJydKlCihrqiTg9u3bxMSEkJKSgqmpqZ8++23nDlzhvDwcDp16iQSRlpm27ZtNGjQgOrVqxMTE8OLFy/U90O+vr7MmzePkJAQvLy88PLyolq1atStW1fDUX869evXZ8WKFVSoUIExY8YwYcIETE1NcXZ2plWrVmzcuFFW1TJ/Ji8vj9KlS7Nx40YGDx5MTk4Ox44dA171AZR74qhDhw4olUo2btxIdHQ0Dg4OWp8w0dHRoXnz5ujq6vLjjz9y7do1QkJCMDQ0lN0xoaOjo67UGTVqFEZGRmzdupX09PRCMYVST0+P5ORkgoKCGDFiBEWLFmXLli106tSJvn37YmVlhUKhkEW1WEH6+vqkpqYyZswYBg4cSGpqKr/99hs6Ojq0aNGiUDS0l9+T/59QjcH29/enXLly1K9fn5s3bxIYGIi+vr56THSJEiXU048KO9VrKlKkCEOGDKFUqVLcuXOHpKQknJ2dOXXqFPv372fPnj1UrVpVlgkjQH2yO3PmDDY2NkRERHDt2jV0dHRIS0vj/v375ObmfhZjET8lpVIJvLrQGRkZUbNmTZKSkpg6dSorVqygVq1a3LlzR8NR/vdU3xvVP2vWrImJiQnLly9n6tSpWFpaqt8bOVD180hLS8PAwIDq1avz4MEDpkyZwubNmylfvjwXLlzQdJh/2fLly4mOjsbAwIBHjx7h5ORE7dq1uXXrFtbW1mzbto1Dhw5hb28vq4RRXl4e1atXZ9SoUZw/f57s7Gy+/fZbxo8fz9atW1m4cCGHDh3SdJjCf+jZs2f4+/tz7949LCwsKFWqFL///juAekpeZmYm7du3x9fX97Msq/8YfvzxR3766Seys7OZOnUq69ev58mTJ6xZs4aAgADmz5/P7NmzGTp0qFb17/u39PX1yc3NxcrKiu3bt2NkZMSGDRsAZJUcAN66R1DdP3bq1IkRI0bg7u7OuXPnNBHaJ6WasNWsWTOcnZ358ssvOXjwIJmZmbI5Jgo+O+jq6qqfR4cOHUr//v1p27YtcXFxn22VUcH4z5w5Q0hICPb29jg6OtK3b1927dpFTEwMFhYWskoYFXxfkpOTsbGxwdnZmWHDhlG6dGlCQkI4depUoXh2lOfT/zuoPiwDAwMUCgUA8+fPp2vXrjx58kSToX1USqVS3aMgMDCQvXv3UqFCBQwMDHj48CEJCQn069cPBweHz7oq4GNSXdTLlSvH1atX8fb25unTp/j6+jJ+/HiWL19OcHAwX3/9NQYGBrJ6n1SrIampqfzyyy/qpNmOHTvo1q0bSUlJbN26FWtra02H+p9SfW8SEhKYNm0aO3bswM7OjkmTJtG7d29+++03fvnlF5o1a6bpUD8Z1XEwdepUjh49ipGREfv37+fLL7/k2bNn7Nq1q1A1AG/YsCHFihXD09MTExMTSpcuzapVq3Bzc6NLly4UK1aMzp07azrMT05fX5+kpCR0dHSYOHEiUVFR7N+/Hzs7O9zc3Lh3755s+91pm59//pmffvqJ0aNHU69ePZYvX45CocDMzIx169axbNkyfHx8GDRoEObm5kiSRPv27QvV9/yf8vX1JTw8nCtXrmBubo69vT0eHh6sW7eOhw8fsnv3bmrVqsXs2bNp2LChpsPVONV9VF5eHvDqXjs/P59SpUqxdetW1q1bp95+IxcFe0AmJiby5MkT9bAFgPbt2+Pm5qa1VWoFE2aq+2ZdXV0aNmxI06ZNuX37NmFhYZoK75NSLbplZmaSmJhITk4OBgYG6u/LiBEjmDBhgjqR9DlSxR8UFETHjh0ZMWIEQ4YMISsriyZNmjB69GiaNGmi6TA/qfz8fHR0dMjJyUGhUFC5cmXu37/Pxo0bgVcTZo2MjKhTp06heHYUPY3+v9WrVxMTE0NgYCDweomst7c3Fy5c4Mcff9TKKhtJkhg+fDgtW7YkPj6epKQkunTpwt27d8nIyOCbb77R2q1Ff0Z1UU9OTub+/ftUr16da9euERQUhLu7O1ZWVjx+/BgbGxutS4z8VcnJybi4uJCTk0PZsmXx8PAgODgYc3Nzzp8/j6enp1ZOR0hJSVH3OouJiaFWrVq0bduW2NhYTp06xYABA2Qz8QVenTNdXFwoVqwYCxYsICkpiZCQEJRKJTExMbi5uRWK40C1xe7x48eMHTuWIkWKMHfuXKpUqYKrqyspKSmkpqayZMmSz26yxcdUcBLKxYsXGTx4MBs2bMDa2pqgoCBq1qzJwIED0dHR0fqtFHKwdOlSHj9+jJWVFT169OCLL75g1apV3Lt3j3HjxhEbG0tOTg7FixeX3STVFStW8PTpU/VUI3iVDImLi+Ply5dMnz6dgQMH0rt3bw1G+fn40PAQ1fk2KSmJly9fyqYvnMr7ekBquz8bHpKfn8+5c+ews7OTTeXi+/pAFqZ+Tk+ePGHTpk3o6enh7u7O6tWrCQ4OJiIiAjMzM02H90kVnIo2Y8YMdZuOr776itGjR1OnTh2uX7/O8uXLC8UEYQAkQZIkSXr27Jnk4eEhTZ8+Xf17OTk56n+fO3eu9PjxY02E9lEolUr1v9+7d0/y9fWVJEmSxowZIwUGBkqRkZFSZmam9OTJE02F+NlISEiQBg4cKK1fv166ePGi9PLlS+nixYtS586dpePHj2s6PI24cuWKJEmSlJ6eLo0dO1b65ZdfJEmSJA8PD2nu3LlSfHy8JEmS9Pz5c02F+NEolUopJydH+vrrr6WZM2dKkiRJ8fHxkre3txQYGCjFx8dL+fn5Go7y08jLy5MkSZJyc3MlSZKkY8eOSUOGDJGOHTsmSdIf59D09HTNBPg3qV7PixcvpPj4eOm3336Ttm7dKvn7+0vR0dFSamqqtHHjRunhw4cajlQz0tPTpaSkJEmSJOn06dNSs2bNpOPHj0u///675O3tXWg+Z+HD1q5dq74nkCRJunTpkhQZGSklJCRImzdvlkaNGiXdvXtXgxFq1ooVK6SnT59KkvTHOS4nJ0dauHChFB0dLV26dEm6dOmSJkP87Dx79kxydnaW1q5dK/3888/q35MkSVIoFJoMTSOUSqWUnZ0tTZgwQTpy5IiUmJgodenSRfLx8VGfY7VdQkKCNGzYMGnt2rXS6dOnpfT0dPU1WC5Uz2I5OTnShAkTpGPHjkkpKSmSk5OTtGDBgteeQz83+fn50ooVKyRJenWv/+jRI0mSJOnRo0eSv7+/tGjRIkmSJGnNmjXqP5Ob58+fS2PGjJFOnTolXb9+XWrcuLEUHh4uvXjxQoqLi5MSExM1HeLfon1lM39TwR5F06ZNQ0dHB09PT+DV3uqcnBwAvLy8tKaSRFUuB6hXCk+cOEGHDh0YNWoUzs7ObNiwgczMTK0ti/0rJEkiLy+PxYsX06JFC1q3bs2WLVvw8vIiJSUFLy+vwpMd/g+dP39e/d6kpaVx584dddN4VYVJYGAgSqVSq1YWCvYwMjQ0ZMiQIYSGhnL27FlKly7NqFGjSE1NxcDAQCsrEt+k2qIXHx/P9OnTmTBhAgAdO3Zk8+bNREZGqlfHihYtqslQ/xLp//dUiIuLw8XFhWXLlnHs2DEaNGiAqakpoaGhPH36lG+++UYW229UpP9fjCxJEnv27GHOnDnEx8fTuHFjfHx8GDlyJC9evMDb27tQfM7Ch+Xn5/Ps2TMaNGhATk4Ofn5+TJkyhf3799OzZ0+cnZ2pU6cOL1680HSon5zqu3D9+nVCQ0OBV/eJubm56Ovrk5iYiKmpKY6Ojjg6Omow0s9DQEAAjx8/BnhteMiXX37JoUOHCA8PB5BV43y59oAsSPU9Kjg8ZN26daxatYqdO3dqOLpPpzD3gVRN0VTZsGED27Zt4+HDh9jY2NCmTRtu3bpFQEAAo0aNwsbGRoPRfloFt13m5eVRrlw5MjIyCAgIYO3atdy/f5+4uDjKli2LpaWlBiP9+7T/yeYDCvYl2b59O3fv3mXChAkYGBjg5eUFgJGRkYaj/G8V7GGkuhFUKBRMnToVHR0drl69yqRJkxg5ciSlS5fWdLgaoUoOwKv+HXXr1uXRo0f4+/szZswYatSogVKppEmTJlqTSPyrDhw4gJGREfb29mzYsIHr168TGBjI+fPn2bp1K/CqgfCkSZPQ1dUtFHt0/4o3exitXLkSBwcHAgMD8fT0JCoqCmtra6ZPn06JEiU0He4noephNGPGDJo3b86gQYMICQmhdOnSDBw4kF27dqmT7oWBjo4OWVlZzJs3jxEjRvDVV18REhLC77//Tr9+/bCxsZFV80b4Y4EhMzOT7OxsmjdvjqOjI4GBgeTm5mJpaUn79u0xMzOT1YOfNtPT06NevXrMnDmT6dOn8/DhQzZv3kxAQADdu3fn/v37jB07Fnt7e02HqjFjx47l0aNHREZGAq+SHg8ePNDq/pf/hBge8jq59oBUEcNDXldY+0AqlUrGjRvH3bt3GTJkCPDqu65UKgkLC+Pp06c8ffoUW1tbBgwYoOFoPy3VdzwjI4OnT59iYGCAoaEh33//PT179kRPT4/IyMhCu8Am+55GCQkJ6r2Gurq61KlThxYtWrBkyRLMzc2ZNWuWpkP8z0mShIeHBzVr1qRx48bcu3cPhUJBy5YtuXz5MlZWVjg4OGg6TI1QfeETExMJCgqiVatWWFpaUqlSJS5fvkxWVhYbNmxg6dKln+XJ/GNKS0tj7ty52Nra0rRpU3777TdiY2OpV68eFSpUwMPDg969ezNw4EBNh/pRJCYm4uXlRbNmzcjMzOTu3bt4e3tz9epVFi9ezL59+zA0NNT6KqOCvW0uX77Mhg0bWLFiBfCqCm3lypVs2rSJzMxMzM3NNRnqn5IkidjYWAwNDSlRogSSJDF79mxatWrF3r17GTVqFCdPnqRXr15YW1trTRL070hISMDV1ZXy5cvToEEDatSoQWRkJMeOHUNXV5dly5bJrg+JHMTGxmJkZIS+vj7Fixfn0qVL+Pr6Mm/ePGrWrKnp8DQqJyeH8PBwLl68iJmZGY6Ojmzbto0RI0bQqlUrTYencQWvEefOnWPGjBksXryYjIwMZs6cSa9evfjll1/w9/eXXbW2XHtAqo6JhIQEFi9eTL169ahbty62trZcvHiRuLg4QkND8fHxkc2kwcLYB1KSJKZNm4YkSVSvXp3s7Gy6detGxYoVSU5OZsWKFeTk5Kh7v8rp+63q05WUlMSUKVN4+fIlgwcPxtjYmPPnz2NsbExMTAweHh7Y2dlpOtx/RNZJo/z8fBYsWEDjxo354osvmDVrFiYmJjg4ONC1a1d0dXULXenY+xS8iCcmJjJ8+HDGjBnDvn376Nq1K1u2bGH58uWyKiF8k/T/m5YlJCTg4eFB7dq1SU5Oplq1ajRt2pS4uDh27drF1KlTZdUAF/44GT579oxVq1ZRunRpHB0diY2N5fbt29jb22NnZ4eJiYnWbmkMCwvjxYsXtGnThmXLlqFUKomLi2PBggWUKlUKExMTTYf40anOI2lpaaSnp5Oenk54eDitW7emQYMGHD9+nJ07d7Js2TKMjY01He4HqVbLLCwsuH//Po0bN6Zu3brcu3ePkJAQJk6cSLVq1fD29iYwMFA2lZdKpZIdO3bQr18/srKymDhxIiNGjOD333/n1KlTdO3aFUdHR549e0aJEiUoX768pkMWPpKEhASCg4MxNjYmPDwcV1dXWrRooemwPinVfQFAbm4uBgYGPH/+nIiICJo1a8aWLVuwtramSpUqspsM9C5ieMjbrl69Sp06dcjIyMDT05OvvvqKL7/8Ek9PT8zMzNSV/YVhoeXfEMND/riXVjW3/vXXX9mwYQPffvstrVq1Ug9hysjI+CyrUeLj44mMjGTQoEHcvHmTI0eOkJeXR58+fbCxsSEzM5PMzEz09PS05vn571Alzlq3bk3RokXZsmULnTp1olKlSlhZWaFQKAp1xbrskkaqL6zqwhYaGkrRokUJDQ1l/PjxbN68mezsbGbMmKE120xUr1mSJO7evYulpSW//fYbT548wcLCgsaNGzN27FgWL15MmTJlNB2uxqiOiU2bNlG2bFmcnJyYOHEiWVlZ1K1bl969e1O2bFnZbcNQHT8ZGRnk5eWRm5vLqlWrqFixIvb29ty7d4+nT58ycuRIrethVPDifuvWLR4/fkxYWBheXl6cOHGCqKgopk6dKoub34Irhd999x1NmjShTp06PHjwgKysLJ48eUJycjIzZsz47FdRlEolXl5eWFlZ4eLiws2bN7l58ybR0dHY2tqSnJxMSkoK8fHxTJ06lerVq2s65E/G39+fp0+fsnjxYqKjo7l48SI9evRg2bJlmJiYcP36ddq3b8+wYcM0HarwkWVmZhIeHs7z589xcHCgfv36mg7pk1JdA+CP819SUhKenp507doVZ2dnzQb4mUpMTGTy5Mm0adOG//3vf9SqVYuYmBi8vb3x8PCQVeLx/PnzGBgYULt2beLi4hgxYgTdu3dn/PjxAEyaNAlzc3Pmzp2Ljo6OVlazSpJEbm4uw4cPx9bWFh8fHxISEli5ciWWlpb07dsXS0tL2VRpx8fHs2zZMl6+fEmfPn2Ii4vjyJEjDBo0CCcnp0L1PkRHR3P8+HGUSiU9e/aUZeFBwYWFgwcP4urqyqlTpyhRogSnT59mw4YNdOnSRSuuF7JKGhWsJAkODsbOzo7OnTsTFRXF3bt3adSoEfPnz2fhwoVaUy2hes1KpRIXFxcUCgWVKlXC2dmZ4sWLs2PHDk6ePMnYsWNp06aNpsP95FTN3MqUKYOBgQHjxo3j5MmTxMfHc/bsWRYsWMCqVat4+vQp06ZNe20kqJzExcUxY8YMSpcuTfHixalfvz5RUVEUL16c5s2bU7VqVYoUKaLpMP8zqkRRfHw8mzZtwsTEBCcnJ8zMzNixYwf29vZs27YNf39/WV0k8/LycHd3p169egwaNAiANWvWULNmTYyNjbG2ti4U586xY8cC8P3336t/LyEhgQMHDlChQgXatm1LYmIiBgYGshn3qxIVFcWxY8fIzMzk22+/5c6dO1y+fJnx48fz4MEDVq9ejY+Pj2wqrwR5UlUV5efns3TpUjIyMmjRogWPHj3CwsKCr776Cnj9gUHuJEkiPz8fDw8PqlatSseOHQkICEBfX5+OHTtiZmYmqwqjAwcOULFiRb744gvWr1+PtbU1tra2LFiwgLZt2zJ48GDgVZKtMFcfvM+bC29HjhzB1dWVtWvX0qhRI2JjY9mwYQPjx4/XmkX6P5Oamoqrqys9evTAysqKLVu20KdPH5RKJbt378bf379QVK0XPO9du3aNiIgIzM3NGTlypHoAipxkZmayadMmxowZQ0BAAMeOHSMkJAQzMzMuXLiAjY2NVtwzFZ505r+k6lL//PlzZsyYAcDixYtZt24d1atXZ/PmzcyePZvp06cXioeev0pHR4f8/Hw8PT1p1KgRLi4u/P7774SGhnLr1i0GDRrEnDlzZJswmjFjBlZWVrRq1YqXL1+SkZGBk5MTzZs3R6lUcuXKFc6cOcOECRNkmzBSKBQEBAQwduxYRowYwdGjR8nKymLkyJFkZ2dTqVIlrUoYwasG6CkpKUyaNInmzZvz7NkzgoKCyM3NRUdHh/PnzzNv3jytTxgplUq2b9/O8uXLefz4Mfr6+pQvX55SpUqpm5dmZmZSuXJlGjZsWCjOnbm5uTRt2hRzc3MuXrwIvLoBKl26NFZWVhw+fBhJkihTpoysEkaqz7NChQqcOXOG33//HV1dXTp37kxqaiqTJ0/Gx8cHV1dXrbj5EYQPUVUUT5kyBVNTU5o3b86ZM2ewtLQUCaM3iOEhb0tLS+PYsWOcOHGC6OhozM3NuX79Ok+ePMHLy4vQ0FB27NgBoJUJIzE85A8Fm3s/fPgQU1NTunfvTuPGjRk2bBhbtmyhbdu2+Pn5FYqEEfDaec/e3p7OnTvTr18/WSaMAHW7BtW00c6dO9OxY0eysrKoX7++1twzyeLTVZUEpqSkcPLkSf73v/8xfvx4vvrqK7799ltMTU35+eefP9s9pP/E0aNHMTc3x87OjhIlSlCzZk1atmzJunXraNq0KadPn+bJkyfMnz+fL774QtPhasS4ceMwMzNj2rRpwKtx8ZmZmcTHx7NkyRKKFCnCunXr8PX1lV2j14I9sFSjyG/evElUVBT+/v788ssvVKxYEVdXV625aZYkCR8fH5o1a0a7du2Ii4vD3t6e//3vf2zcuJFWrVpx8+ZNZsyYQX5+vtZfHJVKJR4eHpQtW5a8vDx1jyJLS0vu3LmDvr4+2dnZREVF8fXXX2s42r/OwMCAPn36YG5uzpYtW1AoFOpeJCYmJrJMDqtWhF++fImhoSFLlizhwoULHDhwgDZt2qgfcpycnGQ3AECQlzVr1hAfH0/ZsmWpW7cu2dnZ6q1ERYsWZdWqVbRp04YiRYpozbXv31AlBwoOD6lduzZdu3bl8uXL3L9/n4iICJYuXarpUD+Z/Px8LCwsmD59OqtWreLChQs4OjpiamrKxYsXUSgULF68uNAkCP4J1UAZb29v9fCQhQsX4u3tjbe3N76+vurhIdrszT6Qenp6WFtbc/78eRo0aMDLly8xNTUlOzu7UPazUiXO5fQcqVQq+f777xk/fjyZmZmkpqZiY2PDkCFD2LNnD35+fri7u6sXn7WpbYd2P/Xw6oBWJYymTJmCtbU1+/btw97enlatWvHDDz8wYcIEunTpgoWFhabD/U8sWrSI27dvU61aNcLCwliwYAG1a9fm5MmTtGnThgYNGvDrr7/i4uKidRUif1V8fDw2NjYULVqU5ORkwsLCKFmyJEOHDmX9+vWsW7eOefPmkZWVpVVf+L+iYCPLu3fv8sUXX9CoUSOCgoL4+uuvMTIy4sSJEzg7O2vVTfPTp0/ZvXs3iYmJADRo0IB79+7RtWtXtm/fTnJyMkFBQTg5OVGsWDENR/vxLVq0iAoVKqgfmPbs2YNCocDAwEA93eP27dv4+fkVulUUY2NjOnbsCEBISAglSpTg2bNn7Ny5k+nTp6v7mMiBKikcFxeHj48PFhYWVK5cGScnJ3799VdCQ0Pp06cP33zzjaZDFYSPavHixaSkpNCmTRvKlClDrVq1KFGiBIcOHaJDhw7Y2NhgbGyMQqHQdKifBdX9dcHhIUePHqVatWoYGhqSn5/PgQMHWLhwoWySzQV7QOro6DBy5EhWrVqFvr4+9vb25OTkcOvWLVq2bKn195anT5/GyclJPTzEwMCAiRMnsmDBAvbu3fvZD8v4t97XB9LCwoITJ06wc+dOdR/IwvpeaNMzwF+hammimgq3YcMGsrKyGDBgAJUqVaJNmzYEBAQQEBCAi4uLZoP9CLS6p5HqC5uTk8P48eNp3Lgxw4cPJyIigsDAQKZMmULbtm3V+221waxZszA0NGTGjBmkpqaybNky+vfvT8mSJbl8+TL+/v4YGRkxadIk2rZtq+lwNerWrVucOHGCyMhIjIyM2LRpEwC7du3iwYMHuLu7azZADSrYyLJu3bqYm5tz+/ZtTp48SWZmJuPGjdOq5sCqc8XatWtJSkrCwsKCMmXKYGJiQmhoKHZ2dpw7dw5fX9/PvsnzfyUgIIBGjRqhq6vL//3f/3Hr1i2aNm1KZmYm/fr1o06dOoU+qZqdnc3hw4dZv349SqWSFStWUKlSJU2H9cllZWXh7u7ON998g46ODm5ubuotzfv27aNbt26y2qonyM+hQ4eIjIxk8eLF6t9TKBQEBwdz7949cnJy+P333xk5cqQst/O/ixge8m5y6wGpIoaHvE1b+kAKf0zcjYuLY+vWrRQtWpT4+HjWr1+Pubk5ffv25dq1a5w/f54RI0YUusXUv0I7MiXvoLqYJSYmEh8fj62tLfv376dnz5507NgRhULBihUraNq0aaHN8L7p/PnzHDlyBH9/fwB++uknDh06RF5eHgcOHODs2bOYm5tjaWlJjRo1NBytZhRMEFavXh19fX2eP3+OQqFAoVBw+vRpwsPDmT59uoYj1QxVI8vFixfTokULnJycCAwMxNDQkLZt2+Lt7U1+fn6hLKN9H9VqKUDlypU5ffo0bdu2VW9R8PX15f79+wwaNIiyZctqONpPx9LSkoCAAKpXr46VlRV+fn7o6Ojg6+tLUlISAKamphqO8t8xNjamffv2KJVKHBwcZJMwkiSJ2NhYDA0NKVGiBAYGBhQrVoyUlBT27t2Ln58fJ0+epGbNmgwdOlR2q4mC/OTm5qrvi/Lz89HR0VGPvm7cuDEWFhYUK1aML774Qta9jN41PKRixYrEx8fj7u6Ov78/q1atIi4uDlNTU9kljAr2gCxevDjfffcdNWvWZOTIkWzbtk0re0DC+4eHVK5cGSsrK06fPs3OnTvx9/fX6oSRUqkkODiY5ORkevXqhY2NzWt9IHV0dNR9ILW9J6Y2kSQJDw8PzM3N6datG1u2bKFbt25UrFiR0aNHs2LFCpYvX861a9cICgrSyoQRaHHSSLWH1N3dnR49euDp6cnSpUuZPn06vr6+dO/endatWxf6h56CHBwccHd3Z//+/Rw+fJikpCT27t2LtbU1enp6XLhwgVatWmk6TI1Zs2YN9vb21K9fX72PukqVKnTu3JlTp04xatQoMjIyWLZsmWweHlUKjhZWNbK8fv06AQEBfPfdd5w8eZL8/Hyt24M/cOBAypUrR7NmzejZsyft2rXj+fPn5OXlUb58eS5evEjx4sVxcnLSdKifjOpYGDRoEO3ataNYsWLqm53w8HBiYmLU49a14cHJ2NiYHj16aMVr+StUq2UWFhbcv3+fxo0bU7duXapWrcqyZcuYOHEiRYoU4dSpU/Tv318274sgb2XLliU8PFz9oFuweW16ejqdO3dW/1qu34k3h4dERkaqh4c8fvyY06dPq4eH+Pn5yaY/nBx7QL6p4PCQCRMmcPjwYYKCgpgyZYpshodoax9I4dV03Tp16jBo0CBu3rzJkSNH2Lt3L3369MHGxgY3NzcyMzPR09PD0tJS0+F+NFqXNCp48o6IiEBPT0/dq2jKlCnMmzePOXPmEBAQoFUJIwAjIyM6duxIfn4+K1euxMXFBWtra65cucKNGzcYMGCApkPUqLy8PA4ePIihoSEODg7qxJFqm1VWVhadOnWSXcJIro0sk5OTqVChAg8fPmTdunXcuHGDJk2akJOTQ6lSpWjXrh3GxsbY29trOtSPTpIkNm/ezKBBg9DX11evGpqYmKgbwf7vf/8jKiqKJUuWUL58eU2H/J/S1hv5NymVSry8vKhevTouLi7cvHmTmzdv8uuvv2Jra0unTp04e/YsYWFhzJkzR2tXywThTTVr1sTOzo6ff/6ZFi1aYGdnx7Vr1zh27JhsK4/fJIaHvE2uPSBBDA95kzb3gZS7MmXKqLcX1qhRA4VCwfHjx9m3bx89e/bExsZGq3ZgvI9W9TRSrZA/f/6ctLQ0cnNzOXr0KLm5udSvX59GjRoBkJKSotUjHhUKBT/++COXL1+mUqVKnDt3jiFDhtC0aVNNh6Zx27Zt4/Lly/Tv3x8HBweMjIzUf5abmyu7UmpVBUnBRpbJyclUq1aNpk2bEhcXx65du5g6dSpVq1bVdLj/ufv37xMVFUVqaio5OTlUq1aN9evX8/z5c+bNm0ezZs00HeJHp1QqmTp1KlevXuXnn39W//6lS5cICgpiw4YNHDhwACsrK8qVK6fVK4XabuzYsQB8//336t9LSEjgwIEDVKhQgbZt25KYmIiBgYHoYSTIztOnT/nxxx85evQo9evX59y5c0yaNEkW14E/Ex8fz4YNGyhatCj9+/cnLCyM06dP4+7uzvr16ylRogTTpk0r9H3u/gm59YBUiYuLo3379rRs2ZKePXvSoEEDJk+ezIMHD14bHuLn5yeL4SFy6AMpdwW3Jl+7do2IiAjMzc0ZOXKk1idFQYuSRqoP8unTp3h5eWFgYECVKlWwsLAgPz+ftLQ02rVrR7169TQd6ieRnZ3N/v37CQoKYu7cubLclqbag1qlShXKli1Lw4YNKV26NJs3b+bp06e0bdsWR0dHWU1KepMcG1m+2fg+JiaGc+fOkZyczIABA3j+/Dn79+9nyJAhlClTRoORfnxKpZLp06dTvHhxrl69qq4ievz4MQsXLqRPnz6y2pqnzXJzcwkJCSE6Opp+/fpRr1499XVz//79HD9+nEWLFsn6fCgIkiTx4MEDcnNz0dPT08rFkn9KDA95naoHpIeHB1WrVqVDhw6v9YBs3ry51vWAVBHDQ962fft29u/fT/Xq1TEzM8Pd3V3dB7Jx48a0bdtW1v3QtNGNGzcoW7asVheiFKQVabGkpCQsLS3JyclhwYIF9OrViy5durBv3z7u3LlD165dOX/+vKy2HRkbG+Ps7EyLFi0oW7asLE9U6enpJCcnc/78eczMzDh9+jR37tzB1taWY8eOcfjwYZYuXYqjo6OmQ/2k5NzI8l19rWrVqoWuri4nTpzghx9+YMyYMbi6uqq3uWozT09PSpYsibu7OwMGDCA1NZXy5ctjbm7OlClTqFKlilZNl5QzAwMD+vTpg7m5OVu2bEGhUNCkSRMATExMZNN/RBA+REdHB1tbW02H8dkQw0PeJtcekCpieMjr5NYHUvijUOWLL77QdCifVKF/Eti2bRsvXryga9euWFpaolAoqFixIgA9e/Zk1KhRGBkZMXToUA1H+ukZGhqqT9hyO1F5e3szffp05s+fT1hYGAqFgqFDh5Kenk5qaiq1a9fm+vXrsskOq8i9keX7+lrVqFEDpVLJuXPn0NfXl0XC6MmTJ7Rr1462bdsCUL58edLT0wEoXrw4sbGxZGdna810SeHVYkLHjh0BCAkJoUSJEjx79oydO3cyffp0UWUkCIKaGB7yNrn2gFQRw0NekXsfSLmT2zO1SqFPGlWsWJGoqCiOHj1Khw4daN26NWFhYejr65OamkpmZqZWloYKH5aTk8PQoUPZunUr7dq1Y+/evWzcuJF+/fphb28vi+bG7yL3Rpbjxo1j27ZtBAcHI0nSa32tatWqRdWqVdU3x9qufPnyr93I6Onpcfv2bZo1a8ZPP/3Enj17WLBggUgaaRlV4khXVxd3d3eUSiUrVqyQzUOfIAh/jRge8jpVhU3BHpBHjx6lWrVqGBoakp+fz4EDB1i4cKF68VqbiOEhrxTsA/nNN98AryrOCvaB7Nu3L1ZWVvTt21f0gRS0hlb0NIqOjiYsLIyqVatSpkwZ4uPjiYyMxNDQkEmTJmllAzrhz/n4+HD16lV27NhBQkICoaGhvHz5km+//RYrKytNh/fJybGRpehr9bY3t5upfr127VqsrKywtrZm5cqVeHt7i20aWiw7O5uIiAgcHBzE5ywIwjuJ4SF/kGMPyDfJfXiI6AMpyFmhrDQaNWoUSqWS6tWrU7duXapUqUK9evV4+PAhSqWSTp064ezsrLUN6IS3SZLE6tWrqVy5MqVKlaJ+/frMmjULf39/hg8fzsaNG+nWrRsRERGy7c9SpkwZevfuzYkTJ5gwYcJrjSzr16/PgwcPALQmYQSir9Wb3rXdQPV9sLW1ZdasWdjZ2eHl5SUSCVrO2NiYHj16yLbMWhCE171rkeXrr78mPz+fyMhIdHR0Xltk0ebkiIqce0CqFFxosrW1JTs7Wz08pEGDBtSoUYP9+/dTpUoVDUf68Yk+kIKcFbqjOj8/n4YNGxIaGkpmZibFihVj9erVlCxZklu3bpGQkEBubi5Dhw4VN8MycuHCBUJDQ8nPz6do0aKUK1eO9PR0unTpwsWLF+nevTthYWGMGjVKdidzuTayFH2t3va+7Qbw6gFAX1+fOXPmiHJqmRDXSEEQVMQiy+vk3gMSxPCQgkQfSEHuCuX2NIVCwdGjRzl+/DgjRoygatWqPH/+nDt37nDz5k2aNWumlfuJhbdJkoSbmxseHh5cuHCBkydPqvfYP3jwAIVCwalTp7h79y4+Pj6yOy7edcGHV6NzT506xa+//qq1jSzd3d15+PAhW7duJS4ujr1792JgYEC/fv0oXbq0psPTmA9tN0hOTtbKG19BEATh/VSLLBkZGe9cZLly5QrXr19n7NixsrmP+u677zAzM8PPzw94NVynVq1a6h6QS5cu5enTp3h4eGjtWPmVK1fy5MkTevXq9dZCU0xMDOfOnaNbt26ULFlSg1FqxrRp06hRowbDhg17rQ+kHNtfCPJQKJNGAC9fviQ8PJxff/2V/v37q0cHC/KSkpKCq6srGzZsACA4OJgbN27Qvn17mjVrJqteNe/yoQv+rVu3OHLkCJ06ddLasmK597USPZ0EQRCEPyMWWV4nxx6Q7/OhhSaFQqH1w0NEH0hBeKXQJo3gVSPPQ4cOcfDgQUaPHk39+vU1HZLwiT158oSpU6eyZcsWDAwM0NHRITg4mGvXrtGmTRsaN26s9Rf0PyOXRpbv6msF4O/vz4ULF9i4cSOxsbFERETQv39/WWxLS0tLY+rUqTx48AAzMzPs7e1f225gZmYmq+0GgiAIwrvJfZHlTbdu3eLEiRNERka+1gNy165dPHjwAHd3d80G+BGIhabXva9aH+Do0aOv9YHU1sVXQVAp1M1djI2Nad++Pfr6+qIHh8ysWLGCevXqUa9ePUxNTYmLi8PCwgILCwsGDBgAwNmzZ2VXgSbnRpair9XrRE8nQRAE4V3E8JB3k2sPSBXR1+p1og+kIPyhUFcaqUiSJBp6yohCoWD37t1cvHiRFi1asGXLFoyMjDA0NMTc3Bx9fX169OhB3bp1sbCw0HS4n5QcK0tEX6t3E9sNBEEQhHc5f/48Xl5e71xkmT17NpUqVSIsLAw9PT3ZJI3k3AMSRF+r9xF9IAXhFa1IGgnyk52dzZEjR9i+fTtGRkasWrWKtLQ0YmJiuH//Pm3btpXd3mK5XvBFX6v3E9sNBEEQBBWxyPJ+cu8BKRaaxPY8QfgQkTQSCq2cnBzCwsIIDg5mxowZsu9pJdcLvuhr9Yro6SQIgiB8iFhk+TC59IB8H7kvNMmxWl8Q/ip51JwKWsnIyAhnZ2cMDQ354YcfAGSdOFq8eDE+Pj4MGDCAHTt20KdPH0JDQ9m4caNWXvBFX6vXiZ5OgiAIwoe8fPmSFy9eoFAoMDAwYMCAAQQHBxMREUFubq5sFllA3j0gQfS1epPoAykIH6b9ZwFBqxkaGtKhQwcMDAxk14hOzhd8hUJByZIl2bNnD4mJiaSlpeHp6flWX6tOnTphamqq6XA/qoLbDSZPnvzO7QZff/01d+/eJT4+XlbbDQRBEASxyPIucm/6LBaaXpeTk8PQoUPZunUr7dq1Y+/evWzcuJF+/fphb2+Pvb29pkMUBI0S29MErSDHZuhyb2Qp+lq9IrYbCIIgCO8jhoe8Ta49IEH0tfoQuW/PE4QP0b4nSUGW5JQwEpUlrxgbG9O+fXtevnxJcHAwMTEx1K9fn3Llymk6tE9KbDcQBEEQ3sfQ0JBevXpRpEgRtm/fTpEiRd5aZKlUqZJsEkYg76qS1NRUUlJSKFWqFB07diQ1NZXw8PDXFppat26t6TA/OjlX6wvCPyG+BYJQyIgL/h/k3NdKbDcQBEEQ/gqxyPI6ufWALEgsNL0itucJwt8jvgWCUMiIC/7r5NjXSvR0EgRBEP4OOS+yiKoSsdCkIqr1BeGf0c4zoyBoIXHBfz8TExM6d+4sm22KYruBIAiC8HfJcZEFRFWJWGj6g6jWF4R/RvvOjIKghcQF/8/JJWGkIrYbCIIgCH+XnBZZRFXJK2Kh6Q+iWl8Q/hmRNBKEQkBc8IV3kfN2A0EQBOGfkUPCCERVSUFyX2gS1fqC8O+IpJEgFBJyv+AL7ybX7QaCIAiC8CGiquR1cl1oEtX6gvDviaSRIBQicr3gCx8mp+0GgiAIgvAhoqrk/eS40CSq9QXh3xNJI0EoZOR4wRf+nEgYCYIgCHInqkr+nBwXmkS1viD8OyJpJAiFkBwv+IIgCIIgCB8iqkr+GjneP4pqfUH450TSSBAKKTle8AVBEARBED5EVJUI7yOq9QXhn9GRJEnSdBCCIAiCIAiCIAj/FYVCwU8//URERAQjRowQVSWCmiRJYvFVEP4GUWkkCIIgCIIgCIJWEVUlwvuIhJEg/D2i0kgQBEEQBEEQBK0kqkoEQRD+HV1NByAIgiAIgiAIgvAxiISRIAjCvyOSRoIgCIIgCIIgCIIgCMJbRNJIEARBEARBEARBEARBeItIGgmCIAiCIAiCIAiCIAhvEUkjQRAEQRAEQRAEQRAE4S0iaSQIgiAIwkcRGxtL7dq16dGjBz169KBbt260bt2awMBATYf2UcTGxtK6desP/kx0dDRLliwBIDIykuXLl//r/69CocDHx4euXbvSrVs3Bg0aRHR09N/+ex4/fsz06dP/dTyCIAiCIGgPfU0HIAiCIAiC9rKysiIsLEz964SEBDp06ECXLl2oUqWKBiPTjLt37/Ls2TMA2rRpQ5s2bf7137lp0yaUSiUHDhxAR0eHixcvMnbsWH755RcMDAz+8t8TFxfH48eP/3U8giAIgiBoD5E0EgRBEAThk0lKSkKSJMzMzABYu3Yt4eHh5Ofn07x5c9zc3NDR0WHTpk0EBwejp6eHk5MTbm5uJCcnM2PGDOLi4tDX12fy5Mm0bNmSFStWEBcXx8OHD0lJSeG7777j9OnTXL16lRo1auDv78+5c+dYvXo1BgYG6oogU1NTjh49qo6jVKlSHD9+nMDAQPLy8rC2tmbu3LkUL16c1q1b0717d06ePMnLly9ZtGgRtWvXJiYmhhkzZgBQo0YN9eu8ffs2c+fO5cWLF6SkpDBq1Ci6dOlCYGAgL168YNWqVZQuXZpz586xcOFCrly5wrx588jJyaF48eLMmTOHihUrMnjwYOzt7bl48SIpKSl4eXnRqlWr197T5ORkcnNzyc3NxdDQkHr16jF//nyUSiVubm40aNCAvn37AjB48GBcXV25dOkS+/btQ1dXFwcHB+bMmYOvry+xsbH4+Pgwa9asd342T548Ydy4cdja2nL37l1q1aqFo6Mj+/btIz09nZUrV8oyGSgIgiAI2kpsTxMEQRAE4aNJTEykR48edOzYkUaNGhEQEEBQUBBlypTh+PHjXL9+nd27dxMaGkpCQgL79+8nOjqaHTt2sHv3bvbv38+NGze4fv06c+fOpXHjxhw4cIDAwECmT59OcnIy8CpJs3XrVubOnYunpycjR47k4MGDxMTEcOvWLQCuXr2Kj48Pe/bsYfv27ZQoUYK9e/dSvXp1fvzxR1JSUli6dCnr168nNDSU5s2b4+fnp34tFhYW7N69m/79+7NmzRoApk2bhqurK/v27cPa2lr9s7t27WLs2LHs2bOHLVu2sHjxYooWLcrEiRNp3bo13333nfpnFQoFU6ZMwdvbm/3799O/f3+mTJmi/vPc3FxCQkLw9PR853a2IUOGcPXqVZo0acJ3333Hli1bcHR0xMjIiN69e6srvZ48eUJKSgq1a9dmzZo17Nmzh71795Kbm0tCQgJeXl7Url2bWbNmvfezAbh16xYjR44kLCyMS5cu8eTJE0JCQujatSshISH/1aEjCIIgCMJnQFQaCYIgCILw0ai2pymVShYuXMi9e/do1qwZAKdPnyY6OppevXoBkJ2dTbly5UhOTsbJyYkiRYoAr7ZfAZw5cwZfX18AbGxsqFOnDlevXgWgWbNm6OvrU65cOSwtLalatSoApUuXJj09HQA7OzvKli0LQPHixWnSpAkA5cqVIyMjg6tXr/L06VOGDBkCgFKppFixYurX0qJFCwCqVavG4cOHSUlJITExUf16evXqxZ49ewDw8PDgxIkTrFmzhtu3b/PixYv3vkcPHz6kaNGiODg4ANCpUydmzpzJ8+fP3/r/pqWlvfXfW1tbc/DgQa5du8apU6cIDQ1l06ZNhIaG0qhRI7y9vYmNjSUsLIwePXqgp6eHo6Mjffr0oU2bNgwbNozSpUvz8OFD9d/5vs+mXr16lCpVilq1agFQpkyZ197H2NjY975OQRAEQRAKH5E0EgRBEATho9PV1cXd3R1nZ2fWr1/PyJEjyc/PZ+jQoQwbNgyAjIwM9PT02L17Nzo6Our/NiEhARMTEyRJeu3vlCSJ/Px8gNd69+jrv/v25s3+Pnp6eq/9Oj8/n7p167J69WoAcnJyyMrKUv+5kZERgDo2HR2d12Iq+Pe5uLhQtGhRnJyc6Ny5MwcPHnzve6NUKt/6vYKv7c3/75uWLVvGoEGDcHBwwMHBgTFjxtC/f3+ioqLo1KkTzs7O/Pjjj4SHh7N+/XoAvv/+e65cucLx48cZMWLEaxVVqvfiXZ9NamoqhoaGr/3sm++jIAiCIAjaQ2xPEwRBEAThk9DX18fd3Z3vv/+epKQkGjduTFhYGFlZWeTl5TFu3DgOHTpE/fr1+fXXX9W/P3XqVK5fv07jxo3ZvXs38GrS16VLl/jf//73n8VXp04drly5woMHD4BXiZXFixe/9+eLFy9OuXLlOHbsGMBriaGoqCgmTpxI27ZtOX78OPAqEaOnp0deXt5rf4+trS1paWnqiWc//fQT5cqVw8LC4i/FnZCQwMqVK1EoFMCrvlEpKSnY2dkBryqgdu7cSdmyZSldujQpKSl07twZOzs7Jk2aRLNmzbh169Zrsb3vsxEEQRAEQV5EpZEgCIIgCJ9My5YtcXR0ZPny5fj6+nLz5k369u1Lfn4+LVq0oGfPnujo6PD111/Tv39/lEol7dq1o2nTplSpUoWZM2eyd+9eAHx9fbGysvrPYrO0tGT+/Pm4uLigVCopXbo0S5Ys+eB/s2TJEjw9PQkICHgtgTVhwgQGDhyIkZERNWrUoHz58sTGxuLg4EBQUBB+fn7Y2toCYGhoiL+/P3PnzuXly5cUK1YMf3//vxy3t7c3ixYtomPHjpiYmGBgYICrq6u6IXXZsmUpW7YsPXv2BKBEiRL069ePPn36YGJiQuXKlenduzc5OTk8f/4cNzc3lixZ8s7P5smTJ3/zXRUEQRAEoTDTkd6s9RYEQRAEQRC0giRJJCYmMnjwYA4ePPjW1jJBEARBEIQPEdvTBEEQBEEQtNShQ4fo0aMHU6ZMEQkjQRAEQRD+NlFpJAiCIAiCIAiCIAiCILxFVBoJgiAIgiAIgiAIgiAIbxFJI0EQBEEQBEEQBEEQBOEtImkkCIIgCIIgCIIgCIIgvEUkjQRBEARBEARBEARBEIS3iKSRIAiCIAiCIAiCIAiC8BaRNBIEQRAEQRAEQRAEQRDe8v8AKvwOn322VCwAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.set_style('whitegrid')\n", "fig, ax = plt.subplots(figsize=(20,8))\n", "plt.subplots_adjust(bottom=0.2)\n", "\n", "# Plot the Mean Absolute Error of the models\n", "sns.barplot(all_systems.index, all_systems['mae'], palette='tab20b') \n", "ax.set(xlim=[-0.5,16.5], xlabel='Recommendation System', ylabel='Mean Absolute Error')\n", "ax.set_title('Collaborative Filtering and Recommender Systems Evaluation', fontsize=20)\n", "\n", "labels = ['Normal Predictor', 'Baseline Only', 'KNN Basic Cosine', 'KNN Baseline Cosine', 'KNN Means Cosine', \n", " 'KNN Z-Score Cosine', 'Default SVD', 'Default SVD++', 'NMF', 'Slope One', 'Co-Clustering', 'KNN Basic Pearson', \n", " 'KNN Baseline Pearson', 'KNN Means Pearson', 'KNN Z-Score Pearson', 'Tuned SVD', 'Tuned SVD++']\n", "plt.xticks(all_systems.index, labels, rotation=45)\n", "\n", "plt.savefig('data/images/fig11.png', dpi=200, transparent=True)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Recommender Engine:" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [], "source": [ "def svd_recommendation(user_id, n=10):\n", " '''\n", " Returns top item recommendations generated by the Single Value Decomposition model.\n", " '''\n", " unique_ids = df['itemID'].unique()\n", " item_user_id = df.loc[df['userID']==user_id, 'itemID']\n", " items_to_predict = np.setdiff1d(unique_ids, item_user_id)\n", " \n", " engine = SVD(n_factors=10, n_epochs=20, lr_all=0.01, reg_all=0.02)\n", " engine.fit(read_data.build_full_trainset())\n", "\n", " svd_recommendations = []\n", " for i in items_to_predict:\n", " svd_recommendations.append((i, engine.predict(uid=user_id, iid=i).est))\n", "\n", " display(user_data.loc[user_data['user_id']==user_id])\n", " print(f'----------------------------------------\\nTop {n} Recommendations for User #{user_id}:')\n", " \n", " svd_recommendations = pd.DataFrame(svd_recommendations, columns=['item_id', 'predicted_rating'])\n", " svd_recommendations = svd_recommendations.sort_values('predicted_rating', ascending=False).head(n)\n", " svd_recommendations = svd_recommendations.merge(item_data, on='item_id')\n", " \n", " return svd_recommendations" ] }, { "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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
user_idbust_sizerating_countweightrating_averagerented_for_topbody_typecategory_topheightsizeagereview_length_averagereview_month_topreview_season_toprented_for_allcategory_all
5276950148532a42105.00004.9762partypetitedress62.0000427.000033.61904Spring[formal affair, work, everyday, other, party, ...[sheath, dress, gown, romper, skirt, shirtdres...
7699573151732a17113.00005.0000partypetitedress62.0000125.000059.11769Summer[formal affair, work, everyday, party, date][down, dress, sheath, gown, suit, top, jacket,...
8965384960332a17100.00005.0000everydaypetitedress62.0000127.000091.88246Summer[formal affair, work, everyday, other, party, ...[shift, dress, gown, pants, sweater, top]
1526214502932a16115.00004.5000everydaypetitedress62.0000443.000014.18758Summer[work, everyday, vacation, other][dress, romper, maxi, skirt, culottes, jumpsui...
5053048061132a12125.00004.5833partypetitedress62.0000135.000080.00004Fall[party, wedding][sheath, dress, skirt]
\n", "
" ], "text/plain": [ " user_id bust_size rating_count weight rating_average \\\n", "52769 501485 32a 42 105.0000 4.9762 \n", "76995 731517 32a 17 113.0000 5.0000 \n", "89653 849603 32a 17 100.0000 5.0000 \n", "15262 145029 32a 16 115.0000 4.5000 \n", "50530 480611 32a 12 125.0000 4.5833 \n", "\n", " rented_for_top body_type category_top height size age \\\n", "52769 party petite dress 62.0000 4 27.0000 \n", "76995 party petite dress 62.0000 1 25.0000 \n", "89653 everyday petite dress 62.0000 1 27.0000 \n", "15262 everyday petite dress 62.0000 4 43.0000 \n", "50530 party petite dress 62.0000 1 35.0000 \n", "\n", " review_length_average review_month_top review_season_top \\\n", "52769 33.6190 4 Spring \n", "76995 59.1176 9 Summer \n", "89653 91.8824 6 Summer \n", "15262 14.1875 8 Summer \n", "50530 80.0000 4 Fall \n", "\n", " rented_for_all \\\n", "52769 [formal affair, work, everyday, other, party, ... \n", "76995 [formal affair, work, everyday, party, date] \n", "89653 [formal affair, work, everyday, other, party, ... \n", "15262 [work, everyday, vacation, other] \n", "50530 [party, wedding] \n", "\n", " category_all \n", "52769 [sheath, dress, gown, romper, skirt, shirtdres... \n", "76995 [down, dress, sheath, gown, suit, top, jacket,... \n", "89653 [shift, dress, gown, pants, sweater, top] \n", "15262 [dress, romper, maxi, skirt, culottes, jumpsui... \n", "50530 [sheath, dress, skirt] " ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Sample user\n", "sample = user_data.sort_values('rating_count', ascending=False)\n", "sample.loc[((user_data['bust_size']=='32a') & (user_data['height']==62))].head(5)" ] }, { "cell_type": "code", "execution_count": 50, "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", "
user_idbust_sizerating_countweightrating_averagerented_for_topbody_typecategory_topheightsizeagereview_length_averagereview_month_topreview_season_toprented_for_allcategory_all
5053048061132a12125.00004.5833partypetitedress62.0000135.000080.00004Fall[party, wedding][sheath, dress, skirt]
\n", "
" ], "text/plain": [ " user_id bust_size rating_count weight rating_average \\\n", "50530 480611 32a 12 125.0000 4.5833 \n", "\n", " rented_for_top body_type category_top height size age \\\n", "50530 party petite dress 62.0000 1 35.0000 \n", "\n", " review_length_average review_month_top review_season_top \\\n", "50530 80.0000 4 Fall \n", "\n", " rented_for_all category_all \n", "50530 [party, wedding] [sheath, dress, skirt] " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "----------------------------------------\n", "Top 10 Recommendations for User #480611:\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", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
item_idpredicted_ratingfit_smallfitfit_largeuser_countbust_size_topweight_meanweight_medianrating_averagerented_for_toprented_for_allbody_type_topcategory_topheight_meanheight_mediansize_meansize_medianage_meanage_medianreview_length_averagereview_month_topreview_season_top
012152814.89614.000062.00005.00007134d131.7606130.00004.9577wedding[formal affair, party, other, wedding]athleticgown64.943765.000010.04238.000032.859232.000055.450710Fall
114513904.89040.000027.00002.00002934b136.5862135.00004.9655wedding[formal affair, work, everyday, party, wedding]hourglassmaxi66.206966.000013.793112.000034.827635.000062.72417Summer
225469114.88971.000028.00000.00002934c130.7931130.00004.9310everyday[work, everyday, party, wedding, date, vacation]hourglasspant64.827665.00009.44838.000035.069035.000035.793110Summer
311869234.86409.000091.00003.000010334c137.4757135.00004.9223party[formal affair, other, party, wedding, date, v...hourglassdress65.330165.000013.534014.000030.330130.000065.699011Winter
415470514.86061.000044.00003.00004834c137.2917135.00004.9167wedding[formal affair, party, other, wedding]hourglassgown65.270865.000011.687512.000034.083332.000055.895811Spring
53710224.85811.000053.00008.00006234b138.8065137.50004.9194formal affair[formal affair, other, party, wedding, date]athleticdress65.064565.000012.661312.000036.241933.500055.709712Winter
612002234.85743.000037.00002.00004234c142.9286140.00004.9048wedding[formal affair, work, everyday, other, party, ...hourglasssheath65.785766.000015.904816.000043.166741.500051.547611Winter
73863144.85590.000028.00009.00003738d171.7568150.00004.9189wedding[formal affair, work, other, party, wedding, d...hourglasssheath65.000065.000033.000032.000039.000039.000055.027011Winter
87403494.85261.000021.00007.00002934b136.2069135.00004.8621wedding[formal affair, work, everyday, other, party, ...hourglassshift65.103465.000012.758612.000035.689735.000041.03455Spring
913288984.85241.000042.00001.00004434b135.7500135.00004.9091formal affair[formal affair, other, wedding]hourglassgown66.045566.00009.61368.000033.818232.000063.272710Winter
\n", "
" ], "text/plain": [ " item_id predicted_rating fit_small fit fit_large user_count \\\n", "0 1215281 4.8961 4.0000 62.0000 5.0000 71 \n", "1 1451390 4.8904 0.0000 27.0000 2.0000 29 \n", "2 2546911 4.8897 1.0000 28.0000 0.0000 29 \n", "3 1186923 4.8640 9.0000 91.0000 3.0000 103 \n", "4 1547051 4.8606 1.0000 44.0000 3.0000 48 \n", "5 371022 4.8581 1.0000 53.0000 8.0000 62 \n", "6 1200223 4.8574 3.0000 37.0000 2.0000 42 \n", "7 386314 4.8559 0.0000 28.0000 9.0000 37 \n", "8 740349 4.8526 1.0000 21.0000 7.0000 29 \n", "9 1328898 4.8524 1.0000 42.0000 1.0000 44 \n", "\n", " bust_size_top weight_mean weight_median rating_average rented_for_top \\\n", "0 34d 131.7606 130.0000 4.9577 wedding \n", "1 34b 136.5862 135.0000 4.9655 wedding \n", "2 34c 130.7931 130.0000 4.9310 everyday \n", "3 34c 137.4757 135.0000 4.9223 party \n", "4 34c 137.2917 135.0000 4.9167 wedding \n", "5 34b 138.8065 137.5000 4.9194 formal affair \n", "6 34c 142.9286 140.0000 4.9048 wedding \n", "7 38d 171.7568 150.0000 4.9189 wedding \n", "8 34b 136.2069 135.0000 4.8621 wedding \n", "9 34b 135.7500 135.0000 4.9091 formal affair \n", "\n", " rented_for_all body_type_top \\\n", "0 [formal affair, party, other, wedding] athletic \n", "1 [formal affair, work, everyday, party, wedding] hourglass \n", "2 [work, everyday, party, wedding, date, vacation] hourglass \n", "3 [formal affair, other, party, wedding, date, v... hourglass \n", "4 [formal affair, party, other, wedding] hourglass \n", "5 [formal affair, other, party, wedding, date] athletic \n", "6 [formal affair, work, everyday, other, party, ... hourglass \n", "7 [formal affair, work, other, party, wedding, d... hourglass \n", "8 [formal affair, work, everyday, other, party, ... hourglass \n", "9 [formal affair, other, wedding] hourglass \n", "\n", " category_top height_mean height_median size_mean size_median age_mean \\\n", "0 gown 64.9437 65.0000 10.0423 8.0000 32.8592 \n", "1 maxi 66.2069 66.0000 13.7931 12.0000 34.8276 \n", "2 pant 64.8276 65.0000 9.4483 8.0000 35.0690 \n", "3 dress 65.3301 65.0000 13.5340 14.0000 30.3301 \n", "4 gown 65.2708 65.0000 11.6875 12.0000 34.0833 \n", "5 dress 65.0645 65.0000 12.6613 12.0000 36.2419 \n", "6 sheath 65.7857 66.0000 15.9048 16.0000 43.1667 \n", "7 sheath 65.0000 65.0000 33.0000 32.0000 39.0000 \n", "8 shift 65.1034 65.0000 12.7586 12.0000 35.6897 \n", "9 gown 66.0455 66.0000 9.6136 8.0000 33.8182 \n", "\n", " age_median review_length_average review_month_top review_season_top \n", "0 32.0000 55.4507 10 Fall \n", "1 35.0000 62.7241 7 Summer \n", "2 35.0000 35.7931 10 Summer \n", "3 30.0000 65.6990 11 Winter \n", "4 32.0000 55.8958 11 Spring \n", "5 33.5000 55.7097 12 Winter \n", "6 41.5000 51.5476 11 Winter \n", "7 39.0000 55.0270 11 Winter \n", "8 35.0000 41.0345 5 Spring \n", "9 32.0000 63.2727 10 Winter " ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "svd_recommendation(480611)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## VI. Further Research\n", "\n", "For further research, the data should be updated with more recent rentals, and more features should be added such as prices for the products as well as product description." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Contact\n", "\n", "Feel free to contact me for any questions and connect with me on [Linkedin](https://www.linkedin.com/in/czarinagluna/)." ] } ], "metadata": { "kernelspec": { "display_name": "Python (learn-env)", "language": "python", "name": "learn-env" }, "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.8.5" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 4 }