{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "59784111", "metadata": {}, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from IPython.core.display import display, HTML\n", "\n", "display(HTML(\"\"))" ] }, { "cell_type": "code", "execution_count": 201, "id": "bd001890", "metadata": {}, "outputs": [], "source": [ "import re, json\n", "import pandas as pd\n", "import numpy as np\n", "import os\n", "\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "%matplotlib inline" ] }, { "cell_type": "code", "execution_count": 202, "id": "9908fbe5", "metadata": {}, "outputs": [], "source": [ "PATH = 'data/'" ] }, { "cell_type": "code", "execution_count": 203, "id": "c6e1f370", "metadata": {}, "outputs": [], "source": [ "AGE_GENDER = 'age_gender_bkts.csv'\n", "COUNTRIY = 'countries.csv'\n", "SESSIONS = 'sessions.csv'\n", "\n", "TRAIN_USERS = 'train_users.csv'\n", "TEST_USERS = 'test_users.csv'\n", "\n", "SAMPLE = 'sample_submission_NDF.csv'" ] }, { "cell_type": "code", "execution_count": 204, "id": "82af5f8a", "metadata": {}, "outputs": [], "source": [ "age_df = pd.read_csv(PATH + AGE_GENDER)\n", "country_df = pd.read_csv(PATH + COUNTRIY)\n", "session_df = pd.read_csv(PATH + SESSIONS)\n", "\n", "train_df = pd.read_csv(PATH + TRAIN_USERS)\n", "test_df = pd.read_csv(PATH + TEST_USERS)\n", "\n", "sample_df = pd.read_csv(PATH + SAMPLE)" ] }, { "cell_type": "code", "execution_count": 205, "id": "d432e9ce", "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", "
iddate_account_createdtimestamp_first_activedate_first_bookinggenderagesignup_methodsignup_flowlanguageaffiliate_channelaffiliate_providerfirst_affiliate_trackedsignup_appfirst_device_typefirst_browsercountry_destination
0gxn3p5htnn2010-06-2820090319043255NaN-unknown-NaNfacebook0endirectdirectuntrackedWebMac DesktopChromeNDF
1820tgsjxq72011-05-2520090523174809NaNMALE38.0facebook0enseogoogleuntrackedWebMac DesktopChromeNDF
24ft3gnwmtx2010-09-28200906092312472010-08-02FEMALE56.0basic3endirectdirectuntrackedWebWindows DesktopIEUS
3bjjt8pjhuk2011-12-05200910310601292012-09-08FEMALE42.0facebook0endirectdirectuntrackedWebMac DesktopFirefoxother
487mebub9p42010-09-14200912080611052010-02-18-unknown-41.0basic0endirectdirectuntrackedWebMac DesktopChromeUS
...................................................
213446zxodksqpep2014-06-3020140630235636NaNMALE32.0basic0ensem-brandgoogleomgWebMac DesktopSafariNDF
213447mhewnxesx92014-06-3020140630235719NaN-unknown-NaNbasic0endirectdirectlinkedWebWindows DesktopChromeNDF
2134486o3arsjbb42014-06-3020140630235754NaN-unknown-32.0basic0endirectdirectuntrackedWebMac DesktopFirefoxNDF
213449jh95kwisub2014-06-3020140630235822NaN-unknown-NaNbasic25enotherothertracked-otheriOSiPhoneMobile SafariNDF
213450nw9fwlyb5f2014-06-3020140630235824NaN-unknown-NaNbasic25endirectdirectuntrackediOSiPhone-unknown-NDF
\n", "

213451 rows × 16 columns

\n", "
" ], "text/plain": [ " id date_account_created timestamp_first_active \\\n", "0 gxn3p5htnn 2010-06-28 20090319043255 \n", "1 820tgsjxq7 2011-05-25 20090523174809 \n", "2 4ft3gnwmtx 2010-09-28 20090609231247 \n", "3 bjjt8pjhuk 2011-12-05 20091031060129 \n", "4 87mebub9p4 2010-09-14 20091208061105 \n", "... ... ... ... \n", "213446 zxodksqpep 2014-06-30 20140630235636 \n", "213447 mhewnxesx9 2014-06-30 20140630235719 \n", "213448 6o3arsjbb4 2014-06-30 20140630235754 \n", "213449 jh95kwisub 2014-06-30 20140630235822 \n", "213450 nw9fwlyb5f 2014-06-30 20140630235824 \n", "\n", " date_first_booking gender age signup_method signup_flow \\\n", "0 NaN -unknown- NaN facebook 0 \n", "1 NaN MALE 38.0 facebook 0 \n", "2 2010-08-02 FEMALE 56.0 basic 3 \n", "3 2012-09-08 FEMALE 42.0 facebook 0 \n", "4 2010-02-18 -unknown- 41.0 basic 0 \n", "... ... ... ... ... ... \n", "213446 NaN MALE 32.0 basic 0 \n", "213447 NaN -unknown- NaN basic 0 \n", "213448 NaN -unknown- 32.0 basic 0 \n", "213449 NaN -unknown- NaN basic 25 \n", "213450 NaN -unknown- NaN basic 25 \n", "\n", " language affiliate_channel affiliate_provider first_affiliate_tracked \\\n", "0 en direct direct untracked \n", "1 en seo google untracked \n", "2 en direct direct untracked \n", "3 en direct direct untracked \n", "4 en direct direct untracked \n", "... ... ... ... ... \n", "213446 en sem-brand google omg \n", "213447 en direct direct linked \n", "213448 en direct direct untracked \n", "213449 en other other tracked-other \n", "213450 en direct direct untracked \n", "\n", " signup_app first_device_type first_browser country_destination \n", "0 Web Mac Desktop Chrome NDF \n", "1 Web Mac Desktop Chrome NDF \n", "2 Web Windows Desktop IE US \n", "3 Web Mac Desktop Firefox other \n", "4 Web Mac Desktop Chrome US \n", "... ... ... ... ... \n", "213446 Web Mac Desktop Safari NDF \n", "213447 Web Windows Desktop Chrome NDF \n", "213448 Web Mac Desktop Firefox NDF \n", "213449 iOS iPhone Mobile Safari NDF \n", "213450 iOS iPhone -unknown- NDF \n", "\n", "[213451 rows x 16 columns]" ] }, "execution_count": 205, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df" ] }, { "cell_type": "markdown", "id": "ad11efd8", "metadata": {}, "source": [ "# 1 데이터 분석" ] }, { "cell_type": "markdown", "id": "a3a4eeb0", "metadata": {}, "source": [ "## 1.1 데이터 값 종류" ] }, { "cell_type": "code", "execution_count": 206, "id": "93327c98", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array(['NDF', 'US', 'other', 'FR', 'CA', 'GB', 'ES', 'IT', 'PT', 'NL',\n", " 'DE', 'AU'], dtype=object)" ] }, "execution_count": 206, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df['country_destination'].unique()" ] }, { "cell_type": "markdown", "id": "d5431757", "metadata": {}, "source": [ "## 1.2 데이터 요약통계" ] }, { "cell_type": "code", "execution_count": 207, "id": "a5448439", "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", "
timestamp_first_activeagesignup_flow
count2.134510e+05125461.000000213451.000000
mean2.013085e+1349.6683353.267387
std9.253717e+09155.6666127.637707
min2.009032e+131.0000000.000000
25%2.012123e+1328.0000000.000000
50%2.013091e+1334.0000000.000000
75%2.014031e+1343.0000000.000000
max2.014063e+132014.00000025.000000
\n", "
" ], "text/plain": [ " timestamp_first_active age signup_flow\n", "count 2.134510e+05 125461.000000 213451.000000\n", "mean 2.013085e+13 49.668335 3.267387\n", "std 9.253717e+09 155.666612 7.637707\n", "min 2.009032e+13 1.000000 0.000000\n", "25% 2.012123e+13 28.000000 0.000000\n", "50% 2.013091e+13 34.000000 0.000000\n", "75% 2.014031e+13 43.000000 0.000000\n", "max 2.014063e+13 2014.000000 25.000000" ] }, "execution_count": 207, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.describe()" ] }, { "cell_type": "code", "execution_count": 208, "id": "4cfe0080", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "49.66833517985669" ] }, "execution_count": 208, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.age.mean() # train_df['age'].mean()" ] }, { "cell_type": "markdown", "id": "28b253b3", "metadata": {}, "source": [ "## 1.3 데이터 값 분석" ] }, { "cell_type": "code", "execution_count": 209, "id": "001b879e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "NDF 124543\n", "US 62376\n", "other 10094\n", "FR 5023\n", "IT 2835\n", "GB 2324\n", "ES 2249\n", "CA 1428\n", "DE 1061\n", "NL 762\n", "AU 539\n", "PT 217\n", "Name: country_destination, dtype: int64" ] }, "execution_count": 209, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df['country_destination'].value_counts()" ] }, { "cell_type": "markdown", "id": "a5d74994", "metadata": {}, "source": [ "## 1.4 null 데이터 확인" ] }, { "cell_type": "code", "execution_count": 210, "id": "803de165", "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", "
iddate_account_createdtimestamp_first_activedate_first_bookinggenderagesignup_methodsignup_flowlanguageaffiliate_channelaffiliate_providerfirst_affiliate_trackedsignup_appfirst_device_typefirst_browsercountry_destination
0FalseFalseFalseTrueFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
1FalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
2FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
3FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
4FalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
...................................................
213446FalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
213447FalseFalseFalseTrueFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
213448FalseFalseFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
213449FalseFalseFalseTrueFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
213450FalseFalseFalseTrueFalseTrueFalseFalseFalseFalseFalseFalseFalseFalseFalseFalse
\n", "

213451 rows × 16 columns

\n", "
" ], "text/plain": [ " id date_account_created timestamp_first_active \\\n", "0 False False False \n", "1 False False False \n", "2 False False False \n", "3 False False False \n", "4 False False False \n", "... ... ... ... \n", "213446 False False False \n", "213447 False False False \n", "213448 False False False \n", "213449 False False False \n", "213450 False False False \n", "\n", " date_first_booking gender age signup_method signup_flow \\\n", "0 True False True False False \n", "1 True False False False False \n", "2 False False False False False \n", "3 False False False False False \n", "4 False False False False False \n", "... ... ... ... ... ... \n", "213446 True False False False False \n", "213447 True False True False False \n", "213448 True False False False False \n", "213449 True False True False False \n", "213450 True False True False False \n", "\n", " language affiliate_channel affiliate_provider \\\n", "0 False False False \n", "1 False False False \n", "2 False False False \n", "3 False False False \n", "4 False False False \n", "... ... ... ... \n", "213446 False False False \n", "213447 False False False \n", "213448 False False False \n", "213449 False False False \n", "213450 False False False \n", "\n", " first_affiliate_tracked signup_app first_device_type first_browser \\\n", "0 False False False False \n", "1 False False False False \n", "2 False False False False \n", "3 False False False False \n", "4 False False False False \n", "... ... ... ... ... \n", "213446 False False False False \n", "213447 False False False False \n", "213448 False False False False \n", "213449 False False False False \n", "213450 False False False False \n", "\n", " country_destination \n", "0 False \n", "1 False \n", "2 False \n", "3 False \n", "4 False \n", "... ... \n", "213446 False \n", "213447 False \n", "213448 False \n", "213449 False \n", "213450 False \n", "\n", "[213451 rows x 16 columns]" ] }, "execution_count": 210, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.isnull(train_df) #null이 아닌지 확인할때는 pd.notnull(obj)" ] }, { "cell_type": "code", "execution_count": 211, "id": "22943e4c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 211, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df['gender'].isna().sum() #gender에서 결측치 개수" ] }, { "cell_type": "code", "execution_count": 212, "id": "ce323670", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "id 0\n", "date_account_created 0\n", "timestamp_first_active 0\n", "date_first_booking 124543\n", "gender 0\n", "age 87990\n", "signup_method 0\n", "signup_flow 0\n", "language 0\n", "affiliate_channel 0\n", "affiliate_provider 0\n", "first_affiliate_tracked 6065\n", "signup_app 0\n", "first_device_type 0\n", "first_browser 0\n", "country_destination 0\n", "dtype: int64" ] }, "execution_count": 212, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.isna().sum()" ] }, { "cell_type": "markdown", "id": "8b34e04a", "metadata": {}, "source": [ "## 1.5 데이터 타입 확인" ] }, { "cell_type": "code", "execution_count": 213, "id": "fcc78116", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "id object\n", "date_account_created object\n", "timestamp_first_active int64\n", "date_first_booking object\n", "gender object\n", "age float64\n", "signup_method object\n", "signup_flow int64\n", "language object\n", "affiliate_channel object\n", "affiliate_provider object\n", "first_affiliate_tracked object\n", "signup_app object\n", "first_device_type object\n", "first_browser object\n", "country_destination object\n", "dtype: object" ] }, "execution_count": 213, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.dtypes" ] }, { "cell_type": "markdown", "id": "a73f92d7", "metadata": {}, "source": [ "## 1.6 컬럼이름" ] }, { "cell_type": "code", "execution_count": 214, "id": "6be93f95", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Index(['id', 'date_account_created', 'timestamp_first_active',\n", " 'date_first_booking', 'gender', 'age', 'signup_method', 'signup_flow',\n", " 'language', 'affiliate_channel', 'affiliate_provider',\n", " 'first_affiliate_tracked', 'signup_app', 'first_device_type',\n", " 'first_browser', 'country_destination'],\n", " dtype='object')" ] }, "execution_count": 214, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#컬럼 이름 확인\n", "train_df.columns" ] }, { "cell_type": "code", "execution_count": 215, "id": "624d62ac", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 NDF\n", "1 NDF\n", "2 US\n", "3 other\n", "4 US\n", " ... \n", "213446 NDF\n", "213447 NDF\n", "213448 NDF\n", "213449 NDF\n", "213450 NDF\n", "Name: country_destination, Length: 213451, dtype: object" ] }, "execution_count": 215, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#컬럼 이름으로 조회\n", "train_df['country_destination']" ] }, { "cell_type": "code", "execution_count": 216, "id": "e46d08b1", "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", "
agegender
0NaN-unknown-
138.0MALE
256.0FEMALE
342.0FEMALE
441.0-unknown-
.........
21344632.0MALE
213447NaN-unknown-
21344832.0-unknown-
213449NaN-unknown-
213450NaN-unknown-
\n", "

213451 rows × 2 columns

\n", "
" ], "text/plain": [ " age gender\n", "0 NaN -unknown-\n", "1 38.0 MALE\n", "2 56.0 FEMALE\n", "3 42.0 FEMALE\n", "4 41.0 -unknown-\n", "... ... ...\n", "213446 32.0 MALE\n", "213447 NaN -unknown-\n", "213448 32.0 -unknown-\n", "213449 NaN -unknown-\n", "213450 NaN -unknown-\n", "\n", "[213451 rows x 2 columns]" ] }, "execution_count": 216, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#여러 컬럼 조회\n", "train_df[['age','gender']]" ] }, { "cell_type": "code", "execution_count": 217, "id": "5f067af5", "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", "
iddate_account_createdtimestamp_first_activedate_first_bookinggenderagesignup_methodsignup_flowlanguageaffiliate_channelaffiliate_providerfirst_affiliate_trackedsignup_appfirst_device_typefirst_browsercountry_destination
24ft3gnwmtx2010-09-28200906092312472010-08-02FEMALE56.0basic3endirectdirectuntrackedWebWindows DesktopIEUS
3bjjt8pjhuk2011-12-05200910310601292012-09-08FEMALE42.0facebook0endirectdirectuntrackedWebMac DesktopFirefoxother
6lsw9q7uk0j2010-01-02201001020125582010-01-05FEMALE46.0basic0enothercraigslistuntrackedWebMac DesktopSafariUS
70d01nltbrs2010-01-03201001031919052010-01-13FEMALE47.0basic0endirectdirectomgWebMac DesktopSafariUS
8a1vcnhxeij2010-01-04201001040042112010-07-29FEMALE50.0basic0enothercraigslistuntrackedWebMac DesktopSafariUS
...................................................
213425l1f71f9vsj2014-06-3020140630232119NaNFEMALE30.0facebook0endirectdirectlinkedWebWindows DesktopChromeNDF
21344004y8115avm2014-06-3020140630234933NaNFEMALE24.0basic25endirectdirectuntrackediOSiPhoneMobile SafariNDF
213441omlc9iku7t2014-06-30201406302351512014-08-13FEMALE34.0basic0endirectdirectlinkedWebMac DesktopChromeES
2134430k26r3mir02014-06-30201406302353402014-07-13FEMALE36.0basic0ensem-brandgooglelinkedWebMac DesktopSafariUS
213445qbxza0xojf2014-06-30201406302355472014-07-02FEMALE23.0basic0ensem-brandgoogleomgWebWindows DesktopIEUS
\n", "

57689 rows × 16 columns

\n", "
" ], "text/plain": [ " id date_account_created timestamp_first_active \\\n", "2 4ft3gnwmtx 2010-09-28 20090609231247 \n", "3 bjjt8pjhuk 2011-12-05 20091031060129 \n", "6 lsw9q7uk0j 2010-01-02 20100102012558 \n", "7 0d01nltbrs 2010-01-03 20100103191905 \n", "8 a1vcnhxeij 2010-01-04 20100104004211 \n", "... ... ... ... \n", "213425 l1f71f9vsj 2014-06-30 20140630232119 \n", "213440 04y8115avm 2014-06-30 20140630234933 \n", "213441 omlc9iku7t 2014-06-30 20140630235151 \n", "213443 0k26r3mir0 2014-06-30 20140630235340 \n", "213445 qbxza0xojf 2014-06-30 20140630235547 \n", "\n", " date_first_booking gender age signup_method signup_flow language \\\n", "2 2010-08-02 FEMALE 56.0 basic 3 en \n", "3 2012-09-08 FEMALE 42.0 facebook 0 en \n", "6 2010-01-05 FEMALE 46.0 basic 0 en \n", "7 2010-01-13 FEMALE 47.0 basic 0 en \n", "8 2010-07-29 FEMALE 50.0 basic 0 en \n", "... ... ... ... ... ... ... \n", "213425 NaN FEMALE 30.0 facebook 0 en \n", "213440 NaN FEMALE 24.0 basic 25 en \n", "213441 2014-08-13 FEMALE 34.0 basic 0 en \n", "213443 2014-07-13 FEMALE 36.0 basic 0 en \n", "213445 2014-07-02 FEMALE 23.0 basic 0 en \n", "\n", " affiliate_channel affiliate_provider first_affiliate_tracked \\\n", "2 direct direct untracked \n", "3 direct direct untracked \n", "6 other craigslist untracked \n", "7 direct direct omg \n", "8 other craigslist untracked \n", "... ... ... ... \n", "213425 direct direct linked \n", "213440 direct direct untracked \n", "213441 direct direct linked \n", "213443 sem-brand google linked \n", "213445 sem-brand google omg \n", "\n", " signup_app first_device_type first_browser country_destination \n", "2 Web Windows Desktop IE US \n", "3 Web Mac Desktop Firefox other \n", "6 Web Mac Desktop Safari US \n", "7 Web Mac Desktop Safari US \n", "8 Web Mac Desktop Safari US \n", "... ... ... ... ... \n", "213425 Web Windows Desktop Chrome NDF \n", "213440 iOS iPhone Mobile Safari NDF \n", "213441 Web Mac Desktop Chrome ES \n", "213443 Web Mac Desktop Safari US \n", "213445 Web Windows Desktop IE US \n", "\n", "[57689 rows x 16 columns]" ] }, "execution_count": 217, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#컬럼 조건 검색\n", "train_df[(train_df['age']>10)&(train_df['gender']=='FEMALE')] " ] }, { "cell_type": "markdown", "id": "57da870e", "metadata": {}, "source": [ "## 1.7 인덱싱" ] }, { "cell_type": "code", "execution_count": 218, "id": "a20fd579", "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", "
iddate_account_createdtimestamp_first_activedate_first_bookinggenderagesignup_methodsignup_flowlanguageaffiliate_channelaffiliate_providerfirst_affiliate_trackedsignup_appfirst_device_typefirst_browsercountry_destination
0gxn3p5htnn2010-06-2820090319043255NaN-unknown-NaNfacebook0endirectdirectuntrackedWebMac DesktopChromeNDF
1820tgsjxq72011-05-2520090523174809NaNMALE38.0facebook0enseogoogleuntrackedWebMac DesktopChromeNDF
24ft3gnwmtx2010-09-28200906092312472010-08-02FEMALE56.0basic3endirectdirectuntrackedWebWindows DesktopIEUS
3bjjt8pjhuk2011-12-05200910310601292012-09-08FEMALE42.0facebook0endirectdirectuntrackedWebMac DesktopFirefoxother
487mebub9p42010-09-14200912080611052010-02-18-unknown-41.0basic0endirectdirectuntrackedWebMac DesktopChromeUS
\n", "
" ], "text/plain": [ " id date_account_created timestamp_first_active date_first_booking \\\n", "0 gxn3p5htnn 2010-06-28 20090319043255 NaN \n", "1 820tgsjxq7 2011-05-25 20090523174809 NaN \n", "2 4ft3gnwmtx 2010-09-28 20090609231247 2010-08-02 \n", "3 bjjt8pjhuk 2011-12-05 20091031060129 2012-09-08 \n", "4 87mebub9p4 2010-09-14 20091208061105 2010-02-18 \n", "\n", " gender age signup_method signup_flow language affiliate_channel \\\n", "0 -unknown- NaN facebook 0 en direct \n", "1 MALE 38.0 facebook 0 en seo \n", "2 FEMALE 56.0 basic 3 en direct \n", "3 FEMALE 42.0 facebook 0 en direct \n", "4 -unknown- 41.0 basic 0 en direct \n", "\n", " affiliate_provider first_affiliate_tracked signup_app first_device_type \\\n", "0 direct untracked Web Mac Desktop \n", "1 google untracked Web Mac Desktop \n", "2 direct untracked Web Windows Desktop \n", "3 direct untracked Web Mac Desktop \n", "4 direct untracked Web Mac Desktop \n", "\n", " first_browser country_destination \n", "0 Chrome NDF \n", "1 Chrome NDF \n", "2 IE US \n", "3 Firefox other \n", "4 Chrome US " ] }, "execution_count": 218, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 행 인덱스\n", "train_df.iloc[:5]" ] }, { "cell_type": "code", "execution_count": 219, "id": "7b4e7e76", "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", "
iddate_account_createdtimestamp_first_activedate_first_bookinggenderagesignup_methodsignup_flowlanguageaffiliate_channelaffiliate_providerfirst_affiliate_trackedsignup_appfirst_device_typefirst_browsercountry_destination
24ft3gnwmtx2010-09-28200906092312472010-08-02FEMALE56.0basic3endirectdirectuntrackedWebWindows DesktopIEUS
3bjjt8pjhuk2011-12-05200910310601292012-09-08FEMALE42.0facebook0endirectdirectuntrackedWebMac DesktopFirefoxother
6lsw9q7uk0j2010-01-02201001020125582010-01-05FEMALE46.0basic0enothercraigslistuntrackedWebMac DesktopSafariUS
70d01nltbrs2010-01-03201001031919052010-01-13FEMALE47.0basic0endirectdirectomgWebMac DesktopSafariUS
8a1vcnhxeij2010-01-04201001040042112010-07-29FEMALE50.0basic0enothercraigslistuntrackedWebMac DesktopSafariUS
...................................................
213425l1f71f9vsj2014-06-3020140630232119NaNFEMALE30.0facebook0endirectdirectlinkedWebWindows DesktopChromeNDF
21344004y8115avm2014-06-3020140630234933NaNFEMALE24.0basic25endirectdirectuntrackediOSiPhoneMobile SafariNDF
213441omlc9iku7t2014-06-30201406302351512014-08-13FEMALE34.0basic0endirectdirectlinkedWebMac DesktopChromeES
2134430k26r3mir02014-06-30201406302353402014-07-13FEMALE36.0basic0ensem-brandgooglelinkedWebMac DesktopSafariUS
213445qbxza0xojf2014-06-30201406302355472014-07-02FEMALE23.0basic0ensem-brandgoogleomgWebWindows DesktopIEUS
\n", "

63041 rows × 16 columns

\n", "
" ], "text/plain": [ " id date_account_created timestamp_first_active \\\n", "2 4ft3gnwmtx 2010-09-28 20090609231247 \n", "3 bjjt8pjhuk 2011-12-05 20091031060129 \n", "6 lsw9q7uk0j 2010-01-02 20100102012558 \n", "7 0d01nltbrs 2010-01-03 20100103191905 \n", "8 a1vcnhxeij 2010-01-04 20100104004211 \n", "... ... ... ... \n", "213425 l1f71f9vsj 2014-06-30 20140630232119 \n", "213440 04y8115avm 2014-06-30 20140630234933 \n", "213441 omlc9iku7t 2014-06-30 20140630235151 \n", "213443 0k26r3mir0 2014-06-30 20140630235340 \n", "213445 qbxza0xojf 2014-06-30 20140630235547 \n", "\n", " date_first_booking gender age signup_method signup_flow language \\\n", "2 2010-08-02 FEMALE 56.0 basic 3 en \n", "3 2012-09-08 FEMALE 42.0 facebook 0 en \n", "6 2010-01-05 FEMALE 46.0 basic 0 en \n", "7 2010-01-13 FEMALE 47.0 basic 0 en \n", "8 2010-07-29 FEMALE 50.0 basic 0 en \n", "... ... ... ... ... ... ... \n", "213425 NaN FEMALE 30.0 facebook 0 en \n", "213440 NaN FEMALE 24.0 basic 25 en \n", "213441 2014-08-13 FEMALE 34.0 basic 0 en \n", "213443 2014-07-13 FEMALE 36.0 basic 0 en \n", "213445 2014-07-02 FEMALE 23.0 basic 0 en \n", "\n", " affiliate_channel affiliate_provider first_affiliate_tracked \\\n", "2 direct direct untracked \n", "3 direct direct untracked \n", "6 other craigslist untracked \n", "7 direct direct omg \n", "8 other craigslist untracked \n", "... ... ... ... \n", "213425 direct direct linked \n", "213440 direct direct untracked \n", "213441 direct direct linked \n", "213443 sem-brand google linked \n", "213445 sem-brand google omg \n", "\n", " signup_app first_device_type first_browser country_destination \n", "2 Web Windows Desktop IE US \n", "3 Web Mac Desktop Firefox other \n", "6 Web Mac Desktop Safari US \n", "7 Web Mac Desktop Safari US \n", "8 Web Mac Desktop Safari US \n", "... ... ... ... ... \n", "213425 Web Windows Desktop Chrome NDF \n", "213440 iOS iPhone Mobile Safari NDF \n", "213441 Web Mac Desktop Chrome ES \n", "213443 Web Mac Desktop Safari US \n", "213445 Web Windows Desktop IE US \n", "\n", "[63041 rows x 16 columns]" ] }, "execution_count": 219, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.loc[train_df['gender']=='FEMALE'] #이건 굳이 loc안써도 됨" ] }, { "cell_type": "code", "execution_count": 220, "id": "8ff4b5e9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2 56.0\n", "3 42.0\n", "6 46.0\n", "7 47.0\n", "8 50.0\n", " ... \n", "213425 30.0\n", "213440 24.0\n", "213441 34.0\n", "213443 36.0\n", "213445 23.0\n", "Name: age, Length: 63041, dtype: float64" ] }, "execution_count": 220, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#행,열인덱스 loc[행,열]\n", "train_df.loc[train_df['gender']=='FEMALE', 'age']" ] }, { "cell_type": "code", "execution_count": 221, "id": "e6d539ce", "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", "
agegender
256.0FEMALE
342.0FEMALE
646.0FEMALE
747.0FEMALE
850.0FEMALE
.........
21342530.0FEMALE
21344024.0FEMALE
21344134.0FEMALE
21344336.0FEMALE
21344523.0FEMALE
\n", "

63041 rows × 2 columns

