In [52]:
import pickle
import pandas as pd
import numpy as np
import random
#from sklearn import linear_model
#from sklearn import naive_bayes
from sklearn import tree
from matplotlib import pyplot as plt

In [2]:
%matplotlib notebook

In [3]:
results = pd.read_csv('/media/128G/bathhacked/BANES_Historic_Car_Park_Occupancy.csv', engine='c', parse_dates=['LastUpdate'], dayfirst=True)

In [4]:
results.reset_index()
results['LastUpdate2'] = results['LastUpdate']
results = results.set_index('LastUpdate')
results = results.sort_index()

In [78]:
results = results[results['Name'] == "Odd Down P+R"]
fig1 = plt.figure()
results['Percentage'].plot()


Out[78]:
<matplotlib.axes._subplots.AxesSubplot at 0x7fa56f006630>

In [6]:
def hr_func(ts):
    return ts.hour

results['time_hour'] = results['LastUpdate2'].apply(hr_func)

def min_func(ts):
    return ts.minute

results['time_min'] = results['LastUpdate2'].apply(min_func)

In [7]:
def day_of_month(ts):
    return ts.day

results['day_of_month'] = results['LastUpdate2'].apply(day_of_month)

In [8]:
def month(ts):
    return ts.month

results['month'] = results['LastUpdate2'].apply(month)

def year(ts):
    return ts.year

results['year'] = results['LastUpdate2'].apply(year)

def weekday(ts):
    return ts.weekday()

results['weekday'] = results['LastUpdate2'].apply(weekday)

In [ ]:


In [9]:
training = results[(results['year'] <= 2015) | ((results['year'] == 2016) & (results['month'] < 9))]
test = results[(results['year'] == 2016) & (results['month'] >= 9)]

feature_names = ['year','month','day_of_month','weekday','time_hour','time_min']

train_features = training[feature_names]
train_occupancy = training['Percentage']
test_features = test[feature_names]
test_occupancy = test['Percentage']

In [ ]:


In [72]:
#regressor = linear_model.LinearRegression()
#regressor = naive_bayes.GaussianNB()
regressor = tree.DecisionTreeRegressor(max_depth=10)

regressor.fit( train_features, train_occupancy)


Out[72]:
DecisionTreeRegressor(criterion='mse', max_depth=10, max_features=None,
           max_leaf_nodes=None, min_impurity_split=1e-07,
           min_samples_leaf=1, min_samples_split=2,
           min_weight_fraction_leaf=0.0, presort=False, random_state=None,
           splitter='best')

In [73]:
predictions = regressor.predict(test_features)
#predictions.size
test['prediction'] = predictions

test


/home/tom/.pyenv/versions/3.5.2/envs/betfair-python3.5/lib/python3.5/site-packages/ipykernel/__main__.py:3: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead

See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
  app.launch_new_instance()
