Skip to content

Instantly share code, notes, and snippets.

@rbgom
Last active January 8, 2018 12:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rbgom/8654797b6ec982b6e2f6ad771987d3be to your computer and use it in GitHub Desktop.
Save rbgom/8654797b6ec982b6e2f6ad771987d3be to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Análisis exploratorio"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Importamos las principales librerías y el dataset. Observamos el número de filas (316200), columnas (6) y los primeros registros."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(316200, 6)"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import pandas as pd\n",
"import seaborn as sns\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"df = pd.read_csv(\"../conversion_data.csv\")\n",
"df.shape"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>country</th>\n",
" <th>age</th>\n",
" <th>new_user</th>\n",
" <th>source</th>\n",
" <th>total_pages_visited</th>\n",
" <th>converted</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>UK</td>\n",
" <td>25</td>\n",
" <td>1</td>\n",
" <td>Ads</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>US</td>\n",
" <td>23</td>\n",
" <td>1</td>\n",
" <td>Seo</td>\n",
" <td>5</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>US</td>\n",
" <td>28</td>\n",
" <td>1</td>\n",
" <td>Seo</td>\n",
" <td>4</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>China</td>\n",
" <td>39</td>\n",
" <td>1</td>\n",
" <td>Seo</td>\n",
" <td>5</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>US</td>\n",
" <td>30</td>\n",
" <td>1</td>\n",
" <td>Seo</td>\n",
" <td>6</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" country age new_user source total_pages_visited converted\n",
"0 UK 25 1 Ads 1 0\n",
"1 US 23 1 Seo 5 0\n",
"2 US 28 1 Seo 4 0\n",
"3 China 39 1 Seo 5 0\n",
"4 US 30 1 Seo 6 0"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Comprobamos las personas mayores de 100 años"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"Chequeamos si existen celdas vacías. Nos devuelve que todas las filas y columnas contienen algún valor."
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sum(df.isnull().values.ravel())\n"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sum([True for idx,row in df.iterrows() if any(row.isnull())])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Comprobamos de qué tipo es cada variable y cambiamos su nomenclatura: (integer = numéricas y object = categóricas) "
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Variable</th>\n",
" <th>Tipo</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>country</td>\n",
" <td>object</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>age</td>\n",
" <td>int64</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>new_user</td>\n",
" <td>int64</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>source</td>\n",
" <td>object</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>total_pages_visited</td>\n",
" <td>int64</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>converted</td>\n",
" <td>int64</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Variable Tipo\n",
"0 country object\n",
"1 age int64\n",
"2 new_user int64\n",
"3 source object\n",
"4 total_pages_visited int64\n",
"5 converted int64"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"dtype_df = df.dtypes.reset_index()\n",
"dtype_df.columns = [\"Variable\", \"Tipo\"]\n",
"dtype_df"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def get_var_category(series): \n",
" unique_count = series.nunique(dropna=False)\n",
" total_count = len(series)\n",
" if pd.api.types.is_numeric_dtype(series): \n",
" return 'Numerical' \n",
" elif pd.api.types.is_datetime64_dtype(series): \n",
" return 'Date' \n",
" elif unique_count==total_count: \n",
" return 'Text (Unique)' \n",
" else: \n",
" return 'Categorical'\n",
"\n",
"def print_categories(df): \n",
" for column_name in df.columns: \n",
" print(column_name, \": \", get_var_category(df[column_name]))\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"country : Categorical\n",
"age : Numerical\n",
"new_user : Numerical\n",
"source : Categorical\n",
"total_pages_visited : Numerical\n",
"converted : Numerical\n"
]
}
],
"source": [
"print_categories(df)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Analizamos la variable 'edad' y vemos que hay un valor máximo de 123 años."
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"count 316200.000000\n",
"mean 30.569858\n",
"std 8.271802\n",
"min 17.000000\n",
"25% 24.000000\n",
"50% 30.000000\n",
"75% 36.000000\n",
"max 123.000000\n",
"Name: age, dtype: float64\n"
]
},
{
"data": {
"text/plain": [
"<matplotlib.axes._subplots.AxesSubplot at 0xbbf3128>"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\ntTKILK4YYkYAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xa7f1a20>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"print(df['age'].describe())\n",
"sns.distplot( df[\"age\"] , color=\"y\", bins=12)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>country</th>\n",
" <th>age</th>\n",
" <th>new_user</th>\n",
" <th>source</th>\n",
" <th>total_pages_visited</th>\n",
" <th>converted</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>90928</th>\n",
" <td>Germany</td>\n",
" <td>123</td>\n",
" <td>0</td>\n",
" <td>Seo</td>\n",
" <td>15</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>295581</th>\n",
" <td>UK</td>\n",
" <td>111</td>\n",
" <td>0</td>\n",
" <td>Ads</td>\n",
" <td>10</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" country age new_user source total_pages_visited converted\n",
"90928 Germany 123 0 Seo 15 1\n",
"295581 UK 111 0 Ads 10 1"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df[df.age>=100]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Eliminamos los valores superiores a 110 años."
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"count 316198.000000\n",
"mean 30.569311\n",
"std 8.268958\n",
"min 17.000000\n",
"25% 24.000000\n",
"50% 30.000000\n",
"75% 36.000000\n",
"max 79.000000\n",
"Name: age, dtype: float64"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df2 = df.drop(df[(df.age > 110)].index)\n",
"df2['age'].describe()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Analizamos la conversión por tipo de tráfico web: primero en números absolutos y después transformamos a %"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>converted</th>\n",
" <th>0</th>\n",
" <th>1</th>\n",
" <th>All</th>\n",
" </tr>\n",
" <tr>\n",
" <th>source</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Ads</th>\n",
" <td>85680</td>\n",
" <td>3059</td>\n",
" <td>88739</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Direct</th>\n",
" <td>70380</td>\n",
" <td>2040</td>\n",
" <td>72420</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Seo</th>\n",
" <td>149940</td>\n",
" <td>5099</td>\n",
" <td>155039</td>\n",
" </tr>\n",
" <tr>\n",
" <th>All</th>\n",
" <td>306000</td>\n",
" <td>10198</td>\n",
" <td>316198</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"converted 0 1 All\n",
"source \n",
"Ads 85680 3059 88739\n",
"Direct 70380 2040 72420\n",
"Seo 149940 5099 155039\n",
"All 306000 10198 316198"
]
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pd.crosstab(df2.source,df2.converted, margins=True)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>converted</th>\n",
" <th>0</th>\n",
" <th>1</th>\n",
" <th>All</th>\n",
" </tr>\n",
" <tr>\n",
" <th>source</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>Ads</th>\n",
" <td>0.965517</td>\n",
" <td>0.034483</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Direct</th>\n",
" <td>0.971831</td>\n",
" <td>0.028169</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Seo</th>\n",
" <td>0.967105</td>\n",
" <td>0.032895</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>All</th>\n",
" <td>0.967742</td>\n",
" <td>0.032258</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"converted 0 1 All\n",
"source \n",
"Ads 0.965517 0.034483 1.0\n",
"Direct 0.971831 0.028169 1.0\n",
"Seo 0.967105 0.032895 1.0\n",
"All 0.967742 0.032258 1.0"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def percConvert(ser):\n",
" return ser/float(ser[-1])\n",
"pd.crosstab(df.source,df.converted, margins=True).apply(percConvert, axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Analizamos la tasa de conversión por tipo de usuario: el 70% de las conversiones es por parte de usuarios existentes y el 30% de nuevos usuarios."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>new_user</th>\n",
" <th>0</th>\n",
" <th>1</th>\n",
" <th>All</th>\n",
" </tr>\n",
" <tr>\n",
" <th>converted</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0.301618</td>\n",
" <td>0.698382</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>0.702059</td>\n",
" <td>0.297941</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>All</th>\n",
" <td>0.314535</td>\n",
" <td>0.685465</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"new_user 0 1 All\n",
"converted \n",
"0 0.301618 0.698382 1.0\n",
"1 0.702059 0.297941 1.0\n",
"All 0.314535 0.685465 1.0"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def percConvert(ser):\n",
" return ser/float(ser[-1])\n",
"pd.crosstab(df.converted,df.new_user, margins=True).apply(percConvert, axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Por países, en valores absolutos el mayor volumen de conversión viene de EE.UU (6732), aunque porcentualmente es Alemania el principal protagonista (6%)."
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>converted</th>\n",
" <th>0</th>\n",
" <th>1</th>\n",
" </tr>\n",
" <tr>\n",
" <th>country</th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>China</th>\n",
" <td>76500</td>\n",
" <td>102</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Germany</th>\n",
" <td>12240</td>\n",
" <td>816</td>\n",
" </tr>\n",
" <tr>\n",
" <th>UK</th>\n",
" <td>45900</td>\n",
" <td>2550</td>\n",
" </tr>\n",
" <tr>\n",
" <th>US</th>\n",
" <td>171360</td>\n",
" <td>6732</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"converted 0 1\n",
"country \n",
"China 76500 102\n",
"Germany 12240 816\n",
"UK 45900 2550\n",
"US 171360 6732"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pais_tabla = pd.crosstab(index=df[\"country\"], \n",
" columns=df[\"converted\"])\n",
"\n",
"pais_tabla"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th>converted</th>\n",
" <th>0</th>\n",
" <th>1</th>\n",
" <th>All</th>\n",
" </tr>\n",
" <tr>\n",
" <th>country</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>China</th>\n",
" <td>0.998668</td>\n",
" <td>0.001332</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>Germany</th>\n",
" <td>0.937500</td>\n",
" <td>0.062500</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>UK</th>\n",
" <td>0.947368</td>\n",
" <td>0.052632</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>US</th>\n",
" <td>0.962199</td>\n",
" <td>0.037801</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>All</th>\n",
" <td>0.967742</td>\n",
" <td>0.032258</td>\n",
" <td>1.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
"converted 0 1 All\n",
"country \n",
"China 0.998668 0.001332 1.0\n",
"Germany 0.937500 0.062500 1.0\n",
"UK 0.947368 0.052632 1.0\n",
"US 0.962199 0.037801 1.0\n",
"All 0.967742 0.032258 1.0"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def percConvert(ser):\n",
" return ser/float(ser[-1])\n",
"pd.crosstab(df.country,df.converted, margins=True).apply(percConvert, axis=1)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5,1,'Conversión por país')"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\nkqSW+/8BVrkY5dP+hmsAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0xced7e48>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"%matplotlib inline\n",
"pais_tabla.plot(kind=\"bar\", \n",
" figsize=(10,5),\n",
" stacked=True)\n",
"plt.title('Conversión por país')\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment