{"cells":[
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "import pandas as pd\nimport numpy as np\nimport matplotlib.pyplot as plt\nimport seaborn as sns\n%matplotlib inline\n\nfrom bokeh.plotting import figure, output_notebook, show, vplot, ColumnDataSource\nfrom bokeh.charts import TimeSeries\nfrom bokeh.models import HoverTool, CrosshairTool\nfrom bokeh.palettes import brewer\nimport gc\nimport dask.dataframe as dd\n\noutput_notebook()"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "train  =  pd.read_csv('../input/train.csv', usecols = ('date_time', 'hotel_cluster','is_booking'), \n                      parse_dates = ['date_time'])"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "train['dow'] = train.date_time.dt.weekday\ntrain['year'] = train.date_time.dt.year\ntrain['month'] = train.date_time.dt.month\ntrain['day'] = train.date_time.dt.day"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "train_agg = train.groupby(['dow','year','month','day', 'hotel_cluster']).agg(['sum', 'count'] )\ntrain_agg.columns = ('bookings', 'total')\ntrain_agg.head()"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "\ndel(train)\n\ngc.collect()"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "pv_agg = train_agg.reset_index()\npv_agg['dt'] = pd.to_datetime( pv_agg.year*10000 + pv_agg.month*100 + pv_agg.day\n                                  , format='%Y%m%d')\npv_agg = pv_agg.pivot(index = 'dt', columns = 'hotel_cluster', values = 'bookings')\npv_agg.columns = [str(i) for i in pv_agg.columns]\npv_agg['dt'] = pv_agg.index\npv_agg['dow'] = pv_agg.dt.dt.weekday\npv_agg.head()"
 }
],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"}}, "nbformat": 4, "nbformat_minor": 0}