Out[73]:
ID Name Description Capacity Status Occupancy Percentage Easting Northing DateUploaded Location LastUpdate2 time_hour time_min day_of_month month year weekday prediction
LastUpdate
2016-09-01 00:03:50 66cb86348a7577eca71d58499882af8d Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:05:02 AM (51.352935229, -2.38389427175) 2016-09-01 00:03:50 0 3 1 9 2016 3 0.000000
2016-09-01 00:09:50 717440be9b086933fe6b2d4e18afc68c Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:10:01 AM (51.352935229, -2.38389427175) 2016-09-01 00:09:50 0 9 1 9 2016 3 0.000000
2016-09-01 00:11:50 1c7ff064e6a87da02aaf183a28bcac7b Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:15:02 AM (51.352935229, -2.38389427175) 2016-09-01 00:11:50 0 11 1 9 2016 3 0.000000
2016-09-01 00:19:51 da0405866309014de7843e7c451c9362 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:20:01 AM (51.352935229, -2.38389427175) 2016-09-01 00:19:51 0 19 1 9 2016 3 0.000000
2016-09-01 00:23:51 4e1c829caf7293b11f4fef50e2baab98 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:25:02 AM (51.352935229, -2.38389427175) 2016-09-01 00:23:51 0 23 1 9 2016 3 0.000000
2016-09-01 00:29:51 fdbbb6c7ce401f5b7d404c856ee57a60 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:30:02 AM (51.352935229, -2.38389427175) 2016-09-01 00:29:51 0 29 1 9 2016 3 0.000000
2016-09-01 00:33:50 f4eddb457b7b3d9d8856a43d91c547ed Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:35:01 AM (51.352935229, -2.38389427175) 2016-09-01 00:33:50 0 33 1 9 2016 3 0.000000
2016-09-01 00:39:52 be5bb9e937aba0dfe7b7241261423c6b Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:40:01 AM (51.352935229, -2.38389427175) 2016-09-01 00:39:52 0 39 1 9 2016 3 0.000000
2016-09-01 00:43:51 6f62c55622cbc7609a8620daf6f1ff24 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:45:01 AM (51.352935229, -2.38389427175) 2016-09-01 00:43:51 0 43 1 9 2016 3 0.000000
2016-09-01 00:48:50 d0bfa4508bdc430897de35a499033cf9 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:50:02 AM (51.352935229, -2.38389427175) 2016-09-01 00:48:50 0 48 1 9 2016 3 0.000000
2016-09-01 00:53:52 84b79c18357588e1f51b8f2affe3b7d1 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 12:55:02 AM (51.352935229, -2.38389427175) 2016-09-01 00:53:52 0 53 1 9 2016 3 0.000000
2016-09-01 00:59:51 06d56bf8d0a87fd20ff0e3df93e96729 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:00:01 AM (51.352935229, -2.38389427175) 2016-09-01 00:59:51 0 59 1 9 2016 3 0.000000
2016-09-01 01:03:52 edb3619cbd12b7c2912c1b50a7ce7af4 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:05:02 AM (51.352935229, -2.38389427175) 2016-09-01 01:03:52 1 3 1 9 2016 3 0.000000
2016-09-01 01:09:51 89531a8def191b4ef47de3500e77fa5a Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:10:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:09:51 1 9 1 9 2016 3 0.000000
2016-09-01 01:13:51 040292413043b9ffa63b83dde0e41eca Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:15:02 AM (51.352935229, -2.38389427175) 2016-09-01 01:13:51 1 13 1 9 2016 3 0.000000
2016-09-01 01:19:50 142888fabee87b79b9220ff2f659cb7e Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:20:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:19:50 1 19 1 9 2016 3 0.000000
2016-09-01 01:20:51 31cf370d9e2f2cab2ea5fd2b49719865 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:25:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:20:51 1 20 1 9 2016 3 0.000000
2016-09-01 01:29:51 9240af4fa3f3a8216d7b53fd48293e20 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:30:02 AM (51.352935229, -2.38389427175) 2016-09-01 01:29:51 1 29 1 9 2016 3 0.000000
2016-09-01 01:33:51 57b583e4d64c7c7431a5461284c11842 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:35:02 AM (51.352935229, -2.38389427175) 2016-09-01 01:33:51 1 33 1 9 2016 3 0.000000
2016-09-01 01:39:51 6aa7337f186e6294fec8a2781e65c3c0 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:40:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:39:51 1 39 1 9 2016 3 0.000000
2016-09-01 01:43:51 78038ec9b7ec948bc03f53bf5172d667 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:45:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:43:51 1 43 1 9 2016 3 0.000000
2016-09-01 01:48:50 62435a210c0d46979b596ce16613af4d Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:50:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:48:50 1 48 1 9 2016 3 0.000000
2016-09-01 01:53:52 dc474a6acaf30844bcecf964cb93dff9 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 01:55:01 AM (51.352935229, -2.38389427175) 2016-09-01 01:53:52 1 53 1 9 2016 3 0.000000
2016-09-01 01:58:51 3cd568e91e7e62c0c383d90094fd256b Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:00:02 AM (51.352935229, -2.38389427175) 2016-09-01 01:58:51 1 58 1 9 2016 3 0.000000
2016-09-01 02:03:51 c208c697883c78691f79fb1fe29c49d9 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:05:01 AM (51.352935229, -2.38389427175) 2016-09-01 02:03:51 2 3 1 9 2016 3 0.000000
2016-09-01 02:07:51 522fb9f25c19ceb328c3b621d256af71 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:10:01 AM (51.352935229, -2.38389427175) 2016-09-01 02:07:51 2 7 1 9 2016 3 0.000000
2016-09-01 02:13:52 ec356a5c86c72fa7a407a0c6228471f5 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:15:02 AM (51.352935229, -2.38389427175) 2016-09-01 02:13:52 2 13 1 9 2016 3 0.000000
2016-09-01 02:19:52 eb63e4eda35cdbf88228f188ca57b378 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:20:01 AM (51.352935229, -2.38389427175) 2016-09-01 02:19:52 2 19 1 9 2016 3 0.000000
2016-09-01 02:23:51 b3f81965099f6d235fdc294d614ccfde Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:25:02 AM (51.352935229, -2.38389427175) 2016-09-01 02:23:51 2 23 1 9 2016 3 0.000000
2016-09-01 02:28:51 da6b9b50a974780236429514d04cbd25 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 20 2 373363.0 161610.0 01/09/2016 02:30:02 AM (51.352935229, -2.38389427175) 2016-09-01 02:28:51 2 28 1 9 2016 3 0.000000
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2016-11-09 12:49:49 cd3723244c008e96bcb1a7260ebea447 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Filling 776 62 373363.0 161610.0 09/11/2016 12:50:02 PM (51.352935229, -2.38389427175) 2016-11-09 12:49:49 12 49 9 11 2016 2 61.265278
2016-11-09 12:54:48 fd57fb0511ff64b890feae35e631bcba Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Static 772 62 373363.0 161610.0 09/11/2016 12:55:02 PM (51.352935229, -2.38389427175) 2016-11-09 12:54:48 12 54 9 11 2016 2 61.265278
2016-11-09 12:58:50 aa2da37bc41ba8388001571adc1d66a0 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 766 61 373363.0 161610.0 09/11/2016 01:00:02 PM (51.352935229, -2.38389427175) 2016-11-09 12:58:50 12 58 9 11 2016 2 61.265278
2016-11-09 13:04:51 5335d11676a4ec36aac734284787a8b2 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 764 61 373363.0 161610.0 09/11/2016 01:05:02 PM (51.352935229, -2.38389427175) 2016-11-09 13:04:51 13 4 9 11 2016 2 61.265278
2016-11-09 13:09:49 23f54ba616d32b22c070d22819d7d612 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 763 61 373363.0 161610.0 09/11/2016 01:10:02 PM (51.352935229, -2.38389427175) 2016-11-09 13:09:49 13 9 9 11 2016 2 61.265278
2016-11-09 13:14:49 c2c3a6fa0c384a7d6cafa06ee167df56 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 760 61 373363.0 161610.0 09/11/2016 01:15:02 PM (51.352935229, -2.38389427175) 2016-11-09 13:14:49 13 14 9 11 2016 2 61.265278
2016-11-09 13:18:51 dfa883debf8c6f391ec32ce6e4a4b889 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 759 61 373363.0 161610.0 09/11/2016 01:20:02 PM (51.352935229, -2.38389427175) 2016-11-09 13:18:51 13 18 9 11 2016 2 61.265278
2016-11-09 13:24:48 8fa88468379b77c25fbdf5fec17c07b6 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 749 60 373363.0 161610.0 09/11/2016 01:25:02 PM (51.352935229, -2.38389427175) 2016-11-09 13:24:48 13 24 9 11 2016 2 61.265278
2016-11-09 13:29:49 51e0863749cc2b8b417f68a2a057cd67 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 750 60 373363.0 161610.0 09/11/2016 01:30:01 PM (51.352935229, -2.38389427175) 2016-11-09 13:29:49 13 29 9 11 2016 2 61.265278
2016-11-09 13:34:52 8afc5ad62e7f65cdb8ae11bdbb407579 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 731 58 373363.0 161610.0 09/11/2016 01:35:01 PM (51.352935229, -2.38389427175) 2016-11-09 13:34:52 13 34 9 11 2016 2 61.265278
2016-11-09 13:39:49 9db49c05c19c69df6e5c21d9bbd82511 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 732 58 373363.0 161610.0 09/11/2016 01:40:01 PM (51.352935229, -2.38389427175) 2016-11-09 13:39:49 13 39 9 11 2016 2 61.265278
2016-11-09 13:44:49 0b1a0477fb3520b5226f2bae465f844d Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 724 58 373363.0 161610.0 09/11/2016 01:45:01 PM (51.352935229, -2.38389427175) 2016-11-09 13:44:49 13 44 9 11 2016 2 61.265278
2016-11-09 13:49:50 d71055a9d22b9b2ec0b87314e5f44e70 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 711 57 373363.0 161610.0 09/11/2016 01:50:01 PM (51.352935229, -2.38389427175) 2016-11-09 13:49:50 13 49 9 11 2016 2 61.265278
2016-11-09 13:54:49 bc7f44ea858c3ad781104d5be46c68a1 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 712 57 373363.0 161610.0 09/11/2016 01:55:01 PM (51.352935229, -2.38389427175) 2016-11-09 13:54:49 13 54 9 11 2016 2 61.265278
2016-11-09 13:59:50 fd8013522523445cde27575dc0b97786 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 702 56 373363.0 161610.0 09/11/2016 02:00:02 PM (51.352935229, -2.38389427175) 2016-11-09 13:59:50 13 59 9 11 2016 2 61.265278
2016-11-09 14:04:49 aa3f45106afbf10202b879e9814b1e32 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 702 56 373363.0 161610.0 09/11/2016 02:05:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:04:49 14 4 9 11 2016 2 61.265278
2016-11-09 14:09:49 ec0cdbe1c58d8a707c2f91942e63491e Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 694 55 373363.0 161610.0 09/11/2016 02:10:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:09:49 14 9 9 11 2016 2 61.265278
2016-11-09 14:14:50 54565404f5036dba3f5b3146164313e8 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 695 56 373363.0 161610.0 09/11/2016 02:15:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:14:50 14 14 9 11 2016 2 61.265278
2016-11-09 14:19:49 1b6f6603147364d102967b9763a0f2bf Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 700 56 373363.0 161610.0 09/11/2016 02:20:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:19:49 14 19 9 11 2016 2 61.265278
2016-11-09 14:24:49 8d1330291012ca263c12d7cce45339b6 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 683 55 373363.0 161610.0 09/11/2016 02:25:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:24:49 14 24 9 11 2016 2 61.265278
2016-11-09 14:29:51 f1922115e1e0a6e65b72cc95829ebaba Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 679 54 373363.0 161610.0 09/11/2016 02:30:03 PM (51.352935229, -2.38389427175) 2016-11-09 14:29:51 14 29 9 11 2016 2 61.265278
2016-11-09 14:34:49 41ba9fb04f0e40322984e2873170317b Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 673 54 373363.0 161610.0 09/11/2016 02:35:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:34:49 14 34 9 11 2016 2 61.265278
2016-11-09 14:39:49 ba995526b7436aad62e995bfd794ef08 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 666 53 373363.0 161610.0 09/11/2016 02:40:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:39:49 14 39 9 11 2016 2 61.265278
2016-11-09 14:44:50 60bad8589821c7fcf63ecf92ed020102 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 662 53 373363.0 161610.0 09/11/2016 02:45:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:44:50 14 44 9 11 2016 2 61.265278
2016-11-09 14:48:50 8062c3426728be2a3169a7d662443999 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 645 52 373363.0 161610.0 09/11/2016 02:50:01 PM (51.352935229, -2.38389427175) 2016-11-09 14:48:50 14 48 9 11 2016 2 61.265278
2016-11-09 14:59:52 acfa3469836c6d8cf2f7859a14cf06df Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 623 50 373363.0 161610.0 09/11/2016 03:00:02 PM (51.352935229, -2.38389427175) 2016-11-09 14:59:52 14 59 9 11 2016 2 61.265278
2016-11-09 15:04:49 92a226379166b527239e3020d9ab32ee Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 618 49 373363.0 161610.0 09/11/2016 03:05:27 PM (51.352935229, -2.38389427175) 2016-11-09 15:04:49 15 4 9 11 2016 2 48.777778
2016-11-09 15:09:49 473db0c03411acd87ae7dab1272f5a95 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 606 48 373363.0 161610.0 09/11/2016 03:10:02 PM (51.352935229, -2.38389427175) 2016-11-09 15:09:49 15 9 9 11 2016 2 48.777778
2016-11-09 15:14:51 838192d963b7873682fa5eecbb5892c8 Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 599 48 373363.0 161610.0 09/11/2016 03:15:02 PM (51.352935229, -2.38389427175) 2016-11-09 15:14:51 15 14 9 11 2016 2 48.777778
2016-11-09 15:19:50 0afaec917d6533d2c131dfee89824f6f Odd Down P+R Odd Down P+R / A367 / P+R / Bath 1252 Emptying 589 47 373363.0 161610.0 09/11/2016 03:20:02 PM (51.352935229, -2.38389427175) 2016-11-09 15:19:50 15 19 9 11 2016 2 48.777778

16746 rows × 19 columns


In [74]:
# The coefficients
print('Coefficients: \n', list(zip(feature_names, regressor.coef_)))


---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-74-77eaec7412e5> in <module>()
      1 # The coefficients
----> 2 print('Coefficients: \n', list(zip(feature_names, regressor.coef_)))

AttributeError: 'DecisionTreeRegressor' object has no attribute 'coef_'

In [75]:
# The mean squared error
print("Mean squared error: %.2f"
      % np.mean((regressor.predict(test_features) - test_occupancy) ** 2))


Mean squared error: 11.00

In [76]:
# Explained variance score: 1 is perfect prediction
print('Variance score: %.2f' % regressor.score(test_features, test_occupancy))


Variance score: 0.98

In [77]:
fig2 = plt.figure()
test['Percentage'].plot()
test['prediction'].plot()


Out[77]:
<matplotlib.axes._subplots.AxesSubplot at 0x7fa56f09a438>

In [71]:
tree.export_graphviz(regressor, out_file='depth2.dot')

In [ ]: