{"cells":[
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "import numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)"
 },
 {
  "cell_type": "markdown",
  "metadata": {},
  "source": "read training data"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "df = pd.read_csv('../input/train.csv')"
 },
 {
  "cell_type": "markdown",
  "metadata": {},
  "source": "Create sample and break into train test set"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "from sklearn.cross_validation import train_test_split\ndf_sample = df.sample(frac=0.2, replace=False)\ndf_sample['dow'] = ((df_sample.time/1440)%7).astype(int)\ndf_sample['hour'] = ((df_sample.time/60)%24).astype(int)\n\ndf_sample_train, df_sample_test = train_test_split(df_sample, test_size=0.5, random_state=42)"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "from sklearn.ensemble import RandomForestClassifier\nrf = RandomForestClassifier(max_depth=5).fit(df_sample_train[['x','y','dow','hour']], df_sample_train['place_id'])"
 },
 {
  "cell_type": "code",
  "execution_count": null,
  "metadata": {
   "collapsed": false
  },
  "outputs": [],
  "source": "pred = rf.predict(df_sample_test[['x','y','dow','hour']])"
 }
],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"}}, "nbformat": 4, "nbformat_minor": 0}