{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Modo canonico - voi potete non farlo!\n",
"df = pd.DataFrame([[1,2], [3,4]],\n",
" index=['a', 'b'],\n",
" columns=['A', 'B'])"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"
\n",
" \n",
" \n",
" | \n",
" A | \n",
" B | \n",
"
\n",
" \n",
" \n",
" \n",
" a | \n",
" 1 | \n",
" 2 | \n",
"
\n",
" \n",
" b | \n",
" 3 | \n",
" 4 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" A B\n",
"a 1 2\n",
"b 3 4"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"a 1\n",
"b 3\n",
"Name: A, dtype: int64"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['A']"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"1"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.loc['a', 'A']"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"# /usr/lib/python3/dist-packages/pandas/tests/data/tips.csv\n",
"df = pd.read_csv(\"tips.csv\")"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"total_bill float64\n",
"tip float64\n",
"sex object\n",
"smoker object\n",
"day object\n",
"time object\n",
"size int64\n",
"dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Un'altra cosa fondamentale che distingue pandas da numpy\n",
"df.dtypes"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"total_bill 10.34\n",
"tip 1.66\n",
"sex Male\n",
"smoker No\n",
"day Sun\n",
"time Dinner\n",
"size 3\n",
"Name: 1, dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Attenzione: che cos'è? Una Series! E che tipo ha? object!\n",
"df.loc[1]"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"total_bill 10.34\n",
"tip 1.66\n",
"sex Male\n",
"smoker No\n",
"day Sun\n",
"time Dinner\n",
"size 3\n",
"Name: 1, dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.iloc[1]"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"0 Female\n",
"1 Male\n",
"2 Male\n",
"3 Male\n",
"4 Female\n",
"5 Male\n",
"6 Male\n",
"7 Male\n",
"8 Male\n",
"9 Male\n",
"10 Male\n",
"11 Female\n",
"12 Male\n",
"13 Male\n",
"14 Female\n",
"15 Male\n",
"16 Female\n",
"17 Male\n",
"18 Female\n",
"19 Male\n",
"20 Male\n",
"21 Female\n",
"22 Female\n",
"23 Male\n",
"24 Male\n",
"25 Male\n",
"26 Male\n",
"27 Male\n",
"28 Male\n",
"29 Female\n",
" ... \n",
"214 Female\n",
"215 Female\n",
"216 Male\n",
"217 Male\n",
"218 Male\n",
"219 Female\n",
"220 Male\n",
"221 Female\n",
"222 Male\n",
"223 Female\n",
"224 Male\n",
"225 Female\n",
"226 Female\n",
"227 Male\n",
"228 Male\n",
"229 Female\n",
"230 Male\n",
"231 Male\n",
"232 Male\n",
"233 Male\n",
"234 Male\n",
"235 Male\n",
"236 Male\n",
"237 Male\n",
"238 Female\n",
"239 Male\n",
"240 Female\n",
"241 Male\n",
"242 Male\n",
"243 Female\n",
"Name: sex, dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['sex']"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"dtype('O')"
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df['sex'].dtype"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.sex is df['sex']"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 16.99 | \n",
" 1.01 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 4 | \n",
" 24.59 | \n",
" 3.61 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 11 | \n",
" 35.26 | \n",
" 5.00 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 14 | \n",
" 14.83 | \n",
" 3.02 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 16 | \n",
" 10.33 | \n",
" 1.67 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 18 | \n",
" 16.97 | \n",
" 3.50 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 21 | \n",
" 20.29 | \n",
" 2.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 22 | \n",
" 15.77 | \n",
" 2.23 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 29 | \n",
" 19.65 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 32 | \n",
" 15.06 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 33 | \n",
" 20.69 | \n",
" 2.45 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 37 | \n",
" 16.93 | \n",
" 3.07 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 51 | \n",
" 10.29 | \n",
" 2.60 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 52 | \n",
" 34.81 | \n",
" 5.20 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 57 | \n",
" 26.41 | \n",
" 1.50 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 66 | \n",
" 16.45 | \n",
" 2.47 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 67 | \n",
" 3.07 | \n",
" 1.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 1 | \n",
"
\n",
" \n",
" 71 | \n",
" 17.07 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 72 | \n",
" 26.86 | \n",
" 3.14 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 73 | \n",
" 25.28 | \n",
" 5.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 74 | \n",
" 14.73 | \n",
" 2.20 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 82 | \n",
" 10.07 | \n",
" 1.83 | \n",
" Female | \n",
" No | \n",
" Thur | \n",
" Lunch | \n",
" 1 | \n",
"
\n",
" \n",
" 85 | \n",
" 34.83 | \n",
" 5.17 | \n",
" Female | \n",
" No | \n",
" Thur | \n",
" Lunch | \n",
" 4 | \n",
"
\n",
" \n",
" 92 | \n",
" 5.75 | \n",
" 1.00 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 93 | \n",
" 16.32 | \n",
" 4.30 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 94 | \n",
" 22.75 | \n",
" 3.25 | \n",
" Female | \n",
" No | \n",
" Fri | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 100 | \n",
" 11.35 | \n",
" 2.50 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 101 | \n",
" 15.38 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 102 | \n",
" 44.30 | \n",
" 2.50 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 103 | \n",
" 22.42 | \n",
" 3.48 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
"
\n",
" \n",
" 155 | \n",
" 29.85 | \n",
" 5.14 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 5 | \n",
"
\n",
" \n",
" 157 | \n",
" 25.00 | \n",
" 3.75 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 158 | \n",
" 13.39 | \n",
" 2.61 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 162 | \n",
" 16.21 | \n",
" 2.00 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 164 | \n",
" 17.51 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 168 | \n",
" 10.59 | \n",
" 1.61 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 169 | \n",
" 10.63 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 178 | \n",
" 9.60 | \n",
" 4.00 | \n",
" Female | \n",
" Yes | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 186 | \n",
" 20.90 | \n",
" 3.50 | \n",
" Female | \n",
" Yes | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 188 | \n",
" 18.15 | \n",
" 3.50 | \n",
" Female | \n",
" Yes | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 191 | \n",
" 19.81 | \n",
" 4.19 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 197 | \n",
" 43.11 | \n",
" 5.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 4 | \n",
"
\n",
" \n",
" 198 | \n",
" 13.00 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 201 | \n",
" 12.74 | \n",
" 2.01 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 202 | \n",
" 13.00 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 203 | \n",
" 16.40 | \n",
" 2.50 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 205 | \n",
" 16.47 | \n",
" 3.23 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Lunch | \n",
" 3 | \n",
"
\n",
" \n",
" 209 | \n",
" 12.76 | \n",
" 2.23 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 213 | \n",
" 13.27 | \n",
" 2.50 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 214 | \n",
" 28.17 | \n",
" 6.50 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 215 | \n",
" 12.90 | \n",
" 1.10 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 219 | \n",
" 30.14 | \n",
" 3.09 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 221 | \n",
" 13.42 | \n",
" 3.48 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 223 | \n",
" 15.98 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Fri | \n",
" Lunch | \n",
" 3 | \n",
"
\n",
" \n",
" 225 | \n",
" 16.27 | \n",
" 2.50 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 226 | \n",
" 10.09 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
"
\n",
" \n",
" 229 | \n",
" 22.12 | \n",
" 2.88 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 238 | \n",
" 35.83 | \n",
" 4.67 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
"
\n",
"
87 rows × 7 columns
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"0 16.99 1.01 Female No Sun Dinner 2\n",
"4 24.59 3.61 Female No Sun Dinner 4\n",
"11 35.26 5.00 Female No Sun Dinner 4\n",
"14 14.83 3.02 Female No Sun Dinner 2\n",
"16 10.33 1.67 Female No Sun Dinner 3\n",
"18 16.97 3.50 Female No Sun Dinner 3\n",
"21 20.29 2.75 Female No Sat Dinner 2\n",
"22 15.77 2.23 Female No Sat Dinner 2\n",
"29 19.65 3.00 Female No Sat Dinner 2\n",
"32 15.06 3.00 Female No Sat Dinner 2\n",
"33 20.69 2.45 Female No Sat Dinner 4\n",
"37 16.93 3.07 Female No Sat Dinner 3\n",
"51 10.29 2.60 Female No Sun Dinner 2\n",
"52 34.81 5.20 Female No Sun Dinner 4\n",
"57 26.41 1.50 Female No Sat Dinner 2\n",
"66 16.45 2.47 Female No Sat Dinner 2\n",
"67 3.07 1.00 Female Yes Sat Dinner 1\n",
"71 17.07 3.00 Female No Sat Dinner 3\n",
"72 26.86 3.14 Female Yes Sat Dinner 2\n",
"73 25.28 5.00 Female Yes Sat Dinner 2\n",
"74 14.73 2.20 Female No Sat Dinner 2\n",
"82 10.07 1.83 Female No Thur Lunch 1\n",
"85 34.83 5.17 Female No Thur Lunch 4\n",
"92 5.75 1.00 Female Yes Fri Dinner 2\n",
"93 16.32 4.30 Female Yes Fri Dinner 2\n",
"94 22.75 3.25 Female No Fri Dinner 2\n",
"100 11.35 2.50 Female Yes Fri Dinner 2\n",
"101 15.38 3.00 Female Yes Fri Dinner 2\n",
"102 44.30 2.50 Female Yes Sat Dinner 3\n",
"103 22.42 3.48 Female Yes Sat Dinner 2\n",
".. ... ... ... ... ... ... ...\n",
"155 29.85 5.14 Female No Sun Dinner 5\n",
"157 25.00 3.75 Female No Sun Dinner 4\n",
"158 13.39 2.61 Female No Sun Dinner 2\n",
"162 16.21 2.00 Female No Sun Dinner 3\n",
"164 17.51 3.00 Female Yes Sun Dinner 2\n",
"168 10.59 1.61 Female Yes Sat Dinner 2\n",
"169 10.63 2.00 Female Yes Sat Dinner 2\n",
"178 9.60 4.00 Female Yes Sun Dinner 2\n",
"186 20.90 3.50 Female Yes Sun Dinner 3\n",
"188 18.15 3.50 Female Yes Sun Dinner 3\n",
"191 19.81 4.19 Female Yes Thur Lunch 2\n",
"197 43.11 5.00 Female Yes Thur Lunch 4\n",
"198 13.00 2.00 Female Yes Thur Lunch 2\n",
"201 12.74 2.01 Female Yes Thur Lunch 2\n",
"202 13.00 2.00 Female Yes Thur Lunch 2\n",
"203 16.40 2.50 Female Yes Thur Lunch 2\n",
"205 16.47 3.23 Female Yes Thur Lunch 3\n",
"209 12.76 2.23 Female Yes Sat Dinner 2\n",
"213 13.27 2.50 Female Yes Sat Dinner 2\n",
"214 28.17 6.50 Female Yes Sat Dinner 3\n",
"215 12.90 1.10 Female Yes Sat Dinner 2\n",
"219 30.14 3.09 Female Yes Sat Dinner 4\n",
"221 13.42 3.48 Female Yes Fri Lunch 2\n",
"223 15.98 3.00 Female No Fri Lunch 3\n",
"225 16.27 2.50 Female Yes Fri Lunch 2\n",
"226 10.09 2.00 Female Yes Fri Lunch 2\n",
"229 22.12 2.88 Female Yes Sat Dinner 2\n",
"238 35.83 4.67 Female No Sat Dinner 3\n",
"240 27.18 2.00 Female Yes Sat Dinner 2\n",
"243 18.78 3.00 Female No Thur Dinner 2\n",
"\n",
"[87 rows x 7 columns]"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.loc[df.sex == 'Female']"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 239 | \n",
" 29.03 | \n",
" 5.92 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"239 29.03 5.92 Male No Sat Dinner 3\n",
"240 27.18 2.00 Female Yes Sat Dinner 2\n",
"241 22.67 2.00 Male Yes Sat Dinner 2\n",
"242 17.82 1.75 Male No Sat Dinner 2\n",
"243 18.78 3.00 Female No Thur Dinner 2"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.tail()"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df.loc[243, 'smoker'] = 'Yes'"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 239 | \n",
" 29.03 | \n",
" 5.92 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"239 29.03 5.92 Male No Sat Dinner 3\n",
"240 27.18 2.00 Female Yes Sat Dinner 2\n",
"241 22.67 2.00 Male Yes Sat Dinner 2\n",
"242 17.82 1.75 Male No Sat Dinner 2\n",
"243 18.78 3.00 Female Yes Thur Dinner 2"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.tail()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df.loc[242, ['sex', 'size']] = ['Female', 4]"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 239 | \n",
" 29.03 | \n",
" 5.92 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
"
\n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"239 29.03 5.92 Male No Sat Dinner 3\n",
"240 27.18 2.00 Female Yes Sat Dinner 2\n",
"241 22.67 2.00 Male Yes Sat Dinner 2\n",
"242 17.82 1.75 Female No Sat Dinner 4\n",
"243 18.78 3.00 Female Yes Thur Dinner 2"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.tail()"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df.loc[244] = df.loc[243]"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 244 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"240 27.18 2.00 Female Yes Sat Dinner 2\n",
"241 22.67 2.00 Male Yes Sat Dinner 2\n",
"242 17.82 1.75 Female No Sat Dinner 4\n",
"243 18.78 3.00 Female Yes Thur Dinner 2\n",
"244 18.78 3.00 Female Yes Thur Dinner 2"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.tail()"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df2 = df.copy()"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df2.loc[245, 'tip'] = 1.2"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2.0 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4.0 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2.0 | \n",
"
\n",
" \n",
" 244 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2.0 | \n",
"
\n",
" \n",
" 245 | \n",
" NaN | \n",
" 1.20 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"241 22.67 2.00 Male Yes Sat Dinner 2.0\n",
"242 17.82 1.75 Female No Sat Dinner 4.0\n",
"243 18.78 3.00 Female Yes Thur Dinner 2.0\n",
"244 18.78 3.00 Female Yes Thur Dinner 2.0\n",
"245 NaN 1.20 NaN NaN NaN NaN NaN"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df2.tail()"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"total_bill float64\n",
"tip float64\n",
"sex object\n",
"smoker object\n",
"day object\n",
"time object\n",
"size float64\n",
"dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df2.dtypes"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df2.loc[245, 'size'] = 3"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df2['size'] = df2['size'].astype(int)"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
"
\n",
" \n",
" \n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 244 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
"
\n",
" \n",
" 245 | \n",
" NaN | \n",
" 1.20 | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" 3 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size\n",
"241 22.67 2.00 Male Yes Sat Dinner 2\n",
"242 17.82 1.75 Female No Sat Dinner 4\n",
"243 18.78 3.00 Female Yes Thur Dinner 2\n",
"244 18.78 3.00 Female Yes Thur Dinner 2\n",
"245 NaN 1.20 NaN NaN NaN NaN 3"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df2.tail()"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df2.loc[244, 'pioggia'] = True"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df2.loc[244, 'anni'] = 31"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df2 = df.copy()"
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df2['anni'] = 'x'"
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df2.loc[243, 'anni'] = 31"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
" anni | \n",
"
\n",
" \n",
" \n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" x | \n",
"
\n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" x | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" x | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
" 31 | \n",
"
\n",
" \n",
" 244 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
" x | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size anni\n",
"240 27.18 2.00 Female Yes Sat Dinner 2 x\n",
"241 22.67 2.00 Male Yes Sat Dinner 2 x\n",
"242 17.82 1.75 Female No Sat Dinner 4 x\n",
"243 18.78 3.00 Female Yes Thur Dinner 2 31\n",
"244 18.78 3.00 Female Yes Thur Dinner 2 x"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df2.tail()"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"total_bill float64\n",
"tip float64\n",
"sex object\n",
"smoker object\n",
"day object\n",
"time object\n",
"size int64\n",
"anni object\n",
"dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# ?\n",
"df2.dtypes"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df['perc'] = df['tip'] / df['total_bill']"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {
"collapsed": false,
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"
\n",
" \n",
" \n",
" | \n",
" total_bill | \n",
" tip | \n",
" sex | \n",
" smoker | \n",
" day | \n",
" time | \n",
" size | \n",
" perc | \n",
"
\n",
" \n",
" \n",
" \n",
" 0 | \n",
" 16.99 | \n",
" 1.01 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.059447 | \n",
"
\n",
" \n",
" 1 | \n",
" 10.34 | \n",
" 1.66 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
" 0.160542 | \n",
"
\n",
" \n",
" 2 | \n",
" 21.01 | \n",
" 3.50 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
" 0.166587 | \n",
"
\n",
" \n",
" 3 | \n",
" 23.68 | \n",
" 3.31 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.139780 | \n",
"
\n",
" \n",
" 4 | \n",
" 24.59 | \n",
" 3.61 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
" 0.146808 | \n",
"
\n",
" \n",
" 5 | \n",
" 25.29 | \n",
" 4.71 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
" 0.186240 | \n",
"
\n",
" \n",
" 6 | \n",
" 8.77 | \n",
" 2.00 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.228050 | \n",
"
\n",
" \n",
" 7 | \n",
" 26.88 | \n",
" 3.12 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
" 0.116071 | \n",
"
\n",
" \n",
" 8 | \n",
" 15.04 | \n",
" 1.96 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.130319 | \n",
"
\n",
" \n",
" 9 | \n",
" 14.78 | \n",
" 3.23 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.218539 | \n",
"
\n",
" \n",
" 10 | \n",
" 10.27 | \n",
" 1.71 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.166504 | \n",
"
\n",
" \n",
" 11 | \n",
" 35.26 | \n",
" 5.00 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
" 0.141804 | \n",
"
\n",
" \n",
" 12 | \n",
" 15.42 | \n",
" 1.57 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.101816 | \n",
"
\n",
" \n",
" 13 | \n",
" 18.43 | \n",
" 3.00 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 4 | \n",
" 0.162778 | \n",
"
\n",
" \n",
" 14 | \n",
" 14.83 | \n",
" 3.02 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.203641 | \n",
"
\n",
" \n",
" 15 | \n",
" 21.58 | \n",
" 3.92 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 2 | \n",
" 0.181650 | \n",
"
\n",
" \n",
" 16 | \n",
" 10.33 | \n",
" 1.67 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
" 0.161665 | \n",
"
\n",
" \n",
" 17 | \n",
" 16.29 | \n",
" 3.71 | \n",
" Male | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
" 0.227747 | \n",
"
\n",
" \n",
" 18 | \n",
" 16.97 | \n",
" 3.50 | \n",
" Female | \n",
" No | \n",
" Sun | \n",
" Dinner | \n",
" 3 | \n",
" 0.206246 | \n",
"
\n",
" \n",
" 19 | \n",
" 20.65 | \n",
" 3.35 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
" 0.162228 | \n",
"
\n",
" \n",
" 20 | \n",
" 17.92 | \n",
" 4.08 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.227679 | \n",
"
\n",
" \n",
" 21 | \n",
" 20.29 | \n",
" 2.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.135535 | \n",
"
\n",
" \n",
" 22 | \n",
" 15.77 | \n",
" 2.23 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.141408 | \n",
"
\n",
" \n",
" 23 | \n",
" 39.42 | \n",
" 7.58 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" 0.192288 | \n",
"
\n",
" \n",
" 24 | \n",
" 19.82 | \n",
" 3.18 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.160444 | \n",
"
\n",
" \n",
" 25 | \n",
" 17.81 | \n",
" 2.34 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" 0.131387 | \n",
"
\n",
" \n",
" 26 | \n",
" 13.37 | \n",
" 2.00 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.149589 | \n",
"
\n",
" \n",
" 27 | \n",
" 12.69 | \n",
" 2.00 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.157604 | \n",
"
\n",
" \n",
" 28 | \n",
" 21.70 | \n",
" 4.30 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.198157 | \n",
"
\n",
" \n",
" 29 | \n",
" 19.65 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.152672 | \n",
"
\n",
" \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
" ... | \n",
"
\n",
" \n",
" 215 | \n",
" 12.90 | \n",
" 1.10 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.085271 | \n",
"
\n",
" \n",
" 216 | \n",
" 28.15 | \n",
" 3.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 5 | \n",
" 0.106572 | \n",
"
\n",
" \n",
" 217 | \n",
" 11.59 | \n",
" 1.50 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.129422 | \n",
"
\n",
" \n",
" 218 | \n",
" 7.74 | \n",
" 1.44 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.186047 | \n",
"
\n",
" \n",
" 219 | \n",
" 30.14 | \n",
" 3.09 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" 0.102522 | \n",
"
\n",
" \n",
" 220 | \n",
" 12.16 | \n",
" 2.20 | \n",
" Male | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
" 0.180921 | \n",
"
\n",
" \n",
" 221 | \n",
" 13.42 | \n",
" 3.48 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
" 0.259314 | \n",
"
\n",
" \n",
" 222 | \n",
" 8.58 | \n",
" 1.92 | \n",
" Male | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 1 | \n",
" 0.223776 | \n",
"
\n",
" \n",
" 223 | \n",
" 15.98 | \n",
" 3.00 | \n",
" Female | \n",
" No | \n",
" Fri | \n",
" Lunch | \n",
" 3 | \n",
" 0.187735 | \n",
"
\n",
" \n",
" 224 | \n",
" 13.42 | \n",
" 1.58 | \n",
" Male | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
" 0.117735 | \n",
"
\n",
" \n",
" 225 | \n",
" 16.27 | \n",
" 2.50 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
" 0.153657 | \n",
"
\n",
" \n",
" 226 | \n",
" 10.09 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Fri | \n",
" Lunch | \n",
" 2 | \n",
" 0.198216 | \n",
"
\n",
" \n",
" 227 | \n",
" 20.45 | \n",
" 3.00 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" 0.146699 | \n",
"
\n",
" \n",
" 228 | \n",
" 13.28 | \n",
" 2.72 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.204819 | \n",
"
\n",
" \n",
" 229 | \n",
" 22.12 | \n",
" 2.88 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.130199 | \n",
"
\n",
" \n",
" 230 | \n",
" 24.01 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" 0.083299 | \n",
"
\n",
" \n",
" 231 | \n",
" 15.69 | \n",
" 3.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
" 0.191205 | \n",
"
\n",
" \n",
" 232 | \n",
" 11.61 | \n",
" 3.39 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.291990 | \n",
"
\n",
" \n",
" 233 | \n",
" 10.77 | \n",
" 1.47 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.136490 | \n",
"
\n",
" \n",
" 234 | \n",
" 15.53 | \n",
" 3.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.193175 | \n",
"
\n",
" \n",
" 235 | \n",
" 10.07 | \n",
" 1.25 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.124131 | \n",
"
\n",
" \n",
" 236 | \n",
" 12.60 | \n",
" 1.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.079365 | \n",
"
\n",
" \n",
" 237 | \n",
" 32.83 | \n",
" 1.17 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.035638 | \n",
"
\n",
" \n",
" 238 | \n",
" 35.83 | \n",
" 4.67 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
" 0.130338 | \n",
"
\n",
" \n",
" 239 | \n",
" 29.03 | \n",
" 5.92 | \n",
" Male | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 3 | \n",
" 0.203927 | \n",
"
\n",
" \n",
" 240 | \n",
" 27.18 | \n",
" 2.00 | \n",
" Female | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.073584 | \n",
"
\n",
" \n",
" 241 | \n",
" 22.67 | \n",
" 2.00 | \n",
" Male | \n",
" Yes | \n",
" Sat | \n",
" Dinner | \n",
" 2 | \n",
" 0.088222 | \n",
"
\n",
" \n",
" 242 | \n",
" 17.82 | \n",
" 1.75 | \n",
" Female | \n",
" No | \n",
" Sat | \n",
" Dinner | \n",
" 4 | \n",
" 0.098204 | \n",
"
\n",
" \n",
" 243 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
" 0.159744 | \n",
"
\n",
" \n",
" 244 | \n",
" 18.78 | \n",
" 3.00 | \n",
" Female | \n",
" Yes | \n",
" Thur | \n",
" Dinner | \n",
" 2 | \n",
" 0.159744 | \n",
"
\n",
" \n",
"
\n",
"
245 rows × 8 columns
\n",
"
"
],
"text/plain": [
"\n",
" total_bill tip sex smoker day time size perc\n",
"0 16.99 1.01 Female No Sun Dinner 2 0.059447\n",
"1 10.34 1.66 Male No Sun Dinner 3 0.160542\n",
"2 21.01 3.50 Male No Sun Dinner 3 0.166587\n",
"3 23.68 3.31 Male No Sun Dinner 2 0.139780\n",
"4 24.59 3.61 Female No Sun Dinner 4 0.146808\n",
"5 25.29 4.71 Male No Sun Dinner 4 0.186240\n",
"6 8.77 2.00 Male No Sun Dinner 2 0.228050\n",
"7 26.88 3.12 Male No Sun Dinner 4 0.116071\n",
"8 15.04 1.96 Male No Sun Dinner 2 0.130319\n",
"9 14.78 3.23 Male No Sun Dinner 2 0.218539\n",
"10 10.27 1.71 Male No Sun Dinner 2 0.166504\n",
"11 35.26 5.00 Female No Sun Dinner 4 0.141804\n",
"12 15.42 1.57 Male No Sun Dinner 2 0.101816\n",
"13 18.43 3.00 Male No Sun Dinner 4 0.162778\n",
"14 14.83 3.02 Female No Sun Dinner 2 0.203641\n",
"15 21.58 3.92 Male No Sun Dinner 2 0.181650\n",
"16 10.33 1.67 Female No Sun Dinner 3 0.161665\n",
"17 16.29 3.71 Male No Sun Dinner 3 0.227747\n",
"18 16.97 3.50 Female No Sun Dinner 3 0.206246\n",
"19 20.65 3.35 Male No Sat Dinner 3 0.162228\n",
"20 17.92 4.08 Male No Sat Dinner 2 0.227679\n",
"21 20.29 2.75 Female No Sat Dinner 2 0.135535\n",
"22 15.77 2.23 Female No Sat Dinner 2 0.141408\n",
"23 39.42 7.58 Male No Sat Dinner 4 0.192288\n",
"24 19.82 3.18 Male No Sat Dinner 2 0.160444\n",
"25 17.81 2.34 Male No Sat Dinner 4 0.131387\n",
"26 13.37 2.00 Male No Sat Dinner 2 0.149589\n",
"27 12.69 2.00 Male No Sat Dinner 2 0.157604\n",
"28 21.70 4.30 Male No Sat Dinner 2 0.198157\n",
"29 19.65 3.00 Female No Sat Dinner 2 0.152672\n",
".. ... ... ... ... ... ... ... ...\n",
"215 12.90 1.10 Female Yes Sat Dinner 2 0.085271\n",
"216 28.15 3.00 Male Yes Sat Dinner 5 0.106572\n",
"217 11.59 1.50 Male Yes Sat Dinner 2 0.129422\n",
"218 7.74 1.44 Male Yes Sat Dinner 2 0.186047\n",
"219 30.14 3.09 Female Yes Sat Dinner 4 0.102522\n",
"220 12.16 2.20 Male Yes Fri Lunch 2 0.180921\n",
"221 13.42 3.48 Female Yes Fri Lunch 2 0.259314\n",
"222 8.58 1.92 Male Yes Fri Lunch 1 0.223776\n",
"223 15.98 3.00 Female No Fri Lunch 3 0.187735\n",
"224 13.42 1.58 Male Yes Fri Lunch 2 0.117735\n",
"225 16.27 2.50 Female Yes Fri Lunch 2 0.153657\n",
"226 10.09 2.00 Female Yes Fri Lunch 2 0.198216\n",
"227 20.45 3.00 Male No Sat Dinner 4 0.146699\n",
"228 13.28 2.72 Male No Sat Dinner 2 0.204819\n",
"229 22.12 2.88 Female Yes Sat Dinner 2 0.130199\n",
"230 24.01 2.00 Male Yes Sat Dinner 4 0.083299\n",
"231 15.69 3.00 Male Yes Sat Dinner 3 0.191205\n",
"232 11.61 3.39 Male No Sat Dinner 2 0.291990\n",
"233 10.77 1.47 Male No Sat Dinner 2 0.136490\n",
"234 15.53 3.00 Male Yes Sat Dinner 2 0.193175\n",
"235 10.07 1.25 Male No Sat Dinner 2 0.124131\n",
"236 12.60 1.00 Male Yes Sat Dinner 2 0.079365\n",
"237 32.83 1.17 Male Yes Sat Dinner 2 0.035638\n",
"238 35.83 4.67 Female No Sat Dinner 3 0.130338\n",
"239 29.03 5.92 Male No Sat Dinner 3 0.203927\n",
"240 27.18 2.00 Female Yes Sat Dinner 2 0.073584\n",
"241 22.67 2.00 Male Yes Sat Dinner 2 0.088222\n",
"242 17.82 1.75 Female No Sat Dinner 4 0.098204\n",
"243 18.78 3.00 Female Yes Thur Dinner 2 0.159744\n",
"244 18.78 3.00 Female Yes Thur Dinner 2 0.159744\n",
"\n",
"[245 rows x 8 columns]"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"Index(['total_bill', 'tip', 'sex', 'smoker', 'day', 'time', 'size', 'perc'], dtype='object')"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# .columns e .index sono esattamente lo stesso tipo di oggetto!\n",
"df.columns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Plot"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"[]"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nit8AAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Schifo - non è quello che cerchiamo\n",
"plt.plot(df['perc'])"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df['perc'].plot(kind='hist')"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAELCAYAAAA2mZrgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl0XNd94Pnvr15tKOwgQJAgAIIiKYoULVEmLCWSLNmS\nFdOJW0yseCI56bHcSUuJpc7Sne52d2cct/ukTzo9p5OciTxjJ3HbE7flOJFsaRxHsiNZli1rIyVS\nIkVJ3EkQALEvVYVaXr07f1TVc6FYAApAPay/zzk8RBUe3ruvlvu7+xVjDEoppRSAb7kToJRSauXQ\noKCUUsqlQUEppZRLg4JSSimXBgWllFIuDQpKKaVcGhSUUkq5NCgopZRyaVBQSinl8i93AuarubnZ\ndHV1LXcylFJqVTl8+PCQMaZlruNWXVDo6uri0KFDy50MpZRaVUTkfDnHafORUkoplwYFpZRSLg0K\nSimlXBoUlFJKuTQoKKWUcmlQUEop5dKgoJRSyqVBwQOJdIbhaJJEOrPcSVFKqXlZdZPXVrpzQ1Ge\nONJLOuMQsHwc3NdGV3PNcidLKaXKojWFCkqkMzxxpJfqkJ+2hgjVIT9PHOnVGoNSatXwNCiIyAER\neUdETonIZ0r8/k9F5Eju37siMuZlerwWS9qkMw6RYLYCFgn6SWccYkl7mVOmlFLl8az5SEQs4BHg\nLqAHeFVEnjTGvJU/xhjzewXH/yvgBq/SsxSqQ34Clo94yiYS9BNP2QQsH9UhbaVTSq0OXtYUbgRO\nGWPOGGNSwDeAg7Mcfx/wqIfp8Vw4YHFwXxuxpE3vWJxY0ubgvjbCAWu5k6aUUmXxsgi7BbhY8LgH\nuKnUgSKyFdgGPDvD7x8AHgDo7OysbCorrKu5hgdv304saVMd8mtAUEqtKl7WFKTEc2aGY+8F/t4Y\nU7JH1hjzJWNMtzGmu6VlzuXAl104YLGhJqQBQSm16ngZFHqAjoLH7UDvDMfeyypvOlJKqbXAy6Dw\nKrBTRLaJSJBsxv9k8UEisgtoBF70MC1KKaXK4FlQMMbYwMPA08AJ4JvGmOMi8nkRubvg0PuAbxhj\nZmpaUkoptUQ8HStpjPku8N2i5z5b9PhzXqZBKaVU+XRGs1JKKZcGBaWUUi4NCkoppVwaFJRSSrk0\nKCillHJpUFBKKeXSoKCUUsqlQUEppZRLg4JSSimXBgWllFIuDQpKKaVcGhSUUkq5NCgopZRyaVBQ\nSinl0qCglFLKpUFBKaWUS4OCUkoplwYFpZRSLg0KSimlXJ4GBRE5ICLviMgpEfnMDMf8byLylogc\nF5Gve5kepZRSs/N7dWIRsYBHgLuAHuBVEXnSGPNWwTE7gf8A3GKMGRWRjV6lRyml1Ny8rCncCJwy\nxpwxxqSAbwAHi475l8AjxphRAGPMgIfpUUopNQcvg8IW4GLB457cc4WuBq4WkRdE5CUROeBhepRS\nSs3Bs+YjQEo8Z0pcfyfwAaAd+JGI7DXGjE07kcgDwAMAnZ2dlU+pUkopwNuaQg/QUfC4HegtccwT\nxpi0MeYs8A7ZIDGNMeZLxphuY0x3S0uLZwlWSqn1zsug8CqwU0S2iUgQuBd4suiYbwMfBBCRZrLN\nSWc8TJNSSqlZeBYUjDE28DDwNHAC+KYx5riIfF5E7s4d9jQwLCJvAT8A/q0xZtirNCmllJqdGFPc\nzL+ydXd3m0OHDi13MpRSalURkcPGmO65jtMZzUoppVwaFJRSSrk0KCillHJpUFBKKeXSoKCUUsql\nQUEppZRLg4JSSimXBgWllFIuDQpKKaVcGhSUUkq5NCgopZRyaVBQSinl0qCglFLKpUFBKaWUS4OC\nUkoplwYFpZRSLg0KSimlXBoUlFJKuTQoKKWUcmlQUEop5fI0KIjIARF5R0ROichnSvz+fhEZFJEj\nuX+/4WV6lFJKzc7v1YlFxAIeAe4CeoBXReRJY8xbRYf+rTHmYa/SoZRSqnxe1hRuBE4ZY84YY1LA\nN4CDHl5PKaXUInkZFLYAFwse9+SeK3aPiLwhIn8vIh0epkcppdQcvAwKUuI5U/T4/wO6jDHXAf8E\nfLXkiUQeEJFDInJocHCwwslUSimV52VQ6AEKS/7tQG/hAcaYYWNMMvfwL4H9pU5kjPmSMabbGNPd\n0tLiSWKVUkp5GxReBXaKyDYRCQL3Ak8WHiAimwse3g2c8DA9Siml5uDZ6CNjjC0iDwNPAxbwZWPM\ncRH5PHDIGPMk8NsicjdgAyPA/V6lRyml1NzEmOJm/pWtu7vbHDp0aLmToZRSq4qIHDbGdM91nM5o\nVkop5dKgoJRSyqVBQSmllEuDglJKKZcGBaWUUi4NCkoppVwaFJRSSrk0KCillHJpUFBKKeXSoKCU\nUsqlQUEppZRLg4JSSimXBgWllFIuDQpKKaVcGhSUUkq5NCgopZRyaVBYYRLpDMPRJIl0ZrmTopRa\nhzzbjlPN37mhKE8c6SWdcQhYPg7ua6OruWa5k6WUWke0prBCJNIZnjjSS3XIT1tDhOqQnyeO9GqN\nQSm1pDQorBCxpE064xAJZitvkaCfdMYhlrSXOWVKqfXE06AgIgdE5B0ROSUin5nluF8WESMic24q\nvVZVh/wELB/xVDYIxFM2ActHdUhb+JRSS8ezoCAiFvAI8BFgD3CfiOwpcVwt8NvAy16lZTUIBywO\n7msjlrTpHYsTS9oc3NdGOGAtd9KUUutIWcVQEfkZ4LgxZjL3uBbYY4yZLSO/EThljDmT+5tvAAeB\nt4qO+y/AnwC/P8+0rzldzTU8ePt2Ykmb6pBfA4JSasmVW1P4v4FoweNY7rnZbAEuFjzuyT3nEpEb\ngA5jzHdmO5GIPCAih0Tk0ODgYJlJXp3CAYsNNSENCEqpZVFuUBBjjMk/MMY4zF3LkBLPuecQER/w\np8C/mevixpgvGWO6jTHdLS0tZSZZKaXUfJUbFM6IyG+LSCD373eAM3P8TQ/QUfC4HegteFwL7AWe\nE5FzwM8AT67nzmallFpu5QaF3wRuBi6RzexvAh6Y429eBXaKyDYRCQL3Ak/mf2mMGTfGNBtjuowx\nXcBLwN3GmEPzvAellFIVMmdHc24U0a8aY+6dz4mNMbaIPAw8DVjAl40xx0Xk88AhY8yTs59BKaXU\nUpOCroKZDxJ5xRhz4xKkZ07d3d3m0CGtTCil1HyIyGFjzJzN8+XOjHpBRP4C+FuyI48AMMa8tsD0\nKaWUWoHKDQr7cv9/vuA5A9xR2eQopZRaTmUFBWPMB71OiFJKqeVX1ugjEWkVkb8WkX/MPd4jIr/u\nbdKUUkottXKHpH6F7Ciittzjd4Hf9SJBSimllk+5QaHZGPNNwIHscFNAF/pXSqk1ptygEBORDeSW\nqcgtkDfuWaqUUkoti3JHH/1rsrORrxKRF4AW4Jc9S5VSSqllUW5QeAv4FhAHJoFvk+1XUEoptYaU\n23z0/wLXAP8V+L+AncDfeJUopZRSy6PcmsJeY0zhrmk/EJHizXKUUkqtcuXWFF7LdS4DICI3AboA\nkVJKrTHl1hT2Az8RkQu5x53AOyLyJmCMMdd5kjqllFJLqtygcMDTVCyBRDqjex8rpdQcyl376LzX\nCfHSuaEoTxzpJZ1xCFg+Du5ro6u5ZrmTpZRSK065fQqrViKd4YkjvVSH/LQ1RKgO+XniSC+JtE7I\nVkqpYms+KMSSNumMQySYrRRFgn7SGYdY0l7mlCml1Mqz5oNCdchPwPIRT2WDQDxlE7B8VIfK7U5R\nSqn1Y80HhXDA4uC+NmJJm96xOLGkzcF9bdrZrJRSJXhaXBaRA8CfAxbwV8aYPy76/W8CD5FdcTUK\nPGCMqfikuK7mGh68fbuOPlJKqTl4VlMQEQt4BPgIsAe4T0T2FB32dWPMe4wx+4A/Af6HV+kJByw2\n1IQ0ICil1Cy8bD66EThljDljjEkB3wAOFh5gjJkoeFhNbmlupZRSy8PL5qMtwMWCxz3ATcUHichD\nZJfmDgJ3eJieNUsn5imlKsXLoCAlnruiJmCMeQR4REQ+AfwB8MkrTiTyAPAAQGdnZ4WTubrpxDyl\nVCV52XzUA3QUPG4Hemc5/hvAL5b6hTHmS8aYbmNMd0tLSwWTuLrpxDylVKV5GRReBXaKyDYRCQL3\nkt29zSUiOwse/gJw0sP0rDk6MU8pVWmeNR8ZY2wReRh4muyQ1C8bY46LyOeBQ8aYJ4GHReRDQBoY\npUTTkZpZ4cS8SNC/qIl5a71fYq3fn1KVIsasrgE/3d3d5tAh3cohrxJ9Cmu9X2Kt359S5RCRw8aY\n7rmO07UeVrnFTswr7JfI1zaeONLLg7dvXxMl6rV+f0pV2ppf5mI9WMzEvLXeL7HW70+pStOg4KFE\nOsNwNLmiRwOt9QUD1/r9KVVp+s3wyGppx84vGPjEkV7G4ik3reXUOlZD5+1i7k+p9Ug7mj2QSGf4\n4g9PT2vHjiXtFdGOPVNGPt8MfrUEvbzVEMCU8pJ2NC+jUu3YY/EUsaS9rBnSbBl5OGCVnbbV2Hk7\nn/tTaj3TPgUPVLIdu1L9EpWc/aydt0qtXVpT8ECl2rEr2URTydpLJSfNKaVWFv0We2SlzR+oZEau\nnbdKrV0aFDy0mHbsSvdLVDojzwe9kVgSEJqqgws6z3wstrNYO5uVmpsGhRXKiyaaSm9L2j8+5TZv\nCcKdu1u4ZnO9JxnuYpvSyv17DRxqvdOO5hUqX7KPJW16x+LEknZFmmgqtS1pYfNWyO/jaM8Y//W7\nb/PIsyc5NxRd1Llnu9ZCOsnL/ftzQ1G++MPT/M8XzvLFH56u+H0otRpoUFjB8iX7T92yjQdv376i\n5gHkm7cClo8jF8epCfupDvnxW76K7+mw2NFO5fy913tTrIbZ7UqBNh8tq3KaKlbq+PrqkB9B6Bub\nws44hPwWPhEaIkEGJxPT+j4W2ySz2Ka0cv7ey7klq22in1rfNCgsg0Q6w9t94zxzYgADqzKj6B+f\nYjKR5ljvOH1jCdoaw7x/Z4ub8eUz3EpkiPPpJC8VgMr5e6+G2a7GiX5qfdOgsMTODUV57PAlXj47\nTDhg0d3VSCToX1BGUYlO0VLnmOu8+YyuvSnCtpYazg1Geat3gqlUBmNwM9ziDHFiKsWjr1zg0x/Y\nQX1kfqOVyukkny0AzfX3Xg2zXamz25WaiQaFJZTPJAOWEAn5iQT8HL04zm1Xt7ht3OVmFF5trgPM\ned7ijG7npjpCAR/3vLed9qaIew+Fxw1FExy9OM74VIovPHeK+27sXFCNYabXp5wS+VxNcZUenQU6\n0U+tPtrRvITymWR9JIglAmJwjHFLpuVmFJXoFM2fI+T3UVcVJOT38djhSzx2uGfO85ZaxqMq6J8W\nEAqPm5hKcfTiOCJQXxWkIRLkscM99I5NlUzzQjplK7X0RqVGZxWez4tRZEp5RYsrSyifSaYzDvs6\n6nn13CiJdAY743DP/vayM4qFNkkUNgvFkjaDkwn6xpM4xuAToTHip74qyOaG2c9bblNL/rhHX7nA\n+FSK+qog+zrqSWccXj47QjydoS4cmFYbWWgNaCWXyL2ogSjlleX/xqwjhZlpOuNwfXvDgiZ8LSQD\nzPZl9BBPZYgELX5uTyunB2JUh/3Uh4NEk2kujiRo6QyVdd5SGV2pvoiu5ho+/YEdfOG5U1T5LZLp\nDIcvjBEOWHQ2VZPOOG4zD7DgTtmVvvTGSh1FplQxT4OCiBwA/hywgL8yxvxx0e//NfAbgA0MAv/C\nGHPeyzQtt0qUGsvJAAszaICvvHCOM0MxLJ+QcQyDkwm2tVRzeSLJ2FQKS4SrN9Xw4b2beObEAH1j\nU0SC1qw1mHxGl0hnOHJhxB1NJcCduze6wa4+EmTnxmr+7J9OkbIdptIZPnxtKwHLR8DyubURYFGd\nsquxRK4zqNVK41lQEBELeAS4C+gBXhWRJ40xbxUc9jrQbYyJi8hvAX8C/IpXaVopyi01zpZhFGaA\nfp9gO4ZEOkM4YLlNMNFkmmTa4farW3irb4LmmjBBv4+U7XBqMMb1HfV0dzW6f5+yHaqCfkBAwM5k\n+zvy5y2VpuLRVNtbqjk9GOPF08Ps62jk4+9rZ1NdmMcO93J1ay1+y8fJy5O8enaU3Zvr3SG5+eBV\nqgbk9wnD0eSso6EK01TJzLX43JXMxHX+glqJvKwp3AicMsacARCRbwAHATcoGGN+UHD8S8CveZie\nVaWcDCMcsKatPxSwfBzYu4mnjvVzeWKKF8+MkLYdvnf8MnVVfpprQ2Qch6Sd7cD9uT2beOnMCLGi\nv62PBAikhEPnRjl8YZT9nY18eG8rVUE/Tx3rn3at7xzNXjsUsKgK+Hnu3UG21IcZiqV449IYx3vH\n+fVbu0g7Dq1VVQBsb6nhrb5xTg9Gaa0LT6vlFNeA9m9t4Cs/OcdUysYAH72ujbaGqmlByauMtfjc\n+7c2cPj8WEWutZLmL2htZXVYqvfJy6CwBbhY8LgHuGmW438d+EcP07PkFvomFmcYI9EkX37hHA9/\ncDsb66pmPC6esnn8tR5SGYcXz4wQCljUh4OMxpOMTqXpH51iZCpNxjFsqM6OAipsbilcuuLoxXFq\nQoFs09DFMV4+O4zjwHs66tmxsZZ0xuF//vgMpwZjREJ+ekbjtNaFyTiGS+MJApaP1rowI/EUPz41\njBgYiSWprwqCQEdDhH/5/qvY3FA17bUprgF95SfnSKYznByIMRZP8Q9v9HHrjg1sboi4QcyLjLXU\nHItHnj3NbbtaaKkNL/paK2X+wkqprWhgmt1Svk9eBgUp8VzJDaFF5NeAbuD2GX7/APAAQGdnZ6XS\n56nFvImFGcapgQmee3uQqXSGYz1j/Mb7t3HH7k2EA1bJjEWAWDJD2naoDwexHUNV0E9V0EfScWiK\nBKgJB9jbVsdTx/p58PbtbKgJudfOt/E7xpAxDoPRJFvqw/SOJ4gmbM6OxNm5cYJ9HQ28OxAl6PdR\nE/KztSnCmcEYyXSGoN/Hjs01ZIwh7LdI2hk21oc4cmEcg2FjTYjfP7CLbS2lX498E9BwNMlUyubk\nQAy/T4ilMgQsH5fGk3Q11/D4az0I0FIbdu+/Uhlr8Wvr8/lIOw5+n1TkWithtNRKqa2slMC0Ui31\n++TlPIUeoKPgcTvQW3yQiHwI+E/A3caYZKkTGWO+ZIzpNsZ0t7S0eJLYSip8E/MZ1mOHe8oed5/P\nMEaiSZ57exDL8hEOWozE0/zRP7zNn3//Xc4NRWecL/Ar+9sBGJ9KYecCgV+EgCVUBf34RAgHrSvG\n8ec7sO3c8+PxNM3VQfomkiTTDlVBC8FwajDGd9/oo38swdUba0mmHRBhY12I375zB20NEeLpDMm0\nQ1dzFScHouzeVM+/uHUbd1+/hZ/d0Ux314ayXgcDJNMZfD5xm6lEspm0TwSTu+/8/VcqY82/tuNT\nKWLJNMm0TcDnw3bMjNeaz/yK+cxfmO+8jXKPXwnbqnq9EOFKstBFEZf6ffKyWPIqsFNEtgGXgHuB\nTxQeICI3AF8EDhhjBjxMy5LKv4nxlM3Ri+M4xhBL2tzZN86+zqY5/z6fYfzlj84SS9nUVQXAQE0o\nwARpDMYtKRS3wR/Yu4nmmhD/x0d385c/OovjGDIZw/aNtYzG09SE/WCy/QXXt9dfkYF2Ndfw0B07\nubNvnKePXeals8MkUhkaIgEsn3BpbIqQ34fP8tFcHeDccJzbrm4hnrSZSmf44O5Wrmtv4Dtv9jGR\nsDl6YZyEneH1i2Ps66inc0O1mwkWZ4ClOow/9t523rh4nPF4CuMYmmoDBHw+HMchHLC445qNfOeN\n3mygy71ulSg9hQMW+7c28Mizp0k7DgGfj3v2t3FpLEnvWPyKEV8LKe0udumOUuZz/EqorayUZjSv\nLaY2tNTvk2fvvjHGFpGHgafJDkn9sjHmuIh8HjhkjHkS+O9ADfB3IgJwwRhzt1dpWirZFUTh0LlR\nakIBEEPGMTxzYpBtzTXYjpm17TSRzjAWTxG0QBASqQx+y4dtHCyBxkiQgWiSkVhqWsYyFE1O6wj+\nw4/uoSrox/IJj73Ww46N2WWuMyY7UunO3RsBrhjZEw5Y7Ots4prN9Xzw4ih/8vQ7XJ5IgsCGmhAB\nS+hojHBDRz0vnhmhb2wKxxiMga+/fIGA5eOj17XxnTd6+cCuFl7PzWZ+7cIYe7fUI8gVH+iZvjS7\nNtXxuYPX8vhrPWxtrubcYIzN9SGStsP+rQ08+/YAAjjGcGDvpoo1OyTSGQ6fH+P2XS34ckHo0liS\n+2/uuuL9W0z1frFLdyzm+JUwt2MlBCavLbb5Z6nfJ09feWPMd4HvFj332YKfP+Tl9Sut3M6wcMDi\nzt0befnsCD6fYInwvq5GBiaTfOG5U/hEcIzhY+9tZ9emuml/WzzE8+YdTRw6N8bgZJKmmiDv62rg\nhdPDJNIZ/uYnZ/nw3k1cszlb4v/aS+enffCefWeQ+2/uIpayEbJNR7dd3cJ4PEU6k+1r+OIPT8+4\nc1o4YHHjVc380S8F+coLZ3nncpTL4wk21IXchfxu2raBj+3fwuOHe6iPBN0+iW8f6SHg89FUE+b6\nDnjx9DDnhuKMTaW4fksD/eNTbgY+15dm16Y6fu+uXdOG3+Y7ofNNdPGUzVPH+tm6obrs1VNnky/B\n5pv/AHrH4tiOmdYHU3hspUu78z3vQtKx3HM7VkJg8lolPh9L+T6tnXDssflW/67ZXM9N2zYQsIT6\nSJB4yubU5Sjvaa/j3YEYCTvDGxeP87mD17qBodSCeeNTGT5xUyfHL41RXx3i3f5JwgGLa9vqON43\nyeELY9y0bQN37m654oN3fjjGF547RcDyEU3YRJNpt2T20es3uyN3plI2r54b5eWzw9y0rYl79rdP\nu7ddm+r4w7v3MhJL0TMS40cnh0jZDsbY3LN/C7XhgNu2n28uG59K0dlYRUMkSCTox8kYOjdUcdee\nTQDTMv1yvjTFJerhaLLsL9pCqu752t7gZIKGSJCpVDaN+Y7m4mMrWdrNBzC/T+Z13oWmY7lnWy93\nYPJapT4fS/U+aVAow0Kqf+GAxT37t/DEkV4GJxOkMw5dzRFOD8YJBXzUhgMMTSZ4/LUefu+uXdMy\nx5basLtgXtpxGIun6Gqu5WP72/jaixfY3FDFi6eHqQkF8PmyHcjPnBhAEPeDNz6V4tTlKLfvaqGu\nKhuUxuMp7rtpK03VwWnDT1/M7Zxm+cTdOa343sIBi7aGKtoaqriuo/GKCV2FzWXRZIrhaJpUxnB2\nKE4q4zAWT9PeWMVkIk1rXdW0DHw+X5pEOsNILEXStqfd70x/s9Cqe//4FNGkzfHeCRLpDD7gPR3Z\nORPFQaWSpd18AEukMzjGcNO2Jt68NFHWeVdzqXu5A5OXVtv7okGhDAut/hWPuf/Cc6e4MDpFbThA\nys6NpMmdvzBzzC+Y9/y7g/SOJYgnbPZuqSdlG+qqAsSSNo4xIAZLsjWRwckE79/ZzLNvX8YxkLSz\nQaiuKjgtzSG/z01zwPIxHk+RMQaMzLhzWrHiL3Bhc5kBekan2NYcwTGGhO1AWgj4MwxMJnn89Uu8\nf/sGNtSE3Qy83C/NuaEoX/3JOY73TgCwpSHM2FSAoOWbcUmOhbx3+UCypTFCe2OE75/ox+/zufMz\nSgWVSpR289dN2hnevRzN1SbH+Y+/sHvahL3ZrPVS92q1mt4XXTq7DKWGfpZb/QsHsksx10eCfOy9\n7TgZw9BkgqSdYVdrDVVB/xWZYyxpE09l8Ilw155WPrSnlXDAx7dfu8SBvZvcIaPRhO2uOhpL2vz4\n5CATU2lePz9KMp3h3FCcntFYyTTnr5XOGOLJbNPS9blzLaRqm28uu3ZzLR1NESK54aRBy8f4VJqm\nSIDxhM3l8QRPHO3j5OVJXj4zxHg8BUzfj/r+m7uoDQemDd0bj6f4m5cucHIgSnNtiOaaMD2jU7zd\nO5ENaiWnxSzsvSsMJI4xhAPZcyRtZ9bhgPn3eqFf+FjSJpHO8E5/lFDAR0tNGMsnfOeN3isyktmG\nNy42Hcobq+V90ZpCGSpV/SscSSNAqMQQynzmeHpwkngqWyP420MXyRjI2A7vaa/joTt2cuvFMb73\nVj/xVIaUnR35Ux3y81bfJA3VQYaiKfa21/HK2RGGoymaqoP8yvs6rrjWQ3fs4M6+Fp45MeD2Eyzk\n3vLNZY8d7iGaSBNP2OzvauJoz2g2iKUyWAK1YT8ihhdOD3G0Z4zOpmr+1Z3buXXnxiuW7RDg1p3N\nCPC945c5fGGEsbjNjoBFVcBiMJpiY12ILQ1ViMi0Enxhx/J837vCQBL0Wzi5uQkhv8/T0THVIX+u\ndpWZsTYJOtlLeUuDQpkqVf0rHEkz03n6x6d46s3LvNkzwenBGE01AepCAeJi89WfnKejMcJLZ4YJ\n+LKjmN6/cwPPnxzKDp00hvpwkLGpFNGETe/oFImUjc8SqgLCL723nY6m6e3h+eGn87m3fNs+GJqq\ns6WfruYabuhs4AdvX2Y4nqbvaC+7N9fSUOVnOJ5du6g+7OfyRJJw0CIS8hMO+Hjk2dO8Z0sDAF97\n8TxVQQufCC+eHuKxw5dADJvqw4T8fnyS4fxwnPbGKhzHEAn4Cfqtaaut9o9PTVsm/J797fN67woL\nAemMw/aWaoyBvrE4BvjYe8vf+2I+CudlDE0mCAUsdrXWEMo1LeZf93L7SHTpCLUQGhTmoVKdYbOd\nZzye3ce4IRLkuo56Tg5MMjGVxvIJ7Y1VTCRS/N1rl+hsirhDMX90cghBcBwHnwjRZBrHMbxwephw\n0I/tGE72RznWM8mXnj/Lp27eykN37rqiX6Bw3P1cE6rybfuOMexoqeZTt17Fprowf/n8WTY1RNjW\n4mcklmQknuLffng3f/7MSQYmE2QMWJYPvy+7+mldVYC+8SmOXBzlqWP9PPfOEEG/j7SdIeD3EQxk\nWzgnpzI0Rny01Aa5MDzFSCxFUyTAnrZat1SfX1G1eJnwyYTNZ35+9xVDSWe71031VXy8u4N80Ds/\nHOPx13rwifDUsX5Cfp8npfO5apPl9pEspjahwWR906CwDGb60p0bivLoKxc4fH6U+qog12yqobkm\nlF0h1DFGkUvcAAAcaElEQVRcGImTsjMkciNu4KeZwod2t/DDd4fYXB/i9ECMltogadvQ0Rzi5XOj\nWD5wTHapiP/n+bMMxVLcf8tVJedJzJaZJNIZHjt8idODMaqCFr1jCV44M8LZwTi/cds20o6TnXmd\nSHF5MsFkwuaZty/z8B3b+f5blznRN8FoLEXQEjqbIkylM1ji48cnh7g4OpWdcQ2MTaWRdCY3T8CQ\nzjhYPqG7q5H3tDn86s92kLINTx3rnzbDOJayr1gm/K2+CUZiSdoaIrPea342ePEkwPzCey214bJK\n5yOxJCA0VQcXlKnOVpssZ6TWYiZLFW/GVDw8Wa19GhSW2EyZbv6L3BgJUl8VRATe7o+yf2sDTx+/\njGX5CFk+3r+zmQvDU1zVknKHmgYsH9dsrnebgPw+oX88wWe+9QYTiTTGGMQnGMfg9/uYSjscuTjO\nf/rWmzx4+1Xc2LWB+kiwrMwklrSJp20EuDyRJBTwIQIIvHByCEt89E/EOXU5RsYYDOC34M1LE3zm\nI7uJpTK8cnaIR1/uYTSeIuDz8cmbOzl8YQy/5aNrQ4Tzw3FMbkG+mqCP0bjNSDxFys6wY2M1v/az\nXYT8fkJ+c8UM496xqewLLdl+AMc4pDNOdn2mAsX32jMa47PfOsaOTdWc6o+xf1sj7Y3V7sqz5Sy8\nd24oyldeOMdbfdnRUde21fHJm7sWlKnOVJss1b91YO8mt+O73HkfpSTSmStqWWPxNL/1we1uE6Fa\n+zQoLKHZMt3COQrXd9Rz9OI441MptjSE+cjeTbQ1RKgKZheB8/l8jMZTRJP2FR2n4UB2j4GnjvfT\n2Rjh5TPDOCa7YU7AElK2gwhUBXy8e3mSP/j2MTobInzq1i72dTa6mUk642Byy2HkM5NEOkPSzmCJ\nEEvZJNMZDBaZ3OzocNDivps6+JOn3iZpZwj5Lbqaqzg/nODq1mwzVltDFb94Qwcf3NXK4GSSltoQ\noYDFib4ojmMIBC22NVcTyS3Y1z+ZRBCuaa3l2i112I7hay+d553+SQD2bK7j/lu63Kahpuog17bV\ncXowRtJO0j+WoKE6yOOv9Uwr9Y7EUkwk0jREgqQzDq+dH6NvIoEjcHkiwWvnx2itqyKSW0DQMWbO\n0vljh3s4MxSjuSYMYjg9GOOxw5d46I4d88pQ52q+mW1pk4P72thUX7WgyVIjseS0WtZYPMmzbw/g\n80FTdUg7tBdhNTXJaVDwwEwfgNlKcPlmgYmpFOGAnxs66plM2vz6rdt49JWLJO0MR06PZUvpDvzB\nP9szbex64SzYfOC56apmdmys4Zm3+jg5GCdpOzgGdrRUc244QdBvEQ74GYim+KN/eJs792xkIp4i\nnkpzfjhBws5kh9BGk0wm0u5EvGM944xNpenN7ZvQEPHTVh+iKujnxm1N/Ny1rZzoi1IbClAT9jMY\nTeCYbGm+8LXZ0Vrrvjb37N9CNJl25yDs62hgX2c9X/7xOYJ+i6qgRV1VgBdODeH3+WiuDYERzgzF\neOxwDw/dsdMtXX/y5i7+9tWLvHRmmI4NEW7c1kQk6HcDcL4j+s2ecU5ejrJrUw2XxqcIByxaakOM\nxdNcGp8inkwT8GfPmW9CmmkEU34YseUTgv5sP4jPlyGetue1nEG5fQH58xUvbTLTQonljSjLDesV\nQ8ZxuDSWwOcTWuuqCPpLT2pUc1tto8U0KFTYbB+A2dqDw4ErV+V86I7spjoH9m7i3//dUUbiaXw+\noaUmyDdfvcBvfXAn1aHp18yPoW+pzY7m2VAT5tarW/kvv7SJ1y+M8Pjrl/AhXJ5I0lSdzQA31oUZ\nnEzw/bcuY2eytYOOxio2N0TYtaWG7xztA7KZet94ksaaEKOJNHs21zISTdHWUMXZoTifvGUbTdUh\nGiMh9nf6s2slTSRIZzJ89D2br9glrvC16Wqu4d9/ZLc7oqk66Of//N47jE/Z+K0M41PCxDsDOAhV\nQR9BK5sxWWkhnspMy3i7mmv45z+7lZTtsLmhCmOMOylwJJbiiSO91EeC3LqzmUPnRnnl7AgZ29C2\nIUzQsmirD3NqIMrliSSN1UE3nVs3VM9Y2stmzBaZ3LamiHFHR5U7fHW+fQGzFTIWMlqusJaVXzSx\nvbHK/dyuxdVLvbZS9qyYDw0KFTTXB2C2+Q75VTlv29XiLvp2+PwY3V0bqA378ft97GytJRK0mEik\nefbtQXyWUBcKMDaVprkm5I5GeuPiOO2NkWl9Djtba3lPewM3XdXMo69coH88STpjqAlZpDMZJhI2\nnU3ZWcghv49oyuGGjnpCAYvzI3Gc3GY92clcFgZhc0OEuqoA7+1sImlnaM5NzMnfY2tddq2mna01\nfO+ty0STNlsaIzN+OfJLaQD0jk3xTv8kWzdUMTCRIu04XJ5MctO2JoZjaVKZDJhsu3ckOH3IZixp\nU51L6/PvDuLzCY5j2N5STb7TOhLMvkd37m7lzOAkU6kM/RNJxqZSGOCO3Rt54ParprWll2rnL6z5\n3LO/ncmEPa1P4Z79W8r+8s+3L2CuTuf5jpbL17IeO3yJyWQa23a4oaPBvYaQnSlfuGe3mt1qXBpc\ng0IFlfMBmKkEN9OqnNkOxOwSFKHc8MzefLW+toqBiQTPnhhge2sNlgjXtNbQ1VI9Y5/D1g3VPHDb\nVezrqOd/vXiBnrEESdumPuwn5M8GCCvoZyKR5kenhklnMlweT9JYE8yOfko7xBM2GdshmkgT9Ftu\nZ3M+M+pqruH+m7v4wnOn+NCeVuqqsktnHO+dcGsGc385sh3FNaEg9a2hn67ddGMn/3is321m2rO5\nzl3eorDGJAhjudnS+bnOxkB1cHpGms44NFWHOHDTJr5ztI942iYS8HPP/i1XjFYqVqpW+Jmf373g\n0UfzXTjNizV18hMaC/sresfiRBM2IvD1l8+viiaQlWI1Lg2+clO2CpX7AShVgiv1t/mSWXXQ+mm1\n3vlptT7o93F+JI7PJ9i2Q180xanBKG214Sv6HODKTOyzd1/LSCzJc+8O8L1jA8RTNle1VBNNpukb\nn8JkHEbjabZuiGCAqVSGUwOTxFMZRGA0nuT6LQ0MT6b4+PumT+iynWyTTX7tpYZI9v/xeIrm2jAT\nU6kZVx2FbMfmns1100bC7N1Sz3UdjVzX0XjFxLniWtrQZIJLYwl+7tpNOCY7G3lwMoHtmGkZqQB3\n7t7I1g3VbmZYTnPLbLXCuYLJTBaSyXuxpk7+87mhJsTWDdWMxJI8+vJF6iOBFdEEspo6bb0I3F7T\noFBBi/kAFP9tccns/Tub8fmyo4fsjOGGjgYcA2nboa2hir7xBFZu74Y9bXV873g/9920lercfK18\nJhby+7LNQI7Ds28P8ODt27npqmbet7WJr/7kvFu6vm3nBna01vP6xVGaIiFGYgkc48Mx0FoXJprK\nEEukOXRhlNFEioxxpg2/LA5y6YzDns11pDOGt3rHOD0QY0drTclVR/Ovx/23dE0bM//R69vczCDf\nzJRXXEurzwWhbP9KeFqA3lAT4sHbt/N23zjPnBjkn04M8MN3hxa8jzZUrllgIZl8pSZVznTukN/C\nYJa8CaRU5r/aOm1hdS2GBxoUKm4xH4D83xaXzHpGY/zl82e5dku2T+HB27fx5qUJRqIJMo5hz+Za\nQn4hYFk4xlBb5eelMyPE0xnqwgEO7mujNhxgcDJB33gSxxh8ImyuDxFL2myoCfHz123hlh0tDE4m\nqavy8+grFwn5fQR8PqLJdG6vZBuRXGCyM4gIgiGecjh5OTpt+GWpAHn/LV00RoJ84blT3Larhfpc\nn8dMpc781qAzDb0szAxKBaFr2+qwM07J7TMBfvju0IJLv8XXG4kmmUjYZBxnzr+di5eZ/EIsRxNI\nqcx/U33Vgjttl7t2sdLe09loUPDAYj4AxSWzdMbhnf4olk/YWBfBJ9mJYPlJW0PRJN852kci7QDC\nvo4GjlwcIxyw6Gyqdpd6vu/GDk4PxKgO+6kPB4km05weiE1rvqmPBN0Sdj5Dz8+Q7mqp5mRqkiq/\nj5RjMEh2VE9u3SEHrhh+WRjk8m3ssVw/R33Rkt4zlTrnGnpZ2AlcHIQ+eXMXm+qr5j08eL41uzcv\njXH43CgNVX5+59FJHroju8DfWrHUTSAzNc19vLtjQe/ZaqxdLCcNCitQYcnM5FbNzAYLnzs0ML8t\nZL7dN7/SaX755ffvbCZg/fT4iSmbHa019I4lGJtKYYmwozW7X3QphTWejOMwMWUzlc7wVz86zbNv\nD5KyM/h8QmMkgE+ya7CXGn5ZPAz1wN5N8y51Fm4IFE3ahPw+d+htYWYwUy1tISN3ytHVXMN9N3bw\n6a+9xs7WWuqrssE2v8BfPsCuBUvZBDJTwAYz7/dsNQ4JXW4aFFagwpJZIp2dQLZrS820hd8Kvwjh\nwE9XOs03PVXlvlD541tqQzTXhGhrqHKHvKZsZ9YvVDhgXZGpf/qDO/nl7g7+/lAPJwcmGY/bhP0+\ndrbWXDH8stQX8qlj/XNOBCtWHfITTdi80XPZ7XS+qrm6ZNrLraXlJ6TlF7nLv+bzzSgmpmwQ3JpP\nTSjAWDzF4GRyWlAo1Xyx3E0apcyWpoXWgOd7nzMF7Pys6vnUWFbKkNCV+F7PxNOgICIHgD8HLOCv\njDF/XPT724A/A64D7jXG/L2X6VlNSi1lMFPbeF52nH/E3Qa08ItTHwm6X6hYQTV6tg9oPlMP+rM7\nm9lOdgG6B2/fzvu6NrjbYob8/pLDL2f6QjbnOnpn+pKU+gJJrpUrX6+R0oOWynZuKMpTx/oRwDGG\nA3s3LahJoaU25Pa7ZLciTRPwZYNw4bWKmy+AOZs05pORVCLTead/4oogudhmloU03czWXDXfGstK\nGBK62pqvxJjSzQeLPrGIBbwL3AX0AK8C9xlj3io4pguoA34feLKcoNDd3W0OHTrkRZJXtPl+6Wc6\nfj7nGY4m+bN/epfesQQZk936s60hzO9+6OqSy1CXSsMjz57Eb/ncNYZiSXvWqnuplUstER57rYdN\n9VWk7AxBv8XgZIJP3bKtrHSUStcXf3h6Wg1mrnTN5scnB66YiZ7vUyh1rfF4GjDUR4IzXn8+GUkl\nMp13+if43BPH8VlC2G+xa1MNIb+1qGaWxb7OlSpdL2emXOnP2mKIyGFjTPdcx3kZLm8EThljzuQS\n9A3gIOAGBWPMudzvFj9kY41byOzUmWoT5Z7H7xNOXY5SHfbTEA4yPpXiRO9E2SNs+seniCbtaRPN\n7r+la8brl1q59HNPHOfaLbUcvzTJDVtxVy4tt7RXKmOpdJPCrTs38p4tDe4Cf4XNRqWu1Tc+BQY2\nN5S+/nw30pnt2HIy1kQ6w+Ov9WD5hOaaMKlMdkvQq1trFtXMUonO/EpknMs5JHSlNF/Nh5dBYQtw\nseBxD3DTQk4kIg8ADwB0dnYuPmWqLLZj2L6xmr7xJH1jcQaiSaqDFn/947Pcd2PnrKWtfGa1pTFC\nV3MN4/EU6YxhU33VjH9T+AUqHnUVtCxePz+GMT9tXpjrSzVTCdGLJoXCkVuFiq81PpUChKDFjNef\nT0Yy27GzrTVVfI78hj4p2yHotxifSruLGC7USmi6yVuuIaEr6TUol8/Dc5dq9V1QW5Ux5kvGmG5j\nTHdLS8sik6XKVR3y01Ib5oaOeoIBi20bqmmtq6IhEnQ7wWdSmFkFLB/NtWEMpuSG94XXy3+BUnaG\nhJ0hlBt11d5UzfUd9dzz3uzWmnNV//NLWUN2H4TqkN9Ncz6oxJK2u5SIV0MsC691om+c598ZJJm2\nSdgOPSPxktcvfB2AWTOSmY4tXC23rSEy7f5LnaMq6GdXaw1JO8PQZAInYxa97ehSvs4r1Wp8DbwM\nVz1AR8HjdqDXw+upGSy0bTb/gX70lQtMpWyCVUH2ddRTXxV0P+AznW8hJaS5Rl1VBf20N0XKuoe3\n+8Z5+ewI1aHsfgjXd9RPG8ZaOIcimXYI+n2eLfRWuBbU7bta3IUKx+Np7rup44oNbOYzL2CmY23H\nlF3bKDzHzo3V7j7UxbvyLfTeV9NsXi+sttfAy6DwKrBTRLYBl4B7gU94eD1VJJHO5JZyGMDAgjrZ\nuppr+PQHdvCF507RkNsVbr4Z/HwmPC1k1FWp+37mxCDhQHYfBoxw6Nwo17fXT0tz//iUu9c0wK7W\nWu7Zv4VrNtdX/ItbvBZUPpMO+Us3a8wnIyl1bCKdmVdQXm0Z12qjM5oBY4wtIg8DT5MdkvplY8xx\nEfk8cMgY86SIvA/4FtAI/DMR+c/GmGu9StN6kt1r9xIvnx0mHLDo7mqcttHMfD6g9ZEg993YyRNH\neueVQZeT0ZSqxeS/QPmJefPNqGJJG4PhfV2NHLk47u4NcOfujdPmCOT3mm6uDRFP2jx/cogTfRP8\n7PYNFd+beKE1p3LvufjYhQRlLzKu2bafXQ0BaLWks5I87e0wxnwX+G7Rc58t+PlVss1KqoLynbwB\nS4iE/EQCfo5eHOe2q1tKzgQux0JLkjNlNOXWYhaSUeUz4Kqgn9uubnE7ua/ZXO8eE0tm95r25RYR\n7J9I4reEUMDCby18l7GZMpGF1pwWY7lL/zONjMpPXix3iOhyZcyrbX5BpazcLnC1YIV7M1gi2V3A\njHEzo4WOfKhUSbKStZiZ0pnPgPNf6OLZ1tW5YOk4hqlUhnTGwYfkthfN7v8w3+A5Vyby036Mny77\n7bXlbLYoNTJqaDLB46/10FIbLmvZieXKmNfz8hhejj5SyyRfUk5nHPZ11BNNZCfM2Bln2Uc+FNdi\nakIBjl4cd9M72+ik+chnwJ+6ZVvJ0UrhgMU9+7ewvaWasakUiVSG+oif925tcDOg+QTPwkxkttE+\n/eNT/N2hi3z95Qt88YenOTcUnfF8w9EkiXRm2s+rSamRUQbwiUwLFDO97+W+pl4oFdAq+flcybSm\nsAYVl5Svb2/gzt0tnnSgzpdXtZhS5iolF+4L3TMS40cnh0jZDsbMf9hgOXMLyi19FpaOY0kbY6Am\n7F91TRilmsw+9t52njrWX1bfynJO/FqN8wsqZe3f4Tq1HO3J5bT9FtdiXj03SiKdwc447raaSykc\nyO4L3dZQxXUdjQt+vcrJROYbOAKWjzd6LgNw5+5Wdxn01dSEUepzGPL7yupbWc6MeTn6gFYKDQpr\n2FK2J5fb9ruSazHzfb2Kg+Bcmch8A0csmcbnE3db1prQyl8ioZTi17XcAstSZcwzFWaWu6N+uWhQ\nUIs23065tfBlmykIznZf8w0cQb+Fk9vvIuQvvWz6alVuAPb6szJXYWY1zS+olNX/6VLLbiFtv6v5\nyzZXEJzvRLNCxTWp7S3VGAODk4l11YRRyKvPynoeYTQbDQpq0dZbp5zXq38WB478NVdrrWqlWo0r\nmC4FHZKqFi1ful1Ni34txnwWrFuo/Izuwtnda/X1XC5L8T6uRuv77lXFrIV+gnKt55Epa4m+j6V5\ntvOaV9brzmtq5VkN6+KshjQut/XyGq2EndeUWtNWemf5el27Z75W+vu41LRPQak1aDmXiFCrmwYF\npdag9bx2j1ocDQpKrUE6skYtlAYFpdag9TZMWFWOFhuUWqPW0zBhVTkaFJRaw3RkjZovbT5SSinl\n8jQoiMgBEXlHRE6JyGdK/D4kIn+b+/3LItLlZXqUUkrNzrOgICIW8AjwEWAPcJ+I7Ck67NeBUWPM\nDuBPgf/mVXqUUkrNzcuawo3AKWPMGWNMCvgGcLDomIPAV3M//z1wp4iIh2lSSik1Cy+DwhbgYsHj\nntxzJY8xxtjAOLDBwzQppZSahZdBoVSJv3j1vXKOQUQeEJFDInJocHCwIolTSil1JS+DQg/QUfC4\nHeid6RgR8QP1wEjxiYwxXzLGdBtjultaWjxKrlJKKS/nKbwK7BSRbcAl4F7gE0XHPAl8EngR+GXg\nWTPHWt6HDx8eEpHzHqR3JWoGhpY7EctI71/vf73evxf3vrWcgzwLCsYYW0QeBp4GLODLxpjjIvJ5\n4JAx5kngr4G/EZFTZGsI95Zx3nVTVRCRQ+Wsf75W6f3r/a/X+1/Oe/d0RrMx5rvAd4ue+2zBzwng\n416mQSmlVPl0RrNSSimXBoWV7UvLnYBlpve/vq3n+1+2e191ezQrpZTyjtYUlFJKuTQorBAi8mUR\nGRCRYwXPNYnI90XkZO7/xuVMo5dEpENEfiAiJ0TkuIj8Tu75Nf8aiEhYRF4RkaO5e//Puee35RaK\nPJlbODK43Gn1kohYIvK6iHwn93jd3L+InBORN0XkiIgcyj23LJ99DQorx1eAA0XPfQZ4xhizE3gm\n93itsoF/Y4zZDfwM8FBuAcX18BokgTuMMdcD+4ADIvIzZBeI/NPcvY+SXUByLfsd4ETB4/V2/x80\nxuwrGIq6LJ99DQorhDHmea6czV24YOBXgV9c0kQtIWNMnzHmtdzPk2Qzhy2sg9fAZEVzDwO5fwa4\ng+xCkbBG7z1PRNqBXwD+KvdYWEf3P4Nl+exrUFjZWo0xfZDNNIGNy5yeJZHbV+MG4GXWyWuQazo5\nAgwA3wdOA2O5hSKh9IKSa8mfAf8OcHKPN7C+7t8A3xORwyLyQO65Zfns63acakURkRrgMeB3jTET\n62UldWNMBtgnIg3At4DdpQ5b2lQtDRH5KDBgjDksIh/IP13i0DV5/zm3GGN6RWQj8H0ReXu5EqI1\nhZXtsohsBsj9P7DM6fGUiATIBoT/ZYx5PPf0unoNjDFjwHNk+1UacgtFQukFJdeKW4C7ReQc2X1X\n7iBbc1gv948xpjf3/wDZQsGNLNNnX4PCypZfMJDc/08sY1o8lWtD/mvghDHmfxT8as2/BiLSkqsh\nICJVwIfI9qn8gOxCkbBG7x3AGPMfjDHtxpgusuufPWuM+VXWyf2LSLWI1OZ/Bn4OOMYyffZ18toK\nISKPAh8guzriZeAPgW8D3wQ6gQvAx40xVywtvhaIyK3Aj4A3+Wm78n8k26+wpl8DEbmObEeiRbag\n9k1jzOdF5CqyJecm4HXg14wxyeVLqfdyzUe/b4z56Hq5/9x9fiv30A983RjzRyKygWX47GtQUEop\n5dLmI6WUUi4NCkoppVwaFJRSSrk0KCillHJpUFBKKeXSoKCUUsqlQUGtSyLSICKfnuOYLhH5RBnn\n6ipc8rzE7+8Xkb+Y4Xc/KT6HiHwgv3y0UktNg4JarxqAWYMC0AXMGRQWwxhzs5fnV2q+NCio9eqP\nge25TU3+e+7fsdxGJ79ScMz7c8f8Xq40/yMReS33bz4ZeoeIPCci74rIH+afFJHobH+k1FLTVVLV\nevUZYK8xZp+I3AP8JnA92WVGXhWR53PH/L4x5qMAIhIB7jLGJERkJ/Ao0F369Fe4EdgLxHPn/wdj\nzKHK3pJSi6dBQSm4FXg0t3z1ZRH5IfA+YKLouADwFyKyD8gAV8/jGt83xgwDiMjjuWtqUFArjgYF\npUqv3V/K75FdrPB6sk2viXlco3iRMV10TK1I2qeg1qtJoDb38/PAr+R2P2sBbgNeKToGoB7oM8Y4\nwD8nu6ppue7KbcReRXZbxRcWewNKeUFrCmpdMsYMi8gLuWGg/wi8ARwlW4L/d8aYfhEZBmwROQp8\nBfgC8JiI/O/AU0BsHpd8hewGQu3A17Q/Qa1UunS2UkoplzYfKaWUcmnzkVIVIiIfBv5b0dNnjTG/\ntBzpUWohtPlIKaWUS5uPlFJKuTQoKKWUcmlQUEop5dKgoJRSyqVBQSmllOv/B6FYngoJWTSUAAAA\nAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.plot(x='total_bill', y='perc', kind='scatter', alpha=.4)"
]
},
{
"cell_type": "code",
"execution_count": 42,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"df.loc[df['smoker'] == 'No', 'smoker'] = False\n",
"df.loc[df['smoker'] == 'Yes', 'smoker'] = True\n",
"df['smoker'] = df['smoker'].astype(bool)"
]
},
{
"cell_type": "code",
"execution_count": 43,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"\n",
"total_bill float64\n",
"tip float64\n",
"sex object\n",
"smoker bool\n",
"day object\n",
"time object\n",
"size int64\n",
"perc float64\n",
"dtype: object"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.dtypes"
]
},
{
"cell_type": "code",
"execution_count": 44,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 44,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"df.loc[df.smoker, 'perc'].plot(kind='hist', label='Fumatori')\n",
"df.loc[~df.smoker, 'perc'].plot(kind='hist', label='Non fumatori')\n",
"plt.legend()"
]
},
{
"cell_type": "code",
"execution_count": 45,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Versione ripulita\n",
"import numpy as np\n",
"\n",
"bins = np.arange(0, 1, .05)\n",
"df.loc[df.smoker, 'perc'].plot(kind='hist', label='Fumatore', bins=bins, alpha=.5,\n",
" normed=True)\n",
"df.loc[~df.smoker, 'perc'].plot(kind='hist', label='Non fumatore', bins=bins, alpha=.5,\n",
" normed=True)\n",
"plt.legend()"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Menzionare seaborn"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}