\n", "
" ], "text/plain": [ " age gender\n", "2 56.0 FEMALE\n", "3 42.0 FEMALE\n", "6 46.0 FEMALE\n", "7 47.0 FEMALE\n", "8 50.0 FEMALE\n", "... ... ...\n", "213425 30.0 FEMALE\n", "213440 24.0 FEMALE\n", "213441 34.0 FEMALE\n", "213443 36.0 FEMALE\n", "213445 23.0 FEMALE\n", "\n", "[63041 rows x 2 columns]" ] }, "execution_count": 221, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.loc[train_df['gender']=='FEMALE', ['age','gender']]" ] }, { "cell_type": "markdown", "id": "36483fea", "metadata": {}, "source": [ "## 1.8 데이터 분포" ] }, { "cell_type": "code", "execution_count": 222, "id": "07489b73", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 222, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#하나의 컬럼 분포\n", "train_df['gender'].hist(bins=50, width = 0.4, figsize= (5,5), facecolor = \"#2E495E\", edgecolor = (0,0,0))" ] }, { "cell_type": "code", "execution_count": 223, "id": "b7a9c959", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "c:\\users\\hanay\\anaconda3\\envs\\kaggle\\lib\\site-packages\\seaborn\\_decorators.py:43: FutureWarning: Pass the following variables as keyword args: x, y. From version 0.12, the only valid positional argument will be `data`, and passing other arguments without an explicit keyword will result in an error or misinterpretation.\n", " FutureWarning\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "feat_train = train_df['first_affiliate_tracked'].value_counts()\n", "fig = plt.figure(figsize=(8,4))\n", "sns.set_palette(\"muted\") #색 지정 \n", "sns.barplot(feat_train.index.values, feat_train.values)\n", "plt.title('first_affiliate_tracked of training dataset')\n", "plt.ylabel('Counts')\n", "plt.tight_layout()" ] }, { "cell_type": "code", "execution_count": 224, "id": "984469dc", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([0, 1, 2, 3, 4, 5, 6]),\n", " [Text(0, 0, 'untracked'),\n", " Text(1, 0, 'omg'),\n", " Text(2, 0, 'linked'),\n", " Text(3, 0, 'tracked-other'),\n", " Text(4, 0, 'product'),\n", " Text(5, 0, 'marketing'),\n", " Text(6, 0, 'local ops')])" ] }, "execution_count": 224, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAtsAAAIFCAYAAAADRDH3AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAA7HUlEQVR4nO3deZhcVZ3/8XdCOgsMi0FWAVnzJeqIGhBUlDiIDCA6bMoWBcRBYBxWgUFABgVlERQUQYRBA+gPEAYVg7hMQNnEAOLSfpE9AWWTsId0kv79cW5iE7N0sE6ql/freXiounXr1LcqXVWfOvfcc4Z0d3cjSZIkqfWGtrsASZIkaaAybEuSJEmVGLYlSZKkSgzbkiRJUiWGbUmSJKkSw7YkSZJUybB2F1DTXXfd1T1ixIh2lyFJkqQB7MUXX3xy3LhxqyzotgEdtkeMGMHYsWPbXYYkSZIGsClTpjy0sNscRiJJkiRVYtiWJEmSKjFsS5IkSZUM6DHbktSXdHV1MW3aNGbMmNHuUvq1kSNHstZaa9HR0dHuUiRpsQzbkrSUTJs2jeWXX551112XIUOGtLucfqm7u5unnnqKadOmsd5667W7HElaLIeRSNJSMmPGDFZeeWWD9j9gyJAhrLzyyh4dkNRvGLYlaSkyaP/jfA0l9SfVhpFExB3As83VB4Dzga8As4DrM/O/I2IocC6wCfAysH9m3hsRW/R231r1S5Lgxhtv5Ec/+hFf/OIX212KJPVLVcJ2RIwEhmTm+B7b7gJ2Ae4Hro2ItwLrASMz8x1NwP4S8CHgvCXYV5IkSeqTavVsbwIsGxHXN49xIjAiM+8DiIgfA+8D1gCuA8jMWyNi04hYobf7Vqpdkvq1GTNmcNRRR/H444+zxhprcPvtt3PhhRfy+c9/HoCVVlqJU045hT/84Q9ccMEFdHR0MG3aNLbffnsOPPBA7rvvPo499lhGjRrFqFGjWHHFFQGYNGkSF198MUOHDmXcuHEceeSRnHPOOdx55528+OKLnHzyyWywwQbtfOqS1OfUCtsvAmcA3wQ2AiYB03vc/hywPrAC8EyP7bObbc/2Zt+IGJaZsxZWxMsvv0xnZ+erfxaS1EJdXV289NJL1R/n0ksvZfXVV+fUU0/lgQce4LrrruMzn/kMJ554IhtssAFXX301X//619liiy145JFHuPzyy+nq6mKbbbZhn3324Qtf+AIHHHAA73jHO/if//kf7r//fv7yl79w9tlnc+mllzJq1Cg+85nP8POf/5yuri7WWWcdjj76aICl8vygvJZ+vkvqD2qF7XuAezOzG7gnIp4BRve4fXlK+F62uTzXUErQXr43+y4qaAOMGDGCsWPHvsqnIEmt1dnZyahRo6o/zsMPP8x73vMeRo0axRve8AZGjx7NAw88wKmnngqUoLruuusyYsQIIoLlly8frSNHjmTUqFFMnTqVzTbbjFGjRvH2t7+dhx9+mMcff5ynn36aQw45BIAXXniBxx57jI6ODjbaaKOl8rx66ujo8PNdUp8xZcqUhd5WazaS/ShjqomINSlB+YWI2CAihgDbAr8AbgK2b/bbAvhtZj4LzOzNvpVql6R+bcyYMdx5551ACd5PP/006623HqeeeioTJ07k05/+NOPHjwcWPLPHBhtsMO/+v/vd7wBYa621WGONNbjooouYOHEie++9N295y1sAGDrUia0kaWFq9WxfCFwcEb8Euinhew5wKbAMZYaR2yLidmCbiLgZGALs29z/k0uwrySph1133ZVjjjmGvfbaizXXXJMRI0Zw4okncvTRRzNr1iyGDBnCySefzOOPP77A+x9zzDEcffTRXHjhhYwePZoRI0YwevRo9tlnHyZMmMDs2bN53etex3bbbbeUn5kk9T9Duru7211DNZ2dnd0eZpTUV3R2di6VoQ933HEHL774IltuuSUPPvgg+++/Pz/96U+rP+7StLReS0nqjSlTpkwZN27cAifvcLl2SRpg1l57bQ4//HC++tWvMmvWLE444YR2lyRJg5ZhW5IGmFVWWYWJEye2uwxJEi7XLkmSJFUz6MP2zK7Zfbo9SZIk9V+DfhjJ8I5l2POEyS1r77KTxresLUmSJPVvg75nW5IkSarFsC1JbdJfhrFNmDCB++67r0rbkjTQDfphJJLULg5jk6SBz55tSRqE3vWud827fNhhh3Hbbbdx1VVXccghh3DAAQew3XbbcdVVV73iPj//+c+ZMGECzz77LBMmTODkk09mn332Ydddd+WRRx4B4KKLLmKXXXbhIx/5CKeffjqzZ89mm222YdasWTz++OOMHTuWp59+mpkzZ7LTTjtx2223sf/++3PggQey44478vWvf32pvg6SVJs925KkeZ5//nkuvPBCHnzwQT75yU+y8847A/CTn/yE22+/nfPPP59ll10WgDe/+c185jOf4ayzzuLaa69lq622YtKkSXz3u99l2LBhfOpTn+LGG29k00035a677uKhhx5io4024pZbbmG55ZabF/gfffRRvv/97zNz5kze/e53c+CBB7bt+UtSqxm2JWmQOOuss7jjjjsAmD37b+O7u7u7513eeOONAVhjjTWYOXPmvO233HILzz//PMOG/e1r4w1veAMAq6++Ok8++ST3338/m2yyCR0dHQBsuumm/OlPf+L9738/N9xwA9OmTeOwww7jZz/7GUOHDmXXXXflpZdeYsyYMQwbNoxhw4YxcuRIAA444ABefPFFxowZw/HHH1/pFZGk+hxGIkmDxGGHHcbEiROZOHEi3d3dvPDCC8ycOZN777133j5DhgxZ4H1POOEEttxyS84+++yFtr/++utz9913M2vWLLq7u7n99ttZb731eNe73sXtt9/O008/zVZbbcXvf/97/vjHP/LmN795oY95/vnnM3HiRIO2pH7Pnm1JGoQ++tGP8pGPfIS11lqLNddcs1f3Ofjgg9ltt90YP378Am+PCLbbbjv22GMP5syZw7hx43jf+97HkCFDWH311VlzzTUZOnQo6623HqNHj27hs5GkvmtIz8OHA01nZ2f32LFjF7ufswFIWho6Ozvp+Zk0s2s2wzuWaVn7rW6vL5v/tZSkdpoyZcqUcePGbbqg2xxGIklt0upgPFiCtiT1J4ZtSZIkqRLDtiRJklSJYVuSJEmqxLAtSZIkVWLYliRJkioxbEtSm8yZNXPxO7W4vdtuu42I4Nprr33F9h133JFjjjkGgMcee4xNNtmESZMmveJ+hx122N+1N2HCBHbddVcmTJgw77/Jkyf/Y09EkgYQF7WRpDYZOmw495yxT8vaG3Pkxb3ab/311+faa69lhx12ACAzeemll+bdftVVVzFhwgQuu+wytttuu8W2d+qpp7LBBhu8qpolaaCzZ1uSBpmNN96YRx99lOeeew6A73//++y4444AdHd3c80117DffvvR1dXFPffc085SJanfM2xL0iD0/ve/n+uvv57u7m7uvvtu3vrWtwJwyy23MGbMGEaPHs0uu+zCpZdeuti2jj766FcMI/nrX/9au3xJ6jccRiJJg9COO+7IiSeeyNprr82mm/5theHLL7+cadOm8fGPf5yuri4y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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#두 열 간 분포 보기\n", "plt.figure(figsize=(12, 8))\n", "sns.countplot(x=train_df['first_affiliate_tracked'],\n", " hue='gender',\n", " data=train_df)\n", "plt.xticks(rotation=45)" ] }, { "cell_type": "code", "execution_count": 225, "id": "1ba833da", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#히트맵으로도 볼 수 있음\n", "notndf = train_df[train_df['country_destination']!='NDF']\n", "lang = notndf.groupby(['first_affiliate_tracked','country_destination']).id.count().reset_index()\n", "plt.figure(figsize=(10,10))\n", "fig = sns.heatmap(lang.pivot_table(values='id',index='first_affiliate_tracked',columns='country_destination',aggfunc='sum'), cmap='Reds')" ] }, { "cell_type": "code", "execution_count": 226, "id": "ee7660d2", "metadata": {}, "outputs": [], "source": [ "#레이블 별 특징 분포 그래프\n", "def plot_feature_by_label(dataframe, feature_name, label_name, title):\n", " try:\n", " print(feature_name)\n", " sns.set_style(\"whitegrid\")\n", " ax = sns.FacetGrid(dataframe, hue=label_name,aspect=2.5)\n", " ax.map(sns.kdeplot,feature_name,shade=True)\n", " ax.set(xlim=(0, dataframe[feature_name].max()))\n", " ax.add_legend()\n", " ax.set_axis_labels(feature_name, 'proportion')\n", " ax.fig.suptitle(title)\n", " plt.show()\n", " except:\n", " print(\"skip\")\n", " plt.show()" ] }, { "cell_type": "code", "execution_count": 227, "id": "ae8edf12", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "date_account_created\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "timestamp_first_active\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnsAAADXCAYAAABidZcrAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAA++UlEQVR4nO3dd1RU19oG8GdmYKSrSESjEnts8apYsEfF3kWkhNFYg0aNGhXBAjbEFgu5ErsGC8WoV4k3xhrvRSW22IIau0QFFFGGOjD7+8PPuRIpI5lhYHh+a7kWc8o+7ztnBl7POXtviRBCgIiIiIiMktTQARARERGR/rDYIyIiIjJiLPaIiIiIjBiLPSIiIiIjxmKPiIiIyIix2CMiIiIyYiz2iP7fqFGjkJSUBAAYO3Ysbt++rdfjPXr0CJMmTdLrMbTh7++Prl27YtWqVUXK++33TZeuXLmCefPmAQCuXr2KyZMn6/wYJdmcOXNw7do1vbR99epVdO3atcj7nzx5EmvWrAEAHDt2DIsWLSpyW29/D+Lj4+Hu7l7ktogobyaGDoCopIiOjtb8vHHjRr0f7/Hjx7h3757ej1OY8PBwnDx5ElWqVCnS/m+/b7p0+/ZtxMfHAwA++eQTrF27Vi/HKalOnz4NNzc3Q4eRp6tXr+Lly5cAgG7duqFbt25Fbuvt74G9vT3CwsJ0EiMR/Y+EgyoTAb6+vti7dy/q16+PDRs24LPPPsOaNWuQlpaGb775BpUrV8Yff/wBc3NzTJo0CaGhobh37x569OgBPz8/AMDx48cREhIClUoFMzMz+Pj4oHnz5rhz5w5mz56NrKwsCCEwdOhQuLu7o1evXoiPj0erVq2wefNmfPfddzh69CgyMzORnp4OHx8fdO/eHcHBwXj48CEePXqEhIQENG3aFO3bt8f+/fsRFxeHGTNmoF+/fggODsYff/yBZ8+e4fnz52jQoAEWL14MKyurfPP29PTEhQsXUL9+ffj7+2PmzJmavBcvXgwLCwukpaVh586dmD17Nh48eACpVIrGjRtjwYIFmD17dq73rWrVqnkeR61WIzAwEJcvX0ZqaiqEEFi0aBEcHR2RmpqKRYsW4eLFi5DJZHB2doaHhwc8PDyQkpKCHj16YNCgQVi4cCF2796Nzp074/Dhw/jggw8AAMOGDcOXX36Jtm3bYsWKFTh37hxycnLQqFEjzJkzJ1f+arUaXbp0wbfffotPPvkEADB16lS0atUKbdq0eec8ffbZZ+/kcuLECaxevRpqtRoWFhaYP38+GjRogKNHj+Lbb79FTk4OrKys4Ovri6ZNmyI4OBgvXrzQXKV8+7VCoUCzZs1w8eJFPHnyBI6Ojli6dCnWrFmDzZs3o1q1ali2bBlWrFiB8uXL4+7du+jTpw82b96MU6dOwdraGkII9OrVC2vWrEGDBg3yPde7du3C9u3bYWVlhfr16yMmJgbHjx8HAISEhODnn3+GWq1GtWrV4O/vD3t7e/z8888ICQmBRCKBTCbDzJkzIZfLMWHCBOTk5MDNzQ0fffQRDh8+jPXr1+ebj1QqzfPz3bVr11zfg/nz56N///64dOkSVCoVgoKCcObMGchkMjRt2hS+vr6wsrJC165dMXjwYJw5cwZPnjxB7969MXPmzIK+4kRlmyAiIYQQ9evXF8+fPxdCCNGlSxdx5coVcfbsWdGwYUNx/fp1IYQQo0ePFm5ubiIzM1M8f/5cNG7cWDx9+lTcu3dP9OvXTyQlJQkhhLh165Zo3769SE1NFb6+vmL9+vVCCCESEhLElClTRE5Ojjh79qzo27evEEKIuLg4oVAoRHp6uhBCiKioKNGvXz8hhBBr164VXbp0Ea9evRLp6emiVatWYsmSJUIIIY4cOSJ69Oih2a5Tp04iMTFR5OTkiGnTpomgoKAi592gQQMRFxcnhBBi3759YtSoUUIIIbKzs8Xs2bPF/fv339k/PxcvXhSTJk0SOTk5Qggh1q9fL7744gshhBCBgYFi6tSpIjs7W2RmZorPPvtMnD17Vvzwww9i3LhxQgiR672aOXOm2LRpkxBCiNu3b4tPP/1U5OTkiODgYBEUFCTUarUQQoiVK1cKf3//d2JZs2aNmD9/vhBCiOTkZNG6dWvx6tWrfM/T2xITE4Wjo6P4/fffhRBCHD58WIwePVrcvn1btGvXTjx8+FAIIcTp06dF+/btRUpKili7dq3meEKIXK+9vLzE5MmTRU5OjkhJSREdOnQQZ86cyXUu3mzn6+uraWP8+PFix44dmmMNGzaswPf/999/F23bthUJCQlCCCHmzp0runTpIoR4fW6nTJkiVCqVEEKIsLAwMWbMGCGEEN26dROXLl0SQgjxn//8RwQHB7+Tw9vnKb98Cvp8v31uHz16JJo1a6Y5TxMnThRZWVkiJydHzJo1S8ydO1fz3rz5bD99+lR88sknmveeiN7F27hEhahevToaNWoEAHBwcIC1tTXkcjlsbW1haWmJly9f4ty5c0hISMDnn3+u2U8ikeDhw4fo3r07fHx8cOXKFbRt2xZz5syBVJr7cdlq1aph6dKlOHjwIB48eKC5AvZGu3btYG1tDQCoXLkyOnbsqIknOTlZs12vXr1gZ2cHABg6dCgCAwPh4+NTpLyrVq2KatWqAQAcHR2xatUqKBQKtGvXDiNGjMBHH32kdVvNmzdH+fLlERYWhkePHiEmJgaWlpYAXt+u9PX1hUwmg0wmw44dOwAAe/fuzbMtV1dXzJ8/H6NHj8YPP/yAIUOGQCqV4uTJk0hJScHp06cBACqVCpUqVXpnfxcXFwwdOhSzZs1CVFQUunTpAmtra63O08WLF1GvXj00bNgQANCjRw/06NEDO3fuhJOTE2rUqAEAaNu2LWxtbbV65q5Lly6QSqWwsrLCRx99pLk9+lctW7bU/PzZZ59h+fLl+OyzzxAeHg4PD48Cj3HmzBm0b99eczXUzc0N//3vfwG8vlJ59epVuLi4AHh99TM9PR0A0LdvX0ycOBGdO3dG+/btMXbs2CLl4+TkVODnOy+nTp3C1KlTYWpqCgBQKBT48ssvNevf3Dq2t7dHpUqV8PLlS837T0S5sYMGUSHkcnmu1yYm7/4fSa1Wo23btvjXv/6l+RcREYF69eqhS5cuOHz4MHr37o3Y2Fj0798fDx8+zLX/9evX4e7uDqVSifbt22PMmDHvHQMAyGSyXDH9tVh5HxYWFpqfa9SogSNHjmDcuHFQKpUYOXIkfvrpJ63bOnnyJL744gsAr/9Iv12cmJiYQCKRaF4/efIEL168yLetli1bIjs7G1euXEFUVFSuIsXPz0/z/kdGRmo6EbytWrVqaNSoEU6ePIm9e/fC1dUVALQ6TzKZLFesQgjcuHEDIo+nYYQQyM7OhkQiybVepVLl2s7MzEzz81+3fdvb56Ndu3ZIT0/HmTNncP78efTu3Tvf9yuvdv/6ORkzZozmffvhhx+we/duAK9vce/evRtNmjTB3r174ebmBrVaXeCx8sqnsM93Xv56HLVaneu9K1euXL75EVFuLPaI/p9MJkN2dnaR9nVyckJ0dDTu3LkDAPjll18wYMAAZGZm4uuvv8ahQ4fQt29f+Pv7w8rKCk+ePIFMJtP88Tp37hyaNGmCkSNHonXr1jh27BhycnLeO45jx44hJSUFarUaERER6NKlS5Hy+atdu3bB19cXHTp0wIwZM9ChQwf88ccfALR736Kjo9GlSxd4enrik08+wdGjRzX5tW3bFvv27YNarUZWVhYmT56Mc+fOFdiuq6srFi5ciI8//hgffvghAKBDhw7YuXMnsrKyoFarMXfuXHzzzTd57j9s2DBs3LgRGRkZcHR0BIB8z9Pb/vGPf+DOnTua3I8dO4YZM2Zozv+jR48AQPMs2T/+8Q9UrFgR169fhxACaWlpmitqhSkof4lEAk9PT8yePRv9+vXLVfjkpV27doiOjsbTp08BAPv27dOs69ChA/bs2QOlUgkAWLNmDWbOnIns7Gx07doVaWlp8PDwgL+/P+7cuYPs7Oz3/q4U9Pl++3vwto4dOyIsLAwqlQpqtRo7d+5E+/bttT4mEf1PqSr2Ll++DIVCobP9Hzx4AA8PD3h6esLf37/Q/7GScevevTs8PT1x69at9963Xr16WLBgAaZNm4YBAwZgzZo1CAkJgYWFBSZMmICDBw9iwIABGDZsGJydndG6dWvUq1cPMpkMQ4cORb9+/fDixQv06dMHQ4YMgYWFBV6+fKn5A6wtOzs7jB07Fr1794a1tTW8vb3fO5e8DBo0CDk5OZr4lEolhg8fDkC7983d3R3nzp1D//794ebmhho1aiAuLg5qtRoTJ06EqakpBg4ciEGDBqFz587o0aMHmjdvjrt37+a6dfd2PLGxsZqrcgAwYcIEVKtWDYMHD0afPn0ghMCsWbPyjKdr1674888/MXTo0Fz753We3mZnZ4cVK1bAx8cHAwcOxNatW7Fq1SrUrVsX/v7+mDhxIvr164eVK1fiu+++g7W1NQYMGABbW1v06NED48aNQ/PmzbV6z52dnTF16tR8i8PBgwfj6dOnWvXY/fjjjzFjxgyMGDECQ4YMQWZmpmadq6srPv30UwwbNgx9+/bFzZs3ERQUBBMTE/j5+WH69OkYPHgwvvrqKwQGBkIul6Nt27Y4fvw4Fi5cqFUuBX2+3/4evH11bvz48bCzs8OgQYPQu3dvZGdnY/bs2Vodj4hyKzW9cTdu3IgDBw7A3NwcEREROtnf29sbI0eORJs2bTBv3jx07NgR3bt313XoRMXir70+ybj9+OOP2LdvHzZt2mToUIiohCs1HTQcHBwQHBys6V5/8+ZNzUCeFSpUQGBgoOYBdm32B14/J/Xmf+6dOnVCdHQ0iz0yOlOmTMl3PL9Vq1ahdu3apeo49LqzwrNnzxAcHKxZFhgYiJiYmDy39/X1hZOTU3GFR0QlTKm5sgcAcXFxmDZtGiIiIjBs2DAEBgaibt26iIyMRFxcHBwdHbFs2bJc+0yZMgXOzs7v7A+8flblzS2SM2fO4IcffsCKFSuKNykiIiIiPSo1V/b+6s6dO5g/fz6A173batasiU6dOqFTp05at/F2T8XU1FTY2NjoPE4iIiIiQypVHTTeVqtWLSxduhShoaGYMWMGPv300/duo1GjRprbHqdOnco1jhURERGVXMnJyTh48KDO2jt16lS+nbryk5mZicjISACvxwY9duzYex/3yJEjiI+PR2JiIgICAt57f22U2mIvICAAPj4+8PDwwMqVK/Hxxx+/dxs+Pj4IDg6Gm5sbVCoVevbsqYdIiYiISNdu3rypmfLPUBITEzXF3pAhQ4o0T/T3338PpVKJDz74QG/FXql6Zo+IiIhKn4yMDPj6+uLx48dQqVTw8/NDWFgY4uLikJOTg5EjR6JPnz5QKBQICAhAnTp1sHv3bjx79gyDBw/G119/jSpVquDRo0f45JNPMH/+fIwcORI3btzAlClTcOnSJSQnJyM5ORkff/wx6tevj88++wwvX77EyJEj852R586dO/Dz84O5uTnMzc1Rvnx5BAUF4d///je2bdsGqVQKR0dHTJ8+HRcuXMDSpUthYmICc3NzrFmzBkFBQTh06BBGjRoFIQTs7OxQu3ZtbNy4EaampoiLi0OfPn0wfvx43Lp1C0FBQcjJycGLFy8QEBCAV69eYfr06ahZsyaWL18OHx8fREREIDo6GqtXr0a5cuU0nVBjY2PzbFcbpfbKHhEREZUOYWFhqFatGsLDw/HNN9/g119/ha2tLcLCwrB161asXr0aSUlJ+e5///59LF68GJGRkTh16hQSExPh7e0NJycnzViTTk5OCAsLw5gxY7B//34AQFRUFPr3759vu8uWLcPkyZOxbds2zRiYycnJCA4OxrZt27B7927Ex8cjOjoaR48eRe/evbFjxw54eHjg1atX8Pb2Rt26dTFx4sRc7T5+/BjBwcEIDw/XDI90+/Zt+Pj4YPv27Rg7diz27t2LTz/9FA0bNsTSpUs1UwMKITB37lx8++232LFjB1q1aoWQkJB829VGqSj2rly5YugQit39+/cNHUKxK2s5l7V8AeZcVjBn4/e++d69exfNmjUDANSsWROJiYlo1aoVAMDKygp16tTRzEDzxts3Hh0cHGBlZQWZTIYPPvgg18Dgb9SqVQvA6+kdLS0tcfv2bRw8eBADBw4sMI+mTZsCAFq0aAEAePjwIZKSkjBu3DgoFArcuXMHDx8+hLe3NxISEjBixAj89NNP+U5bCQD169eHiYkJLCwsNFMIVq5cGevWrYOPjw8OHz6c7yw0L168gJWVFezt7QEArVq10szak1e72igVxV5Rpo0q7d5MRF6WlLWcy1q+AHMuK5iz8XvffOvUqYOrV68CAB49eoQff/wR58+fBwAolUrcunUL1atXh1wuR2JiIgDg999/1+z/9pzUb0il0lwzX729zbBhw7Bu3TrY29vD1ta2wLguXboEALh27RoAoHr16qhatSq2bNmC0NBQeHl5oVmzZjhw4AAGDx6M0NBQ1KtXDxEREe/EUFC8ixcvxuTJk7F06VLUr19fU8z+dW7nihUrQqlUIiEhAQDw66+/ombNmvm2q41SO/QKERERlQ7u7u7w8/ODl5cXcnJysGnTJuzcuRMeHh7IzMzExIkTUalSJQwfPhzz58/Hhx9+iMqVKxfYpoODA27duoVt27a9s87Z2RkLFizA8uXLC2xj1qxZ8PHxwebNm2Fra4ty5crB1tYWn3/+ORQKBXJyclCtWjX07t0bWVlZmDNnDszNzSGVSrFgwQJUqlQJKpUKy5cvL/RK24ABA/DVV1/BxsYGVapUwYsXLwAAzZs3x8yZMzXTD0okEixatAiTJk2CRCJB+fLlsWTJEs3VvaIoFR00Ll26pPV8ksYiNjYWDRs2NHQYxaqs5VzW8gWYc1nBnI1fSc83PT0dXl5eiIyMzDWmblnFK3tERERkNC5evAh/f398+eWXkEqlyMrKwujRo9/ZrlatWliwYIEBIix+LPaIiIjIaLRo0SLXYMtyuRyhoaEGjMjweG2TiIiIyIix2CMiIqIiE0JAKNMMHQYVgMUeERERFZn6yi1kzvvW0GFQAVjsERERUZHxql7Jxw4aREREVHR5DCqsLxkLQoDkFN01WMEaZvMKnl82JiYGEyZMQFRUFKpWrQoAWLFiBWrXro158+ZphobLyMhAhw4dMHnyZEgkEigUCqSnp8Pc3FzT1ubNmyGXy3UXv5ZY7BEREVGRZe87VnwHS06B6QR3nTWnWhem1XZyuRy+vr7YunVrrlksypcvr+npK4SAv78/duzYAYVCAQBYunQp6tSpo7N4i4q3cYmIiIgK4OTkhPLly2Pnzp35biORSDBy5EgcOnSoGCPTDq/sERERERUiICAArq6u6NixY77b2NnZaaZBAwAfHx/NbdwBAwbA1dVV73HmhcUeERERUSEqVqwIPz8/+Pj4oEWLFnlu8+eff6JKlSqa17yNS0RERFSKdO3aFbVq1cK+ffveWadWq7Flyxb07dvXAJEVjFf2iIiIiLQ0e/ZsnD17FgDw8uVLKBQKSCQSZGdno127dhg6dKiBI3wXiz0iIiIqHSpYa92DVtv2CtOmTRu0adNG89rKygonTpwAAAwZMiTf/UrSfLws9oiIiKhUKGxMPMobn9kjIiIiMmIs9oiIiIiMGIs9IiIiIiPGYo+IiIjIiLHYIyIiIjJi7I1LREREpUL82j5Qv4rXWXtSG3vYTy54LtuYmBiEhYVh1apVmmUrVqxA7dq1IZFIsG/fPgghoFKpMHHiRHTo0EFn8ekKiz0iIiIqFdSv4mHrtV5n7SXt+KLI+6akpGDHjh348ccfIZfLER8fD1dXV5w8eRJSacm6caq3aC5fvgyFQvHO8m3btqFv375QKBRQKBS4e/euvkIgIiIi0gu5XA6VSoXdu3fj4cOHsLe3x9GjR0tcoQfo6crexo0bceDAAZibm7+z7tq1a1i6dCmaNGmij0MTERER6Z2ZmRm2b9+O7du3Y8yYMVCpVBg7diw8PT0NHdo79FJ+Ojg4IDg4OM91169fx4YNG+Dh4YH163V3KZaIiIhI18zMzJCVlZVrWVpaGiQSCTIyMjBv3jz8/PPP2LJlCzZv3oybN28aKNL86eXKXs+ePREXF5fnur59+8LT0xNWVlaYOHEiTpw4gS5duhTYnlqtRmxsrD5CLbEyMjKYs5Era/kCzLmsYM7G7+18axk4Fn2rU6cOYmNjkZCQgMqVKyMzMxPnzp3DoEGDMGPGDOzatQtWVlaoVq0aKlasCFNTU0OH/I5i7aAhhMCIESNgbf164uHOnTvj999/L7TYk0qlaNiwYXGEWGLExsYyZyNX1vIFmHNZwZyN39v5ZuCggaPRLysrK8yaNQtffPEFzMzMoFKpoFAo0LRpUygUCnh5ecHMzAw5OTlwdXVF7dq1DR3yO4q12FMqlejXrx8OHToECwsLxMTEwMXFpThDICIiolJKamP/t3rQ5tWeNnr06IEePXq8s9zV1RWurq46i0dfiqXYO3jwINLS0uDm5oapU6di+PDhkMvlaNu2LTp37lwcIRAREVEpV9iYeJQ3vRV71atXR0REBACgf//+muWDBg3CoEGD9HVYIiIiInpLyRsMhoiIiIh0hsUeERERkRFjsUdERERkxFjsERERERmxYh16hYiIiKio/rOjDzJT43XWXjlLe3T0er8evjdv3sSrV6/QqlUrdO3aFf/+979Rrlw5ncWkDyz2iIiIqFTITI1Hi/66m2r14sH3H7Pv559/hp2dHVq1aqWzOPSNxR4RERFRHlQqFXx9fREXF4ecnBx4enpi3759MDU1RePGjQEAAQEBmiliv/32W1hYWMDf3x8PHjyAWq3GlClT0KZNG/Tr1w81a9aEqakpVq1aVax5sNgjIiKiIlNLUyEk2YYOQy/Cw8Nha2uLFStWQKlUYsiQIfj0009Rr149NG3aFADg4uKCli1bYtasWYiOjkZycjIqVqyIwMBAvHjxAl5eXvjxxx+RlpaGCRMmoFGjRsWeB4s9IiIiKrIU65NQy5SwxGJDh6Jzd+7cQbt27QC8niO3Tp06ePjwIerVq6fZpkmTJgAAOzs7ZGRk4NatW7hw4QKuXLkCAMjOzkZSUhIAoFatWsWcwWvsjUtERER/g9rQAehNnTp1cP78eQCAUqnErVu30KxZM6jV/8tZIpHk2qd27dro27cvQkNDsXHjRvTq1QsVKlQAAEilhim7WOwRERER5WHYsGFITk6Gh4cHhg8fjokTJ6JJkybYuXMnzp49m+c+7u7uuHv3Lry8vODu7o5q1aoZrMh7g7dxiYiIqFQoZ2lfpB60BbVXELlcjqVLl76z/NNPPwUAHD9+XLNs+vTpmp+XLVv2zj5vb1vcWOwRERFRqfC+Y+LRa7yNS0RERGTEWOwRERERGTEWe0RERERGjMUeERERkRFjsUdERERkxNgbl4iIiIpMFOOxduzrA2XaU521Z2VRBV6DC+7hGxcXhwEDBmjmwgWANm3aYMuWLZplmZmZsLCwwJo1a1C+fHmdxacrLPaIiIioVFCmPUV/5w06a+/g0XFabVe3bl2EhoZqXsfFxeHUqVO5lq1cuRJ79uzB6NGjdRafrvA2LhERERWZpPBNjJ4QAk+ePIGNjY2hQ8kTr+wRERFRkallaYYOQe9u374NhUKheT1lyhTNsuTkZGRmZqJ///4YPHiwAaPMH4s9IiIiogLkdRv3zbKMjAx4e3ujUqVKMDEpmWUVb+MSERERFZGZmRlWrFiBdevW4caNG4YOJ09alaCxsbEIDw9HZmamZtmSJUv0FhQRERFRaWFnZ4eZM2di3rx5CAsLg1Rasq6laVXszZo1C15eXqhSpYq+4yEiIiLKk5VFFa170GrbXmGqV6+OiIiIQpcNGDAAAwYM0FlsuqRVsWdnZwdXV1d9x0JERESUr8LGxKO8aVXsVatWDRs2bEDDhg0hkbzuZN2hQwe9BkZEREREf59WxZ5KpcK9e/dw7949zTIWe0REREQln1bF3pIlS3Dr1i3cvn0btWrVQsOGDfUdFxERERHpgFbFXmhoKKKiotC0aVNs2bIFvXv3LpHTgRARERFRbloVe1FRUdi5cydMTEygUqng7u7OYo+IiIioFNCq2BNCaEaFNjU1hampqV6DIiIiIvqrsUf64Fn6U521Z2deBRu7F9zD948//sDy5cuRnp6OtLQ0dO7cGZMmTYJEIsGhQ4fg5+eHw4cPw97eXmdx6ZpWxZ6joyMmT54MR0dHXLhwAc2bN9d3XERERES5PEt/ioXtNuisvbmnCx6z79WrV5g2bRqCg4NRs2ZN5OTk4KuvvkJYWBg8PDwQGRkJhUKBiIgITJo0SWdx6ZpWQzz7+PhgyJAhyM7OhouLC3x8fArd5/Lly7kmDX7j+PHjcHFxgZub2zsDEhIRERGVFMeOHUObNm1Qs2ZNAIBMJsPSpUvh4uKCR48e4eXLlxg7diz+9a9/QaVSGTbYAhRY7J04cQIAEB4ejvj4eFhZWeHp06cIDw8vsNGNGzdizpw5uaZXA14P4bJkyRJs2bIFoaGhCA8Px7Nnz/5mCkRERGQoiRbAI2tDR6EfCQkJqFGjRq5llpaWkMvl2LNnD1xcXGBjY4NmzZrhyJEjBoqycAUWe8nJyQCAxMTEd/4VxMHBAcHBwe8sv3PnDhwcHFC+fHnI5XI4Ojri3LlzRY+eiIiIDOqFGfDKzNBR6MeHH36Ip09zPyP46NEj/Prrrzh48CB++uknjB49Gvfv38eOHTsMFGXhCnxmb/DgwQAAqVSKCRMmaJavXLmywEZ79uyJuLi4d5YrlUpYW/+v/Le0tIRSqSw0SLVajdjY2EK3MyYZGRnM2ciVtXwB5lxWMGfj93a+KpmBg9GjLl26YP369fDw8ICDgwNUKhWCgoLQunVrNGnSBGvXrtVs27NnT9y4cQMNGjQwYMR5K7DYi4yMxJ49e3Dnzh2cOnUKwOvCS6VS4euvv37vg1lZWSE1NVXzOjU1NVfxlx+pVFrmBnKOjY1lzkaurOULMOeygjkbv7fz/fOUgYPRIysrKwQFBWHOnDkQQiA1NRVdunTBmTNn4OrqmmvboUOHYufOnVi4cKGBos1fgcXewIED0bZtW6xfvx7e3t4AXhdelSpVKtLB6tSpgwcPHiA5ORkWFhY4f/48x+sjIiIirdiZVym0B+37tleYJk2a4Pvvvy90u7Fjx+oiJL0osNiTy+WoXr06/vzzT1SrVq3IBzl48CDS0tLg5uaGWbNmYfTo0RBCwMXFpUSPS0NEREQlR2Fj4lHetBpnz8bGBkePHkWtWrUglb7u01GrVq0C96levbpmaJX+/ftrlnft2hVdu3YtarxERERE9B60KvaeP3+O7du3a15LJBKtLmkSERERkWFpVeyFhobixYsXePToEapXrw5bW1t9x0VEREREOqDVDBr//ve/4e7uju+++w5ubm7417/+pe+4iIiIiEgHtLqyt23bNuzdu1czLt6IESMwcOBAfcdGRERERH+TVsWeRCKBpaUlgNdjzpQrV06vQRERERH9Vb/DwYhPf6Wz9uzNbRDVc1KB2zx69AjLly/H06dPYWZmBjMzM8yYMQM//fQToqKiULlyZWRnZ8PKygorV66EjY2NzuLTFa2KvRo1aiAoKAgtW7bE+fPn4eDgoO+4iIiIiHKJT3+F79p76aw97+iCpzhLT0/H+PHjsXDhQjRv3hwAcOXKFSxYsACtW7fG559/Dg8PDwDAN998g8jIyBI5frBWz+wtWbIENWrUwJkzZ1CjRo0SOTo0ERERkS6dOHECTk5OmkIPAJo2bZrniCQvX74s8qQT+qbVlb3s7GyoVCqoVCoIIfQdExEREZHBxcXF5bqbOX78eCiVSiQkJKBly5aIiorCoUOHkJycjJcvX2L8+PEGjDZ/Wl3ZmzZtGp49e4ZOnTrh8ePH8PX11XdcRERERAZVpUoVxMXFaV6HhIQgNDQU5cuXR05ODj7//HOEhobi4MGDmDx5MmbNmmXAaPOnVbGXnJyM6dOnw9nZGTNnzsTjx4/1HRcRERGRQXXr1g1nzpzBb7/9pln24MEDPH36FBKJJNe2VatWhUqlKuYItaPVbdy6deviwoULcHR0xM2bN/Hhhx9qbunK5XJ9x0hERERU7CwtLRESEoKVK1dixYoVyM7Ohkwmg6+vL27fvo1t27bh0KFDkMlkyMjIgJ+fn6FDzpNWxd6FCxfw3//+F6amppqqtWfPnpBIJDh27JheAyQiIiICXg+VUlgP2vdtrzDVq1fHqlWr8lw3aVLBw7aUFFoVez/++COA13PkVqxYEVKpVnd/iYiIiHSmsDHxKG9aVW0xMTHo1q0bRo8eDWdnZ0RHR+s7LiIiIiLSAa2u7K1evRq7du2Cvb094uPjMXHiRLRv317fsREREVEJ91wukMUbfiWaVsWeTCaDvb09AMDe3p7TpREREREAIMUEyGaxV6JpVexZWVkhNDQUrVq1wrlz51C+fHl9x0VEREREOqBVLb58+XI8fvwYq1atwpMnTxAYGKjvuIiIiKgUeCWphOeSaoYOgwqg1ZW9gIAArFy5Ut+xEBERUSlzSD4eqRJbzC6GYw349z7Ep6fprD17cwsc6D24wG1iYmIwZcoU1K1bV7OsYsWKCAgIgL+/P1JTU5GWloY6depg7ty5MDMz01l8uqJVsZeVlYUbN26gVq1amhGjOZgyERERpcOy2I4Vn56GdR2dddbehP8c1Wo7Jyend8baW7ZsGdq1awcPDw8AwOLFixEWFobPP/9cZ/HpilbF3v379+Ht7Y2kpCRUqlQJUqmUgykTERER1JKy2WnTzs4Ohw8fxkcffYQWLVrAx8fnnSnUSgqtir1JkyYhKCgItWvXhlKpREBAgJ7DIiIiIioZzp49C4VCoXnduXNnjBo1CjY2Nti8eTO++uorODo6wt/fH1WrVjVgpHnTqthbt24dIiMjUalSJTx79gze3t7o0KGDvmMjIiIiMri8buOePn0agwYNwtChQ5GVlYWNGzciMDAQwcHBBooyf1r1xq1QoQIqVaoE4PVlSysrK70GRURERKXDVzclWH2h7A209/333yMqKgrA634M9erVK7H9GbS6smdpaYnRo0ejVatWuH79OjIyMvDNN98AAKZNm6bXAImIiKjkcnomgX1myXxWTVf+ehsXAFasWIH58+dj27ZtMDMz0/TQLYm0Kvacnf/X8+XNTBpERERExcne3ELrHrTatleYNm3a4MyZM3muW7dunc5i0Setir3Bgwseg4aIiIhI3wobE4/yVvZushMREZHO2Ki0um5EBsRij4iIiIrMRM1SoqTjGSIiIiIyYiz2iIiIiIwYiz0iIiIiI8anKomIiKjIinOEvUFRZxCfnqmz9uzNy2F/v7YFbhMXF4fPP/9cMw1abGwsatasCXNzcwwYMACurq46i0dfWOwRERFRkRVnsRefnol/dv6Hztr78pfLWm1na2uL0NBQAIBCoUBAQADq1Kmjszj0TS/FnlqtRkBAAG7evAm5XI5Fixbho48+0qxftGgRLl68CEtLSwCvByW0trbWRyhEREREZZpeir2jR48iKysL4eHh+O233xAUFISQkBDN+uvXr2PTpk2wtbXVx+GJiIiI6P/ppYPGhQsX0LFjRwBAs2bNcO3aNc06tVqNBw8eYN68eXB3d8eePXv0EQIRERERQU9X9pRKJaysrDSvZTIZsrOzYWJigrS0NHh5eWHkyJHIycnB8OHD0aRJEzRo0EAfoRAREZFeFedTe1QUein2rKyskJqaqnmtVqthYvL6UObm5hg+fDjMzc0BAE5OTrhx40aBxZ5arUZsbKw+Qi2xMjIymLORK2v5Asy5rGDOxu/tfGsYOBYqnF6KvRYtWuDEiRPo06cPfvvtN9SvX1+z7v79+5gyZQr2798PtVqNixcvYvDggic2lkqlaNiwoT5CLbFiY2OZs5Era/kCzLmsYM7G7+18lYgptuPam5fTugettu0Vpnr16oiIiNC8ftMrtzTRS7HXvXt3REdHw93dHUIIBAYGYuvWrXBwcEC3bt0wcOBADBs2DKamphg4cCDq1aunjzCIiIjIiBQ2Jh7lTS/FnlQqxYIFC3Ite3s8mjFjxmDMmDH6ODQREREVI4kAH9sr4ThdGhEREZERY7FHRERERSaBytAhUCFY7BEREVGRSSTC0CFQIVjsERERERkxvXTQICIiItK1IXtfICFNrbP2KltIsXdIxQK3iYmJwZQpU1C3bl0AQGZmJjp37oyzZ88CeD0MTc2aNWFubo4BAwbA1dVVZ/HpCos9IiIiKhUS0tRY62yjs/YmH32l1XZOTk5YtWoVACArKwu9evXC/v37YWNjA4VCgYCAgFyjjpQ0vI1LREREpCWlUgmpVAqZTGboULTGK3tEREREBTh79iwUCgUkEglMTU0xd+5cWFpaGjosrbHYIyIiIirA27dxSyPexiUiIiIyYiz2iIiIiIwYb+MSERFRqVDZQqp1D1pt2ytMmzZt0KZNm3zXh4aG6iwefWGxR0RERKVCYWPiUd54G5eIiIjIiLHYIyIiIjJiLPaIiIiIjBiLPSIiIiIjxmKPiIiIyIixNy4RERGVCvs2pCEtReisPQtrCQaPsyhwm5iYGEyYMAFRUVGoWrUqAGDFihWoXbs2Vq5ciejoaJ3Foy8s9oiIiKhUSEsRcB5mprP2jkZkaLWdXC6Hr68vtm7dColEorPjFxfexiUiIiIqgJOTE8qXL4+dO3caOpQiYbFHREREVIiAgABs27YNDx48MHQo743FHhEREVEhKlasCD8/P/j4+ECtVhs6nPfCYo+IiIhIC127dkWtWrWwb98+Q4fyXthBg4iIiEhLs2fPxtmzZwEAycnJGDJkiGbdqFGj0K9fP0OFli8We0RERFQqWFhLtO5Bq217hWnTpg3atGmjeW1lZYUTJ04AQK5CryRjsUdERESlQmFj4lHe+MweERERFZlamBo6BCoEiz0iIiIqMqlEZegQqBAs9oiIiIiMGIs9IiIiIiPGYo+IiIiKRAhh6BBIC+yNS0REREWSeu8SZMV4vMRZaVC/0F2BKa0owQdBBffwjYmJwZQpU1C3bl0IIZCdnY3hw4ejadOmGDBgABo3bpxr+23btkEmK853pXAs9oiIiKhIUpOfwAY2xXY89QuBitPMdNbei2+0G7PPyckJq1atAgCkpqZCoVBg8eLFqFu3LkJDQ3UWj77wNi4REREVycm4/wIA1GWonLC0tISbmxs2b95s6FC0ppcre2q1GgEBAbh58ybkcjkWLVqEjz76SLM+IiICYWFhMDExwfjx49GlSxd9hEFERER69CDl9VW2wuehMC6VKlXCixcvcPv2bSgUCs3yxo0bY9asWQaMLG96KfaOHj2KrKwshIeH47fffkNQUBBCQkIAAImJiQgNDcUPP/yAzMxMeHp6on379pDL5foIhYiIiPSk2qPOr38oYx01Hj9+DEdHR6SkpJTd27gXLlxAx44dAQDNmjXDtWvXNOuuXLmC5s2bQy6Xw9raGg4ODrhx44Y+wiAiIiI9kuS8nj1DIik7xZ5SqURkZCR69epl6FC0ppcre0qlElZWVprXMpkM2dnZMDExgVKphLW1tWadpaUllEplge1JJBLExsbqI9QSjTkbv7KWL8CcywrmbPxiY2Ph0N4EdzKkkGZK0cjQAenR2bNnoVAoIJVKkZOTg0mTJkEul79zGxcAAgMDUaNGDQNFmje9FHtWVlZITU3VvFar1TAxMclzXWpqaq7iLy/NmjXTR5hERET0dzQs3sNJK0q07kGrbXuFadOmDc6cOZPnuosXL+osFn3SS7HXokULnDhxAn369MFvv/2G+vXra9Y1bdoUq1evRmZmJrKysnDnzp1c64mIiIjyUtiYeJQ3idDD8NdveuPeunULQggEBgbi1KlTcHBwQLdu3RAREYHw8HAIIfDFF1+gZ8+eug6BiIiIiKCnYo+IiIiISoayMwoiERERURnEYo+IiIjIiBl8btyizLaRlJSE6dOnIyMjA5UrV8aSJUtgbm5uwCzeT2E5b9u2DT/++CMAoHPnzpg4cSKEEOjUqRNq1qwJ4HUP5a+//toQ4b+3wvJdtGgRLl68CEtLSwDAunXroFKpjPYcx8bGIjAwULPtb7/9hn/+859o2rQpevbsqemw5OzsjBEjRhgk/r/j8uXLWLFixTsDjR4/fhz//Oc/YWJiAhcXFwwbNgwZGRmYMWMGnj9/DktLSyxduhS2trYGirxo8ss3KioK27dvh0wmQ/369REQEACpVIrBgwdrhqaqXr06lixZYoiw/5b8ct62bRsiIyM153D+/Pn48MMPS/05BvLOOTExEdOmTdO8jo2Nxddffw13d/dS+/saAFQqFfz8/PDnn38iKysL48ePR7du3TTrjfW7bNSEgR0+fFj4+PgIIYS4dOmS8Pb21qxLSEgQ/fr1E5mZmeLVq1eanxcuXCh++OEHIYQQ69evF1u3bjVE6EVWUM4PHz4UgwcPFtnZ2UKtVgs3NzcRGxsr7t+/L7744gtDhfy3FJSvEEK4u7uL58+f51pmzOf4bYcOHRLTpk0TQggRHR0tFixYUGwx6sOGDRtEv379hKura67lWVlZwtnZWSQnJ4vMzEwxZMgQkZiYKLZs2SLWrl0rhBAiKipKLFy40BBhF1l++aanp4tu3bqJtLQ0IYQQU6dOFUePHhUZGRli4MCBBohUd/LLWQghvv76a3H16tVcy0r7ORai4JzfuHjxolAoFCI7O7tU/74WQog9e/aIRYsWCSGEePHihejcubNmnaG/y2m+MSLN+5Tu/vnGaH3sDRs2iPbt24uMjAwhhBA+Pj7il19+ybVNu3btdJqvrhj8Nm5RZtt4e59OnTrh9OnTBom9qArKuUqVKti0aRNkMhkkEgmys7NRrlw5XL9+HfHx8VAoFBg7dizu3r1rqPDfW0H5qtVqPHjwAPPmzYO7uzv27Nnzzj7Gdo7fSEtLQ3BwMGbPng0AuHbtGq5fvw4vLy9MnjwZCQkJxRqzLjg4OCA4OPid5Xfu3IGDgwPKly8PuVwOR0dHnDt37p3znN9YViVVfvnK5XKEhYVprka/+R7fuHED6enpGDVqFIYPH47ffvutmCP++/LLGQCuX7+ODRs2wMPDA+vXrwfw7ne5tJ1joOCcAUAIgYULFyIgIAAymaxU/74GgF69euGrr74C8Do3mUymWWfw7/KLTMinfqKzf3iRqfWhDxw4gD59+mjuvJUmBi/28ptt4826vGbbeHu5paUlUlJSijfov6mgnE1NTWFrawshBJYuXYpGjRqhVq1a+OCDDzBu3DiEhobiiy++wIwZMwwV/nsrKN+0tDR4eXlh+fLl2LRpE3bt2oUbN24Y9Tl+Y8+ePejVq5fmVkft2rUxefJk7NixA87Ozli0aFGxxqwLPXv21Ayg/jZj/S7nl69UKoWdnR0AIDQ0FGlpaWjfvj3MzMwwevRobN68GfPnz8f06dPf+VyUdPnlDAB9+/ZFQEAAtm/fjgsXLuDEiROl/hwDBecMvL6tWa9ePdSuXRsASvXva+D1ebKysoJSqcTkyZMxZcoUzTpj/S4XJiYmBg4ODnB3d8fOnTsNHc57M/gze0WZbePNcjMzM6SmpsLGxqbY4/47CsoZADIzM+Hn5wdLS0v4+/sDAJo0aaL531XLli2RkJAAIQQkksJH/za0gvI1NzfH8OHDNVdAnJyccOPGDaM/xwBw8OBBrF27VvPayclJ8z50794917rSrrDv8ptlpe08F0StVmP58uW4d+8egoODIZFIUKtWLXz00UeanytUqIDExERUrVrV0OH+bUIIjBgxQvMHv3Pnzvj999+N+hy/ceDAAQwfPlzzujT/vn7jyZMn+PLLL+Hp6Yn+/ftrlpfF7zIAREZGwtXVFbVr14ZcLsfly5fz3K6knmODX9lr0aIFTp06BQB5zrZx4cIFZGZmIiUlRTPbRosWLfDLL78AAE6dOgVHR0eDxF5UBeUshMCECRPw8ccfY8GCBZpfGN9++y22b98OALhx4waqVq1aYj9Uf1VQvvfv34eHhwdycnKgUqlw8eJFNG7c2KjPMQCkpKQgKysr1x/5OXPm4PDhwwCAM2fOoHHjxsUXsJ7VqVMHDx48QHJyMrKysnD+/Hk0b9681J/ngsybNw+ZmZlYt26dpojfs2cPgoKCAADx8fFQKpX44IMPDBmmziiVSvTr1w+pqakQQiAmJgZNmjQx6nP8xrVr19CiRQvN69L8+xoAnj17hlGjRmHGjBkYOnRornVl8bv88uVLnDp1Ct9//z1Gjx4NpVKJHTt2oFy5csjKysq1bUm9Um/wK3vdu3dHdHQ03N3dNbNtbN26VTPbhkKhgKenJ4QQmDp1KsqVK4fx48fDx8cHERERqFixIlauXGnoNN5LQTmr1Wr8+uuvyMrKwn/+8x8AwLRp0zBu3DjMmDEDv/zyC2QyWanqwVfYOR44cCCGDRsGU1NTDBw4EPXq1TPqc9ytWzfcu3cP1apVy7XP119/DT8/P+zevRvm5ual8jbuXx08eBBpaWlwc3PDrFmzMHr0aAgh4OLiAnt7e3h4eMDHxwceHh4wNTUtdef5r97k26RJE+zZswctW7bU9KgePnw4hg4dCl9fX3h4eEAikSAwMLDA24OlwdvneOrUqRg+fDjkcjnatm2Lzp07o3Xr1kZ1joHcOSclJcHKyipXMVeaf18DwHfffYdXr15h3bp1WLduHQDA1dUV6enpZea7/LYDBw7AxcUFPj4+AID09HR069YNo0aNwpEjR+Ds7AwAOH/+POrWrWvIUPPFGTSIiIioVEgf/5/XHSt0JGvVVZiHdCxwmwEDBmDZsmVo0KCBZllAQADs7Ozw/PlzzdBhpqam8Pf31zy7WZKw2CMiIqJSId3v1/fqQVuoiuVgHthad+2VUCz2iIiIiIyYwTtoEBEREZH+sNgjIiIiMmIs9oiIiMqYy5cvQ6FQFLrdgwcPco2zl5CQgBEjRsDT0xPjx4+HUqnUZ5ikIyz2iEqRzMxMREZGYu/evTh27JjO29+xY4fO2yzItGnT4OLigt27dyM8PFyrfR4/fozjx4/r5PjJyck4ePAgAGDDhg24cuWKTtolKsk2btyIOXPmIDOz4I4O+/fvx9SpU5GUlJRr38GDB2PXrl1o1KiRZopLKtlK9wBPRGVMYmIiIiMjERERoZf2Q0JC4OXlpZe283L69GmcPXv2vfY5e/Ys7t69i65du/7t49+8eRPHjx9H//79MW7cuL/dHlFp8Gau35kzZwJ4/T14M65nhQoVEBgYCGtra5QvXx47duxA9+7dNfv6+flBCAG1Wo0nT57gww8/NEgO9H5Y7BGVIt999x1u376NBg0aaMZz2rBhA0xNTfH06VO4u7vj7NmzuHHjBoYPHw5PT0/8+uuvWLVqFWQyGWrUqIEFCxYgLi4Ovr6+MDExgVqtxsqVK7F//368fPkSAQEBmD59OmbPno2UlBQkJCTA09MTnp6eUCgU+Pjjj/HHH3/AwsICLVu2xH//+1+8evUKW7ZswbFjx3D06FGkpqbixYsX+PLLL9GzZ888cwkICIBSqcT48ePRvXt33L17F+7u7hg/fjwqVKiATp06wcLCAvv374dUKsUnn3wCX19fbNiwARkZGWjevDm6deuWZ9srV67EtWvXkJycjAYNGmDJkiVISkqCj48PUlJSNHNPf/fdd7hx4wbCw8Nx6dIl9OnTBxERERg+fDhat26Nq1evYt26dVi7di38/f3x4MEDqNVqTJkyBW3atNHnqSbSm549eyIuLk7zeu7cuQgMDETdunURGRmJTZs2YerUqejSpcs7+0okEmRnZ2PgwIHIzMzEl19+WZyhUxGx2CMqRby9vXHr1i107Pi/QUCfPn2K/fv34/r16/jqq69w5MgRxMfHY+LEifDw8MDcuXOxa9cuVKpUCatXr8a+ffugUqnQtGlTzJgxA+fPn0dKSgrGjx+PHTt2ICAgANevX0ffvn3Ro0cPxMfHa2ayAV5PYzhnzhyMHj0aZmZm2Lp1K3x8fHDu3DkAr0eX37p1K5KSkuDq6opu3brlOUtEQEAAjhw5gpCQEOzdu1ezPDExET/88APkcjlcXFzg7++Ppk2bYteuXRBCYNy4cbh7926+hZ5SqYSNjQ22bt0KtVqNvn37Ij4+Hhs3bkTXrl3h4eGBixcv4sqVK/D29kZYWBjc3Nxw6dIlAK9nCti3bx9at26NvXv3YtiwYYiMjETFihURGBiIFy9ewMvLCz/++KPOziuRId25cwfz588HAKhUKtSsWbPA7U1NTXHo0CGcPn0aPj4+xf74B70/FntEpVy9evVgamoKa2trODg4QC6Xo3z58sjMzERSUhISEhIwZcoUAEBGRgbatWuHCRMmYOPGjRgzZgysra0xderUXG3a2dlh+/bt+Pnnn2FlZZVrvsc3c/ba2NhopgaysbHRPP/TqlUrSKVS2NnZwcbGBklJSahcubLW+VSvXh1yuRwAsGTJEmzZsgXLli1Ds2bNoM2woOXKlUNSUhKmTZsGCwsLpKWlQaVS4d69e5p5Plu0aIEWLVogJibmnf07duyI5cuXIzk5GefPn8ecOXOwcOFCXLhwQfNMX3Z2NpKSkmBra6t1XkQlVa1atbB06VJ8+OGHuHDhAhITE/PdNiAgAL169YKTkxMsLS1L1Zy/ZRmLPaJSRCqVQq1W51pW0C/bihUrokqVKli3bh2sra1x7NgxWFhY4NixY3B0dMTEiRMRFRWFTZs2YcmSJZpiasuWLWjWrBk8PT1x9uxZzQTn2rh+/TqA15OpK5VKVKpU6b1zfCMiIgLz589HuXLlMHr0aFy6dCnP9+Btp06dwpMnT7B69WokJSXhyJEjEEKgTp06uHr1Kho0aIBz587h5MmT+PTTT99pSyqVolevXggICICzszNkMhlq166NKlWqwNvbGxkZGQgJCUGFChXeKy+ikiogIAA+Pj7Izs6GRCLB4sWL891WoVAgICAA//znPyGVShEQEFB8gVKRsdgjKkUqVaoElUqFjIwMrbaXSqWYPXs2xo0bByEELC0tsWzZMqSmpsLHxwchISFQq9Xw9fUFANSpUwfTp0/H0KFDsWjRIhw6dAjW1taQyWTIysrS6pjPnj3DiBEjkJKSAn9/f8hksiLn+/HHH8PT0xOWlpawt7fHP/7xD1hZWSEkJASNGzdG375939mnadOmWLduHT777DNIJBLUqFEDCQkJ8Pb2hp+fHw4cOAAACAwMhFwux61bt7Bt27Zcbbi4uMDZ2RmHDx8GALi7u2POnDnw8vKCUqmEp6dnrqKUqLSpXr26pqNXkyZNEBoamu+20dHRmp/r1KlT4LZUMnG6NCLSmb179+Lu3buYPn26oUMhIqL/xyt7RKRX3377bZ7PxgUGBqJGjRpFbjc8PBxRUVHvLJ82bRqaN29e5HaJiIwNr+wRERERGTE+dEJERERkxFjsERERERkxFntERERERozFHhEREZERY7FHREREZMRY7BEREREZsf8Dh1JLdmT6Yq8AAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "date_first_booking\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "gender\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "age\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAn8AAADXCAYAAABrnjdRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAABNqUlEQVR4nO3deXxU1dnA8d+dfZIJgSQS1gAJoCgiiwrKJiAuiIhsAhJEsa9QQaVFWayA7CCCKyoVQSM1LIptkVaLGxWBahAR2QTZl5CQdSaZ9Z73j8hoJECAhEkmz7cf2tx7zz3znMwkeXrOPedoSimFEEIIIYSoEgyhDkAIIYQQQlw+kvwJIYQQQlQhkvwJIYQQQlQhkvwJIYQQQlQhkvwJIYQQQlQhkvwJIYQQQlQhkvwJIcLa4cOHGT16dLnVP3XqVF5++eWLvv8vf/kL27dvB+Dpp5/m66+/vui6Vq5cybJlywB47733WLRo0UXXJYQIX6ZQByCEEOXp2LFj7N+/P9RhnNXXX3/NfffdB8CMGTMuqa60tDSaNGkCwKBBgy45NiFEeJLkT4gwpus6M2fO5Pvvv8flcqGUYvr06bRp04asrCwmTJjAoUOHqF69OldccQVNmjRh9OjR7Nu3jxkzZpCTk0MgECA5OZl+/foVq/urr75izpw5/POf/wQgLy+Pbt26sW7dOj766CNSU1Mxm81YrVamTp1K48aNi93v9/t57rnn+OKLLzAajbRq1YrJkyejaRqzZ89m48aNGI1GWrRowYQJE3A4HHTt2pUXX3yRa6+9FiB4XKNGDYYNG0bnzp35/vvvyc3NZcyYMdx+++385S9/IT09neHDh/Pss89y//33k5SUxNGjR+nduzd79+7l+eefB4qSp2nTpvHhhx+e9XvqdDp5+umn2bVrFzVr1sRoNNKmTRsA0tPTmTp1KsePH8fn83HXXXcxYsQI/H4/06ZNY8uWLZjNZurVq8esWbNYtGgRJ0+eZOzYscydO5d58+Zx//3307x58xLb06NHDzIzM5k0aRKnTp0iIyODunXr8sILL7BlyxY+++wzNmzYgM1mIysri+zsbCZNmsRPP/3E1KlTycnJQdM0HnroIXr37s3mzZtZsGAB9evX56effsLr9TJp0iTatWtXVh9BIURFpIQQYWvLli1q9OjRKhAIKKWUeuONN9QjjzyilFJqzJgxau7cuUoppdLT01X79u3VSy+9pHw+n+rRo4favn27UkqpvLw8deedd6rvvvuuWN26rqsuXbqobdu2KaWUWrZsmfrzn/+s/H6/uuaaa1R6erpSSqnVq1er1NTUM2J7++231f33368KCwtVIBBQjz/+uFq9erV68cUX1ahRo5TX61WBQECNHz9ePfPMM0opVez1fnt8+PBh1bRpU/XZZ58ppZT697//rW655RallFKbNm1Sd911l1JKBct98803SimlMjMzVevWrVV2drZSSqknn3xSvffee+f8ns6YMUM99dRTStd1derUKdWpUyf10ksvKaWUSk5OVp9++qlSSim3262Sk5PVRx99pL755ht1xx13KF3XlVJKzZ07V6WlpZ3RpiFDhqh//etf52zP0qVL1RtvvBF8Dx5++GG1ePFipZRS48aNU2+++aZSSqmXXnpJPfvss8rn86lu3bqpjz/+WCml1IkTJ1THjh3Vli1b1KZNm1SzZs3Ujh07lFJKLV68WN1///3nbL8QovKTnj8hwlirVq2Ijo4mNTWVw4cPs3nzZiIjIwH48ssvWb16NQA1a9bkjjvuAODAgQMcOnSIiRMnButxu93s2LGDli1bBs9pmka/fv1YvXo11157LR988AFPPvkkRqORO+64g4EDB3LLLbfQvn177r777jNi+/rrr7nnnnuw2WwAvPDCCwD069ePMWPGYDabAUhOTubRRx89b1vNZjOdO3cG4OqrryYnJ6fEciaTKdiO2NhYbrnlFv7+97/Tu3dvvvrqKyZPnnzO19m4cSMTJ05E0zRiYmLo3r07AAUFBXzzzTfk5uby4osvBs/t2rWLDh06YDQa6d+/Px06dOD222+nRYsWF9WeBx54gG+//ZYlS5Zw4MABfvrpJ6677rqz1nPgwAE8Hg+33XYbAPHx8dx2223897//pW3bttSpU4dmzZoFX+f0Z0IIEb4k+RMijH3xxRfMmDGDBx98kG7dupGYmMg//vEPoCgJUr/Z2ttgKJr/FQgEqFatGn//+9+D1zIzM4mKijqj/r59+9K7d2/69+9Pfn4+bdu2BWDevHns2bOHr7/+mr/+9a+sWrWK1157rdi9JlPxXz+ZmZnouo6u68XO67qOz+cLHv82Zq/XG/zabDYH26Bp2lm/JxaLpdhr33///UyZMgWTycRtt90WTI7P5bcx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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "signup_method\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "signup_flow\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoEAAADXCAYAAABlG4t7AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAABfXUlEQVR4nO3dd3wUZf7A8c8zszW7qQRCKKEEkCYCimA/RBRRUVAUFNSznOLZf56A5eQsiO3U09M7PSuggB5yinoqqIciRVGk9xoIIZC6SbbNPL8/NkSRAEETNoHv+/UKy87MPvvdmezuN09VWmuNEEIIIYQ4qhjxDkAIIYQQQhx+kgQKIYQQQhyFJAkUQgghhDgKSRIohBBCCHEUkiRQCCGEEOIoJEmgEEIIIcRRSJJAIRqIpUuXcuutt8Y7jCqWZTFq1CjOOeccJk2axDHHHENBQUG8wzrsSktLufLKK+us/FdeeYUxY8b86sc///zzzJo1C4Bnn32WGTNm/OqyvvzyS5599lkAZs+ezcMPP/yryxJCxJ8j3gEIIWrm2GOP5W9/+1u8w6iSl5fH119/zeLFizFNk4ceeijeIcVFcXExS5cujXcY+7VgwQLatWsHwG233fabylq6dCnFxcUA9OvXj379+v3m+IQQ8SNJoBD1TFlZGWPHjmXz5s0YhkGXLl148MEH+fbbb3nooYeYOXMmBQUFjB07li1btpCSkkLjxo1p3749t9xyC8ceeyx/+MMfmDt3Ljt37uTKK6/k6quvZvr06XzyySf885//BNjr/pgxY1BKsX79egoKCjjllFO47777cDqd1cYYCAS47rrriEajDBkyhOeee26v/X//+9/58MMPMU2TNm3acP/99/Pjjz/yyiuv8PbbbwMwYMAAzj33XG677TZ27NjBJZdcwpw5czCMWAPFxo0bGTZsGF999RUulwvLsujbty+vvvoqGzZs4MUXX0QphWma3H333fTq1WufOP/5z3/y3nvv4XA4aNWqFRMmTCAxMbHa+Bo3bszIkSO54oorGDBgAMBe9/d3XseOHUswGOTCCy9k+vTpHHfccfTr149Vq1ZxwQUX8PXXXzNlyhQAtm/fzqWXXsrnn3+Oy+Wq9txGIhEefvhhvvnmGxo1akSjRo1ITEwEYrWOjzzyCGvWrCESiXDSSSdx991343A4+Nvf/sZnn32G0+kkNTWVRx99lM8++4xly5bx+OOPY5oms2fPpn379lx77bX7fT3l5eWMGzeOTZs2UVxcjM/n48knn6S0tJQpU6ZgWRaJiYm0atWq6vdnx44djBs3jm3btqG15qKLLuK6664jJyeHq6++mjPOOIMff/yR4uJi7rjjDgYOHHiobwshRB2Q5mAh6pnPPvuMsrIy/vOf//Duu+8CsHXr1r2Oefjhh2nXrh0ff/wxzz77LN9//33VvnA4TGpqKlOmTOFvf/sbTz31FKFQ6KDPu2rVKl577TU++ugj1q9fz9SpU/d7rN/v56WXXsLj8fCf//yHrKysqn3//ve/+eqrr3j33Xf54IMPaN++PWPGjOHUU09lzZo1lJSUkJOTQyAQYN68eUCsafGss86qSgAB2rRpQ/v27fn8888B+Prrr2nevDnt2rXj8ccf54EHHmD69OncdtttLFiwYJ8YZ8+ezfTp05k6dSozZ86kRYsWTJo0ab/xHcz+zuujjz5adR5M0yQSidC3b18++eQT/vCHP7BlyxbWrVsHwDvvvMPgwYP3mwACvPXWW2zatIkPP/yQV199ldzc3Kp948ePp0uXLkyfPp0ZM2ZQWFjIa6+9Rm5uLm+88Qb//ve/mT59OqeccgpLlizhiiuuoGvXrtx9993079+/Rq9nzpw5JCUlMW3aND755BO6du3K5MmTOe644xg2bBgDBw7kjjvu2Kusu+66i969e/PBBx/w9ttv8/777/Phhx8Csd/dU089lXfffZe77rqLJ5544qDnWghxeEgSKEQ9c/zxx7Nu3TpGjhzJSy+9xFVXXUWrVq32OuZ///sfl112GQBNmjSpqrnaY08zXZcuXQiHw5SXlx/0eQcPHozP58PlcnHhhRfy9ddf/6r458yZw5AhQ0hISADgyiuvZP78+RiGwcknn8zcuXP56quvuOyyy8jJyaG0tJTPP/+cc845Z5+yhg4dynvvvQfEai6HDh0KwHnnncfNN9/MvffeS0lJCddff/0+j503bx4DBgwgOTkZgLFjxzJq1Kj9xhcOhw/62mp6Xk844QQAXC4XQ4cOZdq0aViWxXvvvVd13fZn3rx5nH/++bhcLhISErjggguq9n355ZdMnTqVCy+8kCFDhrBkyRLWrFlDRkYGHTt2ZPDgwTz22GN06tSJs84661e9ngEDBjB48GAmTpzIww8/zMKFCw/4+1NeXs7333/PFVdcAUBiYiJDhgxhzpw5ADidTs444wwAOnfuTFFR0UHjEkIcHtIcLEQ907JlSz777DMWLFjA/Pnz+f3vf899991Hampq1TEOh4OfL/v98xo0ALfbDYBSCgCtNUqpvR4TiUT2eoxpmlX/11rvU2ZN/XI5ctu2iUajAPTv3585c+ZQUlLCddddx4YNG5g1axZr1qyptjl3wIABPProo6xfv55vv/2WCRMmAHDHHXdwySWX8PXXXzN9+nReeuklpk+fvlfMpmlWvX6AkpISSkpKDhjfL+P/5Tmq7rxWZ0+CCXDZZZcxdOhQTjzxRNq3b0+LFi2qfcz+/Py62LbNs88+S3Z2dtVrUkphGAaTJk1i6dKlzJs3j/Hjx9O7d2/uu+++A5Zd3et56623mDZtGldccQUXXHABKSkp5OTk7LcM27YPeE6dTmfVdfn59RBCxF+DqAlcsmRJvEMQlTZt2hTvEI54b731FmPHjuXUU0/lT3/6E6eeeipr167d65gzzjiDd999l02bNlFYWMisWbMO+gWblpbG2rVrCYVCRKNRvvjii732f/zxx4TDYUKhEO+99x59+/b9VfGfeuqpTJ8+var2aOLEifTq1QuXy8Xvfvc75s2bx8qVK+nWrRunnHIKzz77LKeffjoOx75/k7rdbs477zzGjBnD2WefjdfrJRqNcuaZZ1JeXs7w4cN54IEHWL9+/V6JHMDJJ5/MZ599RiAQAOC5557j9ddfP2B8aWlpLFu2DIAtW7awevXqg75eh8OBZVls3Lix2v3NmjWje/fujB8/nuHDhx+0vNNOO40ZM2YQCoUIhUJ89NFHe53b119/Ha014XCYUaNGMWnSJFatWsX5559PdnY2N9xwA1dffXVV7KZp7nNuDuTrr79m8ODBDB06lDZt2vD5559jWdZ+y/L7/Rx33HFMnjwZiPVbnDFjBieffHKNn7O2yeeUEDXTIGoC93wAifirqKiIdwhHvIsuuoiFCxcycOBAvF4vzZo148orr2TVqlVVx4wdO5b77ruP66+/nqZNm9KsWTM8Hs8Byz3llFPo1asX5557Lo0bN6Z37957JTkej4fLL7+ckpISzjnnHC6++OJfFf8ll1xCbm4uQ4cOxbZtWrVqxZNPPglAUlIS2dnZeL1eTNPk1FNP5d577+Xss8/eb3lDhw5l0qRJjBs3DoglXffccw933XUXDocDpRTjx4/fp5/dGWecwbp166oSr3bt2vHQQw+RkJCw3/hGjRrFmDFj+N///kfbtm2rmnUPpHHjxnTu3Jlrr72Wf//739UeM2TIEB566KGqZtEDGTZsGFu2bOH8888nJSVlr64A9957L4888ggXXHABkUiEk08+meuuuw6n08m5557LxRdfTEJCAh6Pp6oWsG/fvjz22GP71GruzzXXXMOf//xnpk+fjmmadOnShTVr1gBw0kknccstt+B0OunSpUvVY5588kkefPBBpk+fTjgc5oILLmDIkCFs27atRs9Z2+RzSoiaUXp/7Rn1yA8//ECPHj3iHYYAVq5cSadOneIdxlFv8uTJdO7cGY/HQ3Z2Npdffjm33HJLjZKM6owZM6Zq1Kj4dfb33rBtmwcffJBmzZrxhz/8IQ6RHX3kc0qImmkQNYFCiL3tqdUqLy/HNE0GDBjwqxPAA7n88sspKyurdt/kyZPx+/21/pxHkkAgQN++fenWrRt333131XY5r0KI+kBqAsUhkb+w6xe5HvWHXIv6Q66FEDXTIAaGCCGEEEKI2iVJoBBCCCGOGEVFRXzwwQe1Vt6cOXMOef3uUCjEO++8A8TmOJ09e/YhP+9nn31GXl4e+fn5VQPjapskgUIIIYQ4YqxevbpqpaF4yc/Pr0oChwwZ8qvW2X7zzTcJBAI0bty4zpLABjEwRAWLKF/+KQld9j+NhBBCCCEalmAwyNixY9m+fTuRSIR77rmHKVOmkJOTg2VZ/P73v2fgwIGMHDmScePGkZ2dzdtvv82uXbsYPHgw//d//0fTpk3ZunUrxx57LH/5y1/4xz/+wapVq5g6dSo//PADRUVFFBUVccwxx9ChQweuuOIKiouL+f3vf8/06dOrjWv9+vXcc889eL1evF5v1cpDH3/8Ma+//jqGYXD88cdz1113sWjRIh577DEcDgder5dnn32Wf/zjH6xbt47nn38erTXp6em0bduWl19+GafTSU5ODgMHDmTUqFGsWbOGCRMmYFkWhYWFjBs3jpKSElauXMno0aN54oknGD16NNOmTWPu3Lk888wzuN1uUlJSGD9+PCtXrqy23JpoEDWBKhSg5ONHiexYdfCDhRBCCNEgTJkyhebNmzN16lT++te/snDhQtLS0pgyZQqvvfYazzzzDAUFBft9/KZNm3jkkUd45513mDNnDvn5+dx444306dOnaonGPn36MGXKFK677jpmzJgBwMyZM/dakvGXHn/8cW699VZef/31qoGpRUVFVZPOv/322+Tl5TF37lxmzZrFueeey6RJkxg+fDglJSXceOONtGvXjptvvnmvcrdv385zzz3H1KlT+de//gXAunXrGD16NG+88QbXX38906dP53e/+x2dOnXisccew+l0ArEVfe6//36ef/55Jk2aRK9evXjxxRf3W25NNIgk0E5II+GESyl85y7sipJ4hyOEEEKIWrBhwwa6d+8OQOvWrcnPz69aQtLv95Odnc3WrVv3eszPJzXJysrC7/djmiaNGzcmFArt8xxt2rQBYkty+nw+1q1bxwcffMCFF16437g2bdpEt27dAOjZsycQW0WooKCAP/zhD4wcOZL169ezZcsWbrzxRnbu3MlVV13Ff//732pXP9qjQ4cOOByOqkndIbb++wsvvMDo0aP55JNP9rvCT2FhIX6/n4yMDAB69epVtZpUdeXWRINIAkHhbt0LZ2Zniv5zP1rb8Q5ICCGEEL9RdnY2S5cuBWDr1q18+OGHfPfdd0Bsns01a9bQokULXC4X+fn5AKxYsaLq8dUtl2kYBrZtV3vMpZdeygsvvEBGRgZpaWkHjOuHH34AqFpKskWLFmRmZvLqq68yceJERowYQffu3Xn//fcZPHgwEydOpH379kybNm2fGA4U7yOPPMKtt97KY489RocOHaqS3F+u956amkogEGDnzp0ALFy4kNatW++33JpoEH0C9/D2GELprL9SseRDEo7bfzWuEEIIIeq/YcOGcc899zBixAgsy+Jf//oXkydPZvjw4YRCIW6++WYaNWrElVdeyV/+8heaNWtGkyZNDlhmVlYWa9as4fXXX99n31lnncWDDz7IE088ccAyxowZw+jRo3nllVdIS0vD7XaTlpbG1VdfzciRI7Esi+bNm3PuuecSDoe577778Hq9GIbBgw8+SKNGjYhEIjzxxBMHrZkbNGgQt912G0lJSTRt2pTCwkIAevTowd13381DDz0ExBK9hx9+mFtuuQWlFMnJyTz66KP7rC1/KBrGZNELv6Fzk9i6oKFN3xLZvpxGlz8f56iOTjIJa/0i16P+kGtRf8i1EPtTUVHBiBEjeOeddzCMBtIYWofqpCbQtm3GjRvH6tWrcblc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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "language\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "affiliate_channel\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "affiliate_provider\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "first_affiliate_tracked\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "signup_app\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "first_device_type\n", "skip\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhQAAADQCAYAAABfnPhuAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAQQUlEQVR4nO3cb0iV9//H8dc5HrU/R4ow+jdOhM2wKPTUvbBGTorZYCl2XCENChqxBUto0Y0SCWeNwahFo0XGgjVtA6kN2rIim0F/XLoJp4RuuNWNipWzc1LPTtf1uzG+54e0nWv58eRlPh+3PNd1ndMb3oueu05dHtu2bQEAABjwjvQAAABg9CMoAACAMYICAAAYIygAAIAxggIAABgjKAAAgLH/FBQdHR2qrKx85vj58+dVVlamUCikxsbGYR8OAACMDj6nC7744gudOnVK48ePH3T8r7/+0kcffaRvvvlG48eP19tvv60VK1YoOzs7ZcMCAAB3crxDEQgEdODAgWeO3759W4FAQJMmTVJGRoYWL16sa9eupWRIAADgbo53KFauXKk7d+48czwSiSgrKyvxeuLEiYpEIo6/4M8///zM3Q68eAMDA8rMzBzpMcY89uAO7ME92IU75OXlPfd7HIPi3/j9fkWj0cTraDQ6KDD+jcfjGdKgGF7hcJg9uAB7cAf24B7sYvQa8r/yyMnJUXd3t3p6ehSLxXT9+nUVFBQM52wAAGCUeO47FKdPn9aTJ08UCoW0Y8cObdy4UbZtq6ysTNOmTUvFjAAAwOX+U1C88soriX8W+uabbyaOr1ixQitWrEjNZAAAYNTgwVYAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwJhjUFiWpV27dikUCqmyslLd3d2Dzh89elSlpaUqKyvT2bNnUzYoAABwL5/TBc3NzYrFYmpoaFB7e7vq6up06NAhSVJvb6++/PJL/fjjj+rr69Nbb72l4uLilA8NAADcxfEORVtbmwoLCyVJ+fn56uzsTJwbP368Zs6cqb6+PvX19cnj8aRuUgAA4FqOdygikYj8fn/idVpamuLxuHy+v986Y8YMlZSU6OnTp9q8ebPjL2hZlsLhsMHIGA79/f3swQXYgzuwB/dgF+6Ql5f33O9xDAq/369oNJp4bVlWIiZaWlp0//59nTt3TpK0ceNGBYNBLVq06F8/z+v1DmlQDK9wOMweXIA9uAN7cA92MXo5fuURDAbV0tIiSWpvb1dubm7i3KRJkzRu3DhlZGQoMzNTWVlZ6u3tTd20AADAlRzvUBQXF6u1tVUVFRWybVu1tbWqr69XIBBQUVGRLl++rLVr18rr9SoYDGrp0qUvYm4AAOAijkHh9XpVU1Mz6FhOTk7i561bt2rr1q3DPxkAABg1eLAVAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADDmc7rAsixVV1fr1q1bysjI0J49ezR79uzE+YsXL+rgwYOybVsLFizQ7t275fF4Ujo0AABwF8c7FM3NzYrFYmpoaFBVVZXq6uoS5yKRiD7++GN9/vnnOnnypGbNmqVHjx6ldGAAAOA+jkHR1tamwsJCSVJ+fr46OzsT527cuKHc3Fzt3btX69atU3Z2tqZMmZK6aQEAgCs5fuURiUTk9/sTr9PS0hSPx+Xz+fTo0SNduXJFTU1NmjBhgtavX6/8/HzNmTPnXz/PsiyFw+HhmR5D1t/fzx5cgD24A3twD3bhDnl5ec/9Hseg8Pv9ikajideWZcnn+/ttkydP1sKFCzV16lRJ0pIlSxQOh5MGhdfrHdKgGF7hcJg9uAB7cAf24B7sYvRy/MojGAyqpaVFktTe3q7c3NzEuQULFqirq0sPHz5UPB5XR0eH5s6dm7ppAQCAKzneoSguLlZra6sqKipk27Zqa2tVX1+vQCCgoqIiVVVVadOmTZKkVatWDQoOAAAwNjgGhdfrVU1NzaBjOTk5iZ9LSkpUUlIy/JMBAIBRgwdbAQAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjjkFhWZZ27dqlUCikyspKdXd3/+M1mzZt0okTJ1IyJAAAcDfHoGhublYsFlNDQ4OqqqpUV1f3zDWffvqpent7UzIgAABwP8egaGtrU2FhoSQpPz9fnZ2dg86fOXNGHo8ncQ0AABh7fE4XRCIR+f3+xOu0tDTF43H5fD51dXXpu+++0/79+3Xw4MH/9AtalqVwODz0iTEs+vv72YMLsAd3YA/uwS7cIS8v77nf4xgUfr9f0Wg08dqyLPl8f7+tqalJ9+7d04YNG3T37l2lp6dr1qxZWrZs2b9+ntfrHdKgGF7hcJg9uAB7cAf24B7sYvRyDIpgMKgLFy7ojTfeUHt7u3JzcxPntm/fnvj5wIEDys7OThoTAADg5eQYFMXFxWptbVVFRYVs21Ztba3q6+sVCARUVFT0ImYEAAAu5xgUXq9XNTU1g47l5OQ8c937778/fFMBAIBRhQdbAQAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjBAUAADBGUAAAAGMEBQAAMEZQAAAAYwQFAAAwRlAAAABjPqcLLMtSdXW1bt26pYyMDO3Zs0ezZ89OnD927Ji+//57SdLy5cv13nvvpW5aAADgSo53KJqbmxWLxdTQ0KCqqirV1dUlzv3+++86deqUvv76azU2Nuqnn37SzZs3UzowAABwH8c7FG1tbSosLJQk5efnq7OzM3Fu+vTpOnLkiNLS0iRJ8XhcmZmZKRoVAAC4lWNQRCIR+f3+xOu0tDTF43H5fD6lp6drypQpsm1b+/bt0/z58zVnzpykn2dZlsLhsPnkMNLf388eXIA9uAN7cA924Q55eXnP/R7HoPD7/YpGo4nXlmXJ5/v/tw0MDGjnzp2aOHGidu/e7fgLer3eIQ2K4RUOh9mDC7AHd2AP7sEuRi/Hv0MRDAbV0tIiSWpvb1dubm7inG3b2rJli+bNm6eamprEVx8AAGBscbxDUVxcrNbWVlVUVMi2bdXW1qq+vl6BQECWZenq1auKxWK6dOmSJGnbtm0qKChI+eAAAMA9HIPC6/WqpqZm0LGcnJzEz7/++uvwTwUAAEYVHmwFAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIwRFAAAwBhBAQAAjBEUAADAGEEBAACMERQAAMAYQQEAAIw5BoVlWdq1a5dCoZAqKyvV3d096HxjY6NKS0u1du1aXbhwIWWDAgAA9/I5XdDc3KxYLKaGhga1t7errq5Ohw4dkiQ9ePBAx48f17fffquBgQGtW7dOS5cuVUZGRsoHBwAA7uF4h6KtrU2FhYWSpPz8fHV2dibO/fLLLyooKFBGRoaysrIUCAR08+bN1E0LAABcyfEORSQSkd/vT7xOS0tTPB6Xz+dTJBJRVlZW4tzEiRMViUSSfp7H41E4HDYYGcOFPbgDe3AH9uAe7GLk+Xw+vfrqq8/3HqcL/H6/otFo4rVlWfL5fP94LhqNDgqMf5Kfn/9cAwIAAPdz/MojGAyqpaVFktTe3q7c3NzEuUWLFqmtrU0DAwN6/Pixbt++Peg8AAAYGzy2bdvJLrAsS9XV1erq6pJt26qtrVVLS4sCgYCKiorU2NiohoYG2batzZs3a+XKlS9qdgAA4BKOQQEAAOCEB1sBAABjBAUAADBGUAAAAGMpCwoe2e0OTns4duyYysvLVV5ers8++2yEpnz5Oe3hf9ds2rRJJ06cGIEJxwanPVy8eFFr165VeXm5qqurxV8xSw2nPRw9elSlpaUqKyvT2bNnR2jKsaOjo0OVlZXPHD9//rzKysoUCoXU2Njo/EF2ivzwww/2hx9+aNu2bd+4ccN+9913E+fu379vr1692h4YGLB7e3sTP2P4JdvDb7/9Zq9Zs8aOx+O2ZVl2KBSyw+HwSI36Uku2h//55JNP7PLycvurr7560eONGcn28PjxY7ukpMT+448/bNu27cOHDyd+xvBKtoc///zTXr58uT0wMGD39PTYr7322kiNOSYcPnzYXr16tV1eXj7oeCwWs19//XW7p6fHHhgYsEtLS+0HDx4k/ayU3aHgkd3ukGwP06dP15EjR5SWliaPx6N4PK7MzMyRGvWllmwPknTmzBl5PJ7ENUiNZHu4ceOGcnNztXfvXq1bt07Z2dmaMmXKSI36Uku2h/Hjx2vmzJnq6+tTX1+fPB7PSI05JgQCAR04cOCZ47dv31YgENCkSZOUkZGhxYsX69q1a0k/y/FJmUM13I/sxtAk20N6erqmTJki27a1b98+zZ8/X3PmzBnBaV9eyfbQ1dWl7777Tvv379fBgwdHcMqXX7I9PHr0SFeuXFFTU5MmTJig9evXKz8/n98TKZBsD5I0Y8YMlZSU6OnTp9q8efNIjTkmrFy5Unfu3Hnm+FD+nE5ZUAz3I7sxNMn2IEkDAwPauXOnJk6cqN27d4/EiGNCsj00NTXp3r172rBhg+7evav09HTNmjVLy5YtG6lxX1rJ9jB58mQtXLhQU6dOlSQtWbJE4XCYoEiBZHtoaWnR/fv3de7cOUnSxo0bFQwGtWjRohGZdawayp/TKfvKg0d2u0OyPdi2rS1btmjevHmqqalRWlraSI350ku2h+3bt+vkyZM6fvy41qxZo3feeYeYSJFke1iwYIG6urr08OFDxeNxdXR0aO7cuSM16kst2R4mTZqkcePGKSMjQ5mZmcrKylJvb+9IjTpm5eTkqLu7Wz09PYrFYrp+/boKCgqSvidldyiKi4vV2tqqioqKxCO76+vrE4/srqys1Lp162Tbtj744AO+u0+RZHuwLEtXr15VLBbTpUuXJEnbtm1z/I8Gz8/p9wNeDKc9VFVVadOmTZKkVatW8T86KeK0h8uXL2vt2rXyer0KBoNaunTpSI88Zpw+fVpPnjxRKBTSjh07tHHjRtm2rbKyMk2bNi3pe3n0NgAAMMaDrQAAgDGCAgAAGCMoAACAMYICAAAYIygAAIAxggIAABgjKAAAgLH/A/qVO3akUuy3AAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "first_browser\n", "skip\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "for feature_name in train_df.drop(['country_destination','id'],axis=1).keys():\n", " plot_feature_by_label(train_df, feature_name, 'country_destination', feature_name + ' vs country_destination')\n", " \n", "#이번 같이 데이터값 대부분이 문자인 경우엔 잘 안됨\n", "#x 데이터형이 [숫자, 날짜]중 하나로 치환되어야함!" ] }, { "cell_type": "code", "execution_count": null, "id": "bacdac4e", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "4e70c392", "metadata": {}, "source": [ "# 2 데이터 전처리" ] }, { "cell_type": "markdown", "id": "847076fd", "metadata": {}, "source": [ "## 2.1 이상치를 특정 값으로" ] }, { "cell_type": "code", "execution_count": 228, "id": "786e54d3", "metadata": {}, "outputs": [], "source": [ "#결측치로 처리\n", "train_df.loc[~train_df['age'].between(18, 100), 'age'] = np.nan" ] }, { "cell_type": "markdown", "id": "23709c80", "metadata": {}, "source": [ "## 2.2 중복/누락 데이터 처리" ] }, { "cell_type": "code", "execution_count": 229, "id": "4b8175fc", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0 False\n", "1 False\n", "2 False\n", "3 False\n", "4 False\n", " ... \n", "213446 False\n", "213447 False\n", "213448 False\n", "213449 False\n", "213450 False\n", "Length: 213451, dtype: bool" ] }, "execution_count": 229, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#중복 행 조회\n", "train_df.duplicated()" ] }, { "cell_type": "code", "execution_count": 230, "id": "95086151", "metadata": {}, "outputs": [], "source": [ "#중복 행 제거\n", "train_df = train_df.drop_duplicates()" ] }, { "cell_type": "code", "execution_count": 231, "id": "340f852d", "metadata": {}, "outputs": [], "source": [ "#누락 데이터 제거\n", "train_df = train_df.dropna()" ] }, { "cell_type": "code", "execution_count": 232, "id": "f0b6a7eb", "metadata": {}, "outputs": [], "source": [ "#누락 데이터 채우기\n", "train_df = train_df.fillna(0) #0으로 채워짐" ] }, { "cell_type": "markdown", "id": "4ae54e09", "metadata": {}, "source": [ "## 2.3 행&열 삭제" ] }, { "cell_type": "code", "execution_count": 233, "id": "d4c36040", "metadata": {}, "outputs": [], "source": [ "#drop 함수로 열 삭제\n", "train_data = train_df.drop('id',axis=1) #행 삭제할 땐 axis=0" ] }, { "cell_type": "markdown", "id": "584e08ad", "metadata": {}, "source": [ "특정 열 값들 가져오기" ] }, { "cell_type": "code", "execution_count": 234, "id": "a1e733b0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'OTHER',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'OTHER',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'OTHER',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " '-unknown-',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " '-unknown-',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " 'MALE',\n", " 'FEMALE',\n", " '-unknown-',\n", " '-unknown-',\n", " 'MALE',\n", " 'FEMALE',\n", " ...]" ] }, "execution_count": 234, "metadata": {}, "output_type": "execute_result" } ], "source": [ "genders = [x for x in train_df['gender']]\n", "genders" ] }, { "cell_type": "markdown", "id": "9f3b02fe", "metadata": {}, "source": [ "## 2.4 One-hot-encoding" ] }, { "cell_type": "code", "execution_count": 235, "id": "98de64d0", "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", "
iddate_account_createdtimestamp_first_activedate_first_bookingagesignup_methodsignup_flowlanguageaffiliate_channelaffiliate_provider...first_browser_Safarifirst_browser_SeaMonkeyfirst_browser_Silkfirst_browser_SiteKioskfirst_browser_SlimBrowserfirst_browser_Sogou Explorerfirst_browser_Stainlessfirst_browser_TenFourFoxfirst_browser_TheWorld Browserfirst_browser_Yandex.Browser
24ft3gnwmtx2010-09-28200906092312472010-08-0256.0basic3endirectdirect...0000000000
3bjjt8pjhuk2011-12-05200910310601292012-09-0842.0facebook0endirectdirect...0000000000
487mebub9p42010-09-14200912080611052010-02-1841.0basic0endirectdirect...0000000000
6lsw9q7uk0j2010-01-02201001020125582010-01-0546.0basic0enothercraigslist...1000000000
70d01nltbrs2010-01-03201001031919052010-01-1347.0basic0endirectdirect...1000000000
..................................................................
2134157plqriggxp2014-06-30201406302301362014-06-3055.0basic0ensem-brandgoogle...0000000000
213439msucfwmlzc2014-06-30201406302347292015-03-1643.0basic0endirectdirect...0000000000
213441omlc9iku7t2014-06-30201406302351512014-08-1334.0basic0endirectdirect...0000000000
2134430k26r3mir02014-06-30201406302353402014-07-1336.0basic0ensem-brandgoogle...1000000000
213445qbxza0xojf2014-06-30201406302355472014-07-0223.0basic0ensem-brandgoogle...0000000000
\n", "

66837 rows × 54 columns

\n", "
" ], "text/plain": [ " id date_account_created timestamp_first_active \\\n", "2 4ft3gnwmtx 2010-09-28 20090609231247 \n", "3 bjjt8pjhuk 2011-12-05 20091031060129 \n", "4 87mebub9p4 2010-09-14 20091208061105 \n", "6 lsw9q7uk0j 2010-01-02 20100102012558 \n", "7 0d01nltbrs 2010-01-03 20100103191905 \n", "... ... ... ... \n", "213415 7plqriggxp 2014-06-30 20140630230136 \n", "213439 msucfwmlzc 2014-06-30 20140630234729 \n", "213441 omlc9iku7t 2014-06-30 20140630235151 \n", "213443 0k26r3mir0 2014-06-30 20140630235340 \n", "213445 qbxza0xojf 2014-06-30 20140630235547 \n", "\n", " date_first_booking age signup_method signup_flow language \\\n", "2 2010-08-02 56.0 basic 3 en \n", "3 2012-09-08 42.0 facebook 0 en \n", "4 2010-02-18 41.0 basic 0 en \n", "6 2010-01-05 46.0 basic 0 en \n", "7 2010-01-13 47.0 basic 0 en \n", "... ... ... ... ... ... \n", "213415 2014-06-30 55.0 basic 0 en \n", "213439 2015-03-16 43.0 basic 0 en \n", "213441 2014-08-13 34.0 basic 0 en \n", "213443 2014-07-13 36.0 basic 0 en \n", "213445 2014-07-02 23.0 basic 0 en \n", "\n", " affiliate_channel affiliate_provider ... first_browser_Safari \\\n", "2 direct direct ... 0 \n", "3 direct direct ... 0 \n", "4 direct direct ... 0 \n", "6 other craigslist ... 1 \n", "7 direct direct ... 1 \n", "... ... ... ... ... \n", "213415 sem-brand google ... 0 \n", "213439 direct direct ... 0 \n", "213441 direct direct ... 0 \n", "213443 sem-brand google ... 1 \n", "213445 sem-brand google ... 0 \n", "\n", " first_browser_SeaMonkey first_browser_Silk first_browser_SiteKiosk \\\n", "2 0 0 0 \n", "3 0 0 0 \n", "4 0 0 0 \n", "6 0 0 0 \n", "7 0 0 0 \n", "... ... ... ... \n", "213415 0 0 0 \n", "213439 0 0 0 \n", "213441 0 0 0 \n", "213443 0 0 0 \n", "213445 0 0 0 \n", "\n", " first_browser_SlimBrowser first_browser_Sogou Explorer \\\n", "2 0 0 \n", "3 0 0 \n", "4 0 0 \n", "6 0 0 \n", "7 0 0 \n", "... ... ... \n", "213415 0 0 \n", "213439 0 0 \n", "213441 0 0 \n", "213443 0 0 \n", "213445 0 0 \n", "\n", " first_browser_Stainless first_browser_TenFourFox \\\n", "2 0 0 \n", "3 0 0 \n", "4 0 0 \n", "6 0 0 \n", "7 0 0 \n", "... ... ... \n", "213415 0 0 \n", "213439 0 0 \n", "213441 0 0 \n", "213443 0 0 \n", "213445 0 0 \n", "\n", " first_browser_TheWorld Browser first_browser_Yandex.Browser \n", "2 0 0 \n", "3 0 0 \n", "4 0 0 \n", "6 0 0 \n", "7 0 0 \n", "... ... ... \n", "213415 0 0 \n", "213439 0 0 \n", "213441 0 0 \n", "213443 0 0 \n", "213445 0 0 \n", "\n", "[66837 rows x 54 columns]" ] }, "execution_count": 235, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cat_features = ['gender', 'first_browser']\n", "for f in cat_features:\n", " data_dummy = pd.get_dummies(train_df[f], prefix=f) # encode categorical variables\n", " train_df.drop([f], axis=1, inplace = True) # drop encoded variables\n", " train_df = pd.concat((train_df, data_dummy), axis=1) # concat numerical and categorical variables\n", "\n", "train_df" ] }, { "cell_type": "markdown", "id": "40ebd370", "metadata": {}, "source": [ "## 2.5 시계열 데이터로 변환" ] }, { "cell_type": "code", "execution_count": 236, "id": "747065a3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "40846" ] }, "execution_count": 236, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df['date_account_created'] = pd.to_datetime(train_df['date_account_created'])\n", "train_df['date_first_booking'] = pd.to_datetime(train_df['date_first_booking'])\n", "\n", "\n", "date = train_df['date_account_created']\n", "sub = train_df['date_first_booking'] - train_df['date_account_created']\n", "\n", "import datetime\n", "len([x for x in sub if x < datetime.timedelta(days=10)])" ] }, { "cell_type": "markdown", "id": "9e65e402", "metadata": {}, "source": [ "## 2.6 특정 열 데이터 타입 변환" ] }, { "cell_type": "code", "execution_count": 242, "id": "a9c681fa", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "dtype('int32')" ] }, "execution_count": 242, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df['age'] = train_df['age'].astype(int)\n", "train_df['age'].dtypes" ] }, { "cell_type": "markdown", "id": "5439d85a", "metadata": {}, "source": [ "# 3 상관관계 분석" ] }, { "cell_type": "code", "execution_count": 164, "id": "c22486c7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 164, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.heatmap(train_df.corr(), annot=True) #dtype이 수치형인것만 나오는거같음.." ] }, { "cell_type": "code", "execution_count": 165, "id": "72d7f171", "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", "
timestamp_first_activeagesignup_flow
timestamp_first_active1.000000-0.0776710.132124
age-0.0776711.000000-0.077737
signup_flow0.132124-0.0777371.000000
\n", "
" ], "text/plain": [ " timestamp_first_active age signup_flow\n", "timestamp_first_active 1.000000 -0.077671 0.132124\n", "age -0.077671 1.000000 -0.077737\n", "signup_flow 0.132124 -0.077737 1.000000" ] }, "execution_count": 165, "metadata": {}, "output_type": "execute_result" } ], "source": [ "train_df.corr()" ] }, { "cell_type": "markdown", "id": "5ea1b8c8", "metadata": {}, "source": [ "# 4 훈련/테스트 데이터 분리" ] }, { "cell_type": "markdown", "id": "96987586", "metadata": {}, "source": [ "## 4.1 레이블 분리" ] }, { "cell_type": "code", "execution_count": 166, "id": "d9740fd9", "metadata": {}, "outputs": [], "source": [ "X, y = train_df.drop('country_destination',axis= 1), train_df['country_destination']" ] }, { "cell_type": "markdown", "id": "b031a48e", "metadata": {}, "source": [ "## 4.2 데이터 분할" ] }, { "cell_type": "code", "execution_count": 167, "id": "d14eed4d", "metadata": {}, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split # 데이터 셋 분할\n", "\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.2, random_state = 42)" ] }, { "cell_type": "markdown", "id": "49486bce", "metadata": {}, "source": [ "# 5 주성분 분석" ] }, { "cell_type": "markdown", "id": "20adf966", "metadata": {}, "source": [ "데이터가 숫자로 되어있어야 해서 다른 데이터 사용\n", "//url을 통해 데이터 다운" ] }, { "cell_type": "code", "execution_count": 170, "id": "cc0ebb9d", "metadata": {}, "outputs": [], "source": [ "import requests\n", "\n", "data = requests.get(\"https://archive.ics.uci.edu/ml/machine-learning-databases/breast-cancer-wisconsin/wdbc.data\")\n", "dataset_path = os.path.join('data', 'wdbc.data')\n", "columns = [\n", " \"diagnosis\",\n", " \"radius_mean\", \"texture_mean\", \"perimeter_mean\", \"area_mean\", \"smoothness_mean\", \n", " \"compactness_mean\", \"concavity_mean\", \"points_mean\", \"symmetry_mean\", \"dimension_mean\", \n", " \"radius_se\", \"texture_se\", \"perimeter_se\", \"area_se\", \"smoothness_se\", \n", " \"compactness_se\", \"concavity_se\", \"points_se\", \"symmetry_se\", \"dimension_se\", \n", " \"radius_worst\", \"texture_worst\", \"perimeter_worst\", \"area_worst\", \"smoothness_worst\", \n", " \"compactness_worst\", \"concavity_worst\", \"points_worst\", \"symmetry_worst\", \"dimension_worst\",\n", " ]\n", "\n", "\n", "with open(dataset_path, \"w\") as f:\n", " f.write(data.text)\n", "\n", "dataset = pd.read_csv(dataset_path, names=columns)\n", "dataset.sample(5)\n", "X = dataset[dataset.columns[1:]]\n", "dataset['target'] = (dataset['diagnosis']=='B')*0 + \\\n", " (dataset['diagnosis']=='M')*1\n", "y = dataset['target']\n", "X_train, X_test, Y_train, Y_test = train_test_split(X, y, test_size=0.25)" ] }, { "cell_type": "markdown", "id": "485bbd18", "metadata": {}, "source": [ "RFECV 실행" ] }, { "cell_type": "code", "execution_count": 171, "id": "5ddcee1d", "metadata": {}, "outputs": [], "source": [ "from sklearn.feature_selection import RFECV\n", "from sklearn.tree import DecisionTreeClassifier\n", "min_features_to_select = 1\n", "clf = DecisionTreeClassifier(max_depth=2, min_samples_leaf=10, random_state=12)\n", "rfe = RFECV(estimator = clf, \n", " step=1,\n", " cv=5,\n", " scoring='accuracy',\n", " min_features_to_select = min_features_to_select\n", " )\n", "rfe = rfe.fit(X_train,Y_train)" ] }, { "cell_type": "markdown", "id": "6f782107", "metadata": {}, "source": [ "특징 선택을 위한 훈련 과정의 성능 그래프" ] }, { "cell_type": "code", "execution_count": 172, "id": "991e8c4f", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(7,5))\n", "plt.xlabel(\"Number of features selected\")\n", "plt.ylabel(\"Cross validation score (# of correct classifications)\")\n", "plt.plot(range(min_features_to_select, len(rfe.grid_scores_)+min_features_to_select), rfe.grid_scores_)\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "694a9685", "metadata": {}, "source": [ "위 사진을 보면 특징을 3개정도까지만 써도 충분한 정확도를 보여주고 그것보다 많은 특징을 썼을땐 성능을 그렇게 좌우하지 않는 걸 볼 수있음" ] }, { "cell_type": "markdown", "id": "3fef1566", "metadata": {}, "source": [ "선택된 특징 확인" ] }, { "cell_type": "code", "execution_count": 173, "id": "4587a345", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Optimal number of features : 3\n", "Best features : ['concavity_mean' 'radius_worst' 'points_worst']\n", "Drop features : ['radius_mean', 'texture_mean', 'perimeter_mean', 'area_mean', 'smoothness_mean', 'compactness_mean', 'points_mean', 'symmetry_mean', 'dimension_mean', 'radius_se', 'texture_se', 'perimeter_se', 'area_se', 'smoothness_se', 'compactness_se', 'concavity_se', 'points_se', 'symmetry_se', 'dimension_se', 'texture_worst', 'perimeter_worst', 'area_worst', 'smoothness_worst', 'compactness_worst', 'concavity_worst', 'symmetry_worst', 'dimension_worst']\n" ] } ], "source": [ "best_features = X_train.columns.values[rfe.support_]\n", "drop_features = [ column_name for column_name in columns[1:] if column_name not in best_features ]\n", "\n", "print('Optimal number of features :', rfe.n_features_)\n", "print('Best features :', best_features)\n", "print('Drop features :', drop_features)" ] }, { "cell_type": "markdown", "id": "5b5756c2", "metadata": {}, "source": [ "# 6 랜덤 포레스트" ] }, { "cell_type": "code", "execution_count": 176, "id": "c5237f0e", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy of Random Forest Classifier on training data: 1.00\n", "Accuracy of Random Forest Classifier on testing data: 0.97\n" ] } ], "source": [ "from sklearn.ensemble import RandomForestClassifier\n", "\n", "clf = RandomForestClassifier(max_features=4,random_state=0)\n", "clf.fit(X_train,Y_train)\n", "print('Accuracy of Random Forest Classifier on training data: {:.2f}'.format(clf.score(X_train,Y_train)))\n", "print('Accuracy of Random Forest Classifier on testing data: {:.2f}'.format(clf.score(X_test,Y_test)))" ] }, { "cell_type": "markdown", "id": "5776996e", "metadata": {}, "source": [ "## 모델 평가" ] }, { "cell_type": "code", "execution_count": 197, "id": "f79e0650", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[94, 3],\n", " [ 2, 44]], dtype=int64)" ] }, "execution_count": 197, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.metrics import accuracy_score, confusion_matrix, classification_report\n", "model = clf\n", "prediction = model.predict(X_test)\n", "cnf_matrix = confusion_matrix(Y_test, prediction)\n", "cnf_matrix" ] }, { "cell_type": "code", "execution_count": 198, "id": "9dca1894", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 0.98 0.97 0.97 97\n", " 1 0.94 0.96 0.95 46\n", "\n", " accuracy 0.97 143\n", " macro avg 0.96 0.96 0.96 143\n", "weighted avg 0.97 0.97 0.97 143\n", "\n" ] } ], "source": [ "report = classification_report(Y_test, prediction)\n", "print(report)" ] }, { "cell_type": "code", "execution_count": null, "id": "16dd280b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "a7a88a6b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "7d15fdd1", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "c00537d5", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "26e73e84", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "71879ce7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "a99b6e2f", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "e6d2da7f", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "7db07b1b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "d8bd711d", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "dc1033c9", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "bec3b213", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "1183a9db", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "99d0003e", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "56c8bccf", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "3627f491", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "c8c04855", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "2b00cafa", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "e707e987", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "47e4b26a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "0b084cb1", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "a1736a88", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "07df7624", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "1fe90491", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "e8ce2c63", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "25cb737b", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.11" } }, "nbformat": 4, "nbformat_minor": 5 }