/
busStop16
61 lines (52 loc) · 1.38 KB
/
busStop16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#This is predict model for
##118 Street & Jasper Avenue,Stop#:1688
#Author @Lu Yin
import pandas as pd
import math
from sklearn import svm
#import numpy as np
#from sklearn.neural_network import MLPRegressor
from sknn.mlp import Regressor, Layer
Train = r'/Users/yinlu/Desktop/bustStop_16.csv'
Target = r'/Users/yinlu/Desktop/extraData_16.csv'
divPath = r'/Users/yinlu/Desktop/MAPE_16.csv'
df = pd.read_csv(Train)
# names=['schedule', 'busDelay','stopDelay','Mon','Tue','Wed','Thu','Fri','Sat','Sun','Sunny','Rainy','Snowy']
diff = pd.read_csv(Target,names=['diff','schedule'])
div = pd.read_csv(divPath)
#if math.isnan(df['diff']): df.diff = 0
#df = df[pd.notnull(df['diff'])]
#print(df);
## small example.
X = df[1:1300].values
y = diff[1:1300]['diff'].values
#print(X)
#print(y)
Xtest = df[1300:1377].values;
yTarget = diff[1300:1377]['diff'].values;
meanDiv = div[1300:1377].values
nn = Regressor(
layers=[
Layer("Rectifier", units=100),
Layer("Linear")],
learning_rate=0.00001,
n_iter=100)
nn.fit(X, y)
result = nn.predict(Xtest);
#print(result);
#calculate accuracy
#m = size_of(Xtest)
mape = 0
for i in range(len(result)):
#print("#####")
#print i
#print(" ")
#print(result[i])
#print(" ")
#print(yTarget[i])
diffff = abs(result[i]-yTarget[i])
#print(diffff)
mean = abs(result[i]-yTarget[i])/meanDiv[i]
mape = mape + mean;
print("mape: ")
print(mape)