hongaik commited on
Commit
fdf95c5
1 Parent(s): e234abd

initial commit

Browse files
app.py ADDED
@@ -0,0 +1,287 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import numpy as np
2
+ import pandas as pd
3
+ import geopandas as gpd
4
+ from shapely.geometry import Point, LineString
5
+ import pickle
6
+ import folium
7
+ import requests
8
+ import streamlit as st
9
+ import seaborn as sns
10
+ from streamlit_folium import st_folium
11
+ import matplotlib.pyplot as plt
12
+ from utils import *
13
+
14
+ ########## Title for the Web App ##########
15
+ st.title("Property Price Predictor")
16
+ st.markdown("""This app predicts your house price based on a few indicators, and displays amenities within 2 km. Please note the following:
17
+ - Only property types allowed are HDB, Condominium, Executive Condominium and Apartment.
18
+ - Model was trained on **resale, leasehold** properties from 2021 onwards to account for COVID-19 effects; predictions for new and/or freehold properties will not be accurate.
19
+ - Geospatial features are obtained from OneMap API with postal code. Newer postal codes may not be available (eg. property under construction)
20
+ """)
21
+
22
+ testing_postal = st.text_input('Test your postal code here')
23
+ if st.button('Click to retrieve data!'):
24
+ result = test_postal(testing_postal)
25
+ if result == 'INVALID LOCATION':
26
+ st.error('Invalid postal code, you may attempt to search for the name or address instead.')
27
+ else:
28
+ st.success('SEARCHVAL: ' + result[0] + ' ADDRESS: ' + result[1] + ' LATITUDE: ' + str(result[2]) + ' LONGITUDE: ' + str(result[3]))
29
+
30
+
31
+
32
+ st.header('Predict your property price here!')
33
+
34
+ with st.form("inputs"):
35
+ input_postal = st.text_input('Enter your postal code here e.g. 123456')
36
+ input_storey = st.text_input('Enter your property storey here e.g. 5')
37
+ input_age_asof_transaction = st.text_input('Enter the age in years of your property here e.g. 12')
38
+ input_floor_area_sqft = st.text_input('Enter the floor area in square feet of your property here e.g. 756')
39
+ input_propertyType = st.selectbox(
40
+ 'Enter your property type here',
41
+ ('HDB', 'Condominium', 'Executive Condominium', 'Apartment'))
42
+ propertyType_Apartment = 0
43
+ propertyType_Condominium = 0
44
+ propertyType_Executive_Condominium = 0
45
+ propertyType_HDB = 0
46
+
47
+ submitted = st.form_submit_button("Predict!")
48
+
49
+ if submitted:
50
+ # validate postal
51
+ if len(input_postal) == 6:
52
+ try:
53
+ validate = int(input_postal)
54
+ except:
55
+ st.error('Invalid postal code, please enter a 6 digit integer.')
56
+ st.stop()
57
+ else:
58
+ st.error('Invalid postal code, please enter a 6 digit integer.')
59
+ st.stop()
60
+
61
+ # validate storey
62
+ try:
63
+ input_storey = int(input_storey)
64
+ except:
65
+ st.error('Invalid storey, please enter an integer.')
66
+ st.stop()
67
+
68
+ # validate age
69
+ try:
70
+ input_age_asof_transaction = int(input_age_asof_transaction)
71
+ except:
72
+ st.error('Invalid age, please enter an integer.')
73
+ st.stop()
74
+
75
+ # validate floor area
76
+ try:
77
+ input_floor_area_sqft = float(input_floor_area_sqft)
78
+ except:
79
+ st.error('Invalid floor area, please enter a number.')
80
+ st.stop()
81
+
82
+ try:
83
+ lat, long = getSVY21(input_postal)
84
+ except ValueError:
85
+ st.error('This postal code does not exist. Please use the widget above to test if the postal code exists.')
86
+ st.stop()
87
+
88
+ latlong_df = pd.DataFrame({'lat': [lat], 'long': [long]})
89
+ latlong_geo = gpd.GeoDataFrame(latlong_df, crs="EPSG:4326",
90
+ geometry=[Point(xy) for xy in zip(latlong_df['long'], latlong_df['lat'])])
91
+ latlong_geo.to_crs(epsg=3857, inplace=True)
92
+
93
+ # Filter geosubset to only properties (sold since 2017)
94
+ geosubset = geosubset[(geosubset['storey'] <= input_storey + 5) & (geosubset['storey'] >= input_storey - 5)] # filter storey +- 5
95
+ geosubset = geosubset[(geosubset['age_asof_t'] <= input_age_asof_transaction + 3) & (geosubset['age_asof_t'] >= input_age_asof_transaction - 3)] # filter age +- 3
96
+ geosubset = geosubset[(geosubset['floor_area'] <= input_floor_area_sqft + 100) & (geosubset['floor_area'] >= input_floor_area_sqft - 100)] # filter floor area to +- 50m
97
+ geosubset = geosubset[geosubset['propertyTy'] == input_propertyType] # filter property type
98
+ geosubset['distance_to_property'] = geosubset.geometry.apply(lambda x: latlong_geo.distance(x)) # filter property radius within 1km
99
+ geosubset = geosubset[geosubset['distance_to_property'] <= 1000] # filter distances within 1km
100
+
101
+ if input_propertyType == 'Apartment':
102
+ propertyType_Apartment = 1
103
+ elif input_propertyType == 'Condominium':
104
+ propertyType_Condominium = 1
105
+ elif input_propertyType == 'Executive Condominium':
106
+ propertyType_Executive_Condominium = 1
107
+ elif input_propertyType == 'HDB':
108
+ propertyType_HDB = 1
109
+
110
+ latlong_geo['district'] = postal_final.loc[postal_final['2dpostal'] == input_postal[:2], 'district'].item()
111
+ latlong_geo['storey'] = input_storey
112
+ latlong_geo['age_asof_transaction'] = input_age_asof_transaction
113
+ latlong_geo['mindist_expway'] = latlong_geo.geometry.apply(lambda x: expressway.distance(x).min())
114
+ latlong_geo['mindist_mrt'] = latlong_geo.geometry.apply(lambda x: geo_mrt.distance(x).min())
115
+ latlong_geo['mindist_mall'] = latlong_geo.geometry.apply(lambda x: geo_mall.distance(x).min())
116
+ latlong_geo['mindist_prisch'] = latlong_geo.geometry.apply(lambda x: geo_pri.distance(x).min())
117
+ latlong_geo['n_prisch_2km'] = latlong_geo.geometry.apply(lambda x: (geo_pri.distance(x) < 2000).sum())
118
+ latlong_geo['mindist_secsch'] = latlong_geo.geometry.apply(lambda x: geo_sec.distance(x).min())
119
+ latlong_geo['propertyType_Apartment'] = propertyType_Apartment
120
+ latlong_geo['propertyType_Condominium'] = propertyType_Condominium
121
+ latlong_geo['propertyType_Executive_Condominium'] = propertyType_Executive_Condominium
122
+ latlong_geo['propertyType_HDB'] = propertyType_HDB
123
+
124
+
125
+ # Do Predictions, Convert to total price with CI (different CI for different property type)
126
+ latlong_geo_nolatlong = latlong_geo.drop(columns=['lat', 'long', 'geometry'])
127
+ latlong_geo_nolatlong_encoded = enc.transform(latlong_geo_nolatlong)
128
+
129
+ prediction_psf = xgb.predict(latlong_geo_nolatlong_encoded).item()
130
+ prediction_price = round(prediction_psf * input_floor_area_sqft)
131
+
132
+ if latlong_geo_nolatlong_encoded['propertyType_Apartment'].item() == 1:
133
+ st.success("The predicted price of your property is ${:,}, with 95% confidence interval being ${:,} - ${:,}.".format(
134
+ prediction_price, int(prediction_price - 2*sd_hdb*input_floor_area_sqft), int(prediction_price + 2*sd_hdb*input_floor_area_sqft)))
135
+ elif latlong_geo_nolatlong_encoded['propertyType_Condominium'].item() == 1:
136
+ st.success("The predicted price of your property is ${:,}, with 95% confidence interval being ${:,} - ${:,}.".format(
137
+ prediction_price, int(prediction_price - 2*sd_condo*input_floor_area_sqft), int(prediction_price + 2*sd_condo*input_floor_area_sqft)))
138
+ elif latlong_geo_nolatlong_encoded['propertyType_Executive_Condominium'].item() == 1:
139
+ st.success("The predicted price of your property is ${:,}, with 95% confidence interval being ${:,} - ${:,}.".format(
140
+ prediction_price, int(prediction_price - 2*sd_ec*input_floor_area_sqft), int(prediction_price + 2*sd_ec*input_floor_area_sqft)))
141
+ elif latlong_geo_nolatlong_encoded['propertyType_HDB'].item() == 1:
142
+ st.success("The predicted price of your property is ${:,}, with 95% confidence interval being ${:,} - ${:,}.".format(
143
+ prediction_price, int(prediction_price - 2*sd_hdb*input_floor_area_sqft), int(prediction_price + 2*sd_hdb*input_floor_area_sqft)))
144
+
145
+ # between Jan 2017 and Oct 2022, propertyType, age, floor area range, storey
146
+ # use geosubset to have boxplot and folium map
147
+
148
+ if len(geosubset) > 0:
149
+ st.markdown('There are ' + str(len(geosubset)) + ' resale ' + input_propertyType + 's transacted between Jan 2017 and Oct 2022 which are similar to yours (drag the markers around as they might be overlapping):')
150
+
151
+ map = folium.Map(location=[1.290270, 103.851959], zoom_start=11)
152
+
153
+ folium.Circle(
154
+ location=[latlong_geo['lat'].item(), latlong_geo['long'].item()],
155
+ tooltip='Your Home',
156
+ popup='Your Home',
157
+ color='crimson',
158
+ radius=10
159
+ ).add_to(map)
160
+
161
+ for index, row in geosubset.iterrows():
162
+
163
+ folium.Marker(
164
+ [row['lat'], row['long']],
165
+ tooltip=f'Resale date: {row["transactDa"].strftime("%b %Y")} <br>\n'
166
+ f'Storey: {int(row["storey"])} <br>\n'
167
+ f'Age: {int(row["age_asof_t"])} <br>\n'
168
+ f'Area: {int(row["floor_area"])}sqft <br>\n'
169
+ f'Resale Price: ${int(row["resale_pri"]):,}',
170
+ icon=folium.Icon(color="blue", icon='usd', prefix='fa'),
171
+ opacity=0.8,
172
+ draggable=True,
173
+ popup=f'Resale date: {row["transactDa"].strftime("%%b %%Y")} <br>\n'
174
+ f'Storey: {int(row["storey"])} <br>\n'
175
+ f'Age: {int(row["age_asof_t"])} <br>\n'
176
+ f'Area: {int(row["floor_area"])}sqft <br>\n'
177
+ f'Resale Price: ${int(row["resale_pri"]):,}'
178
+ ).add_to(map)
179
+
180
+ st_folium(map, width=700, height=450)
181
+
182
+ fig, ax = plt.subplots()
183
+ sns.swarmplot(data=geosubset, y='resale_pri', orient='v', ax=ax)
184
+ plt.scatter(0, prediction_price, color='orange')
185
+ plt.text(0.05, prediction_price, 'Your predicted property price')
186
+ plt.ylabel('Resale Price ($)')
187
+ plt.title('Swarmplot of nearby similar properties')
188
+ st.pyplot(fig)
189
+
190
+ else:
191
+ st.markdown('Oops! There are no resale ' + input_propertyType + 's transacted between Jan 2017 and Oct 2022 which are similar to yours :(')
192
+
193
+ # Get folium visualisations
194
+ temp_mrt = latlong_geo.geometry.apply(lambda x: geo_mrt.distance(x)).melt().drop(columns=['variable'])
195
+ temp_mrt = temp_mrt[temp_mrt['value'] <= 2000]
196
+ temp_mrt = temp_mrt.merge(geo_mrt[['STN_NAME', 'lat','long']], how='left', left_index=True, right_index=True)
197
+ temp_mrt['category'] = 'MRT'
198
+ temp_mrt.columns = ['distance', 'name', 'lat', 'long', 'category']
199
+
200
+ temp_mall = latlong_geo.geometry.apply(lambda x: geo_mall.distance(x)).melt().drop(columns=['variable'])
201
+ temp_mall = temp_mall[temp_mall['value'] <= 2000]
202
+ temp_mall = temp_mall.merge(geo_mall[['mall', 'lat','long']], how='left', left_index=True, right_index=True)
203
+ temp_mall['category'] = 'Mall'
204
+ temp_mall.columns = ['distance', 'name', 'lat', 'long', 'category']
205
+
206
+ temp_pri = latlong_geo.geometry.apply(lambda x: geo_pri.distance(x)).melt().drop(columns=['variable'])
207
+ temp_pri = temp_pri[temp_pri['value'] <= 2000]
208
+ temp_pri = temp_pri.merge(geo_pri[['Name', 'lat','long']], how='left', left_index=True, right_index=True)
209
+ temp_pri['category'] = 'Primary School'
210
+ temp_pri.columns = ['distance', 'name', 'lat', 'long', 'category']
211
+
212
+ temp_sec = latlong_geo.geometry.apply(lambda x: geo_sec.distance(x)).melt().drop(columns=['variable'])
213
+ temp_sec = temp_sec[temp_sec['value'] <= 2000]
214
+ temp_sec = temp_sec.merge(geo_sec[['Name', 'lat','long']], how='left', left_index=True, right_index=True)
215
+ temp_sec['category'] = 'Secondary School'
216
+ temp_sec.columns = ['distance', 'name', 'lat', 'long', 'category']
217
+
218
+ temp_results = pd.concat([temp_mrt, temp_mall, temp_pri, temp_sec]).reset_index(drop=True).sort_values(['category', 'distance'])
219
+
220
+ st.markdown('**Here are the nearest amenities to your property:**')
221
+
222
+ for index, row in temp_results.groupby('category')[['category', 'distance', 'name']].head(2).iterrows():
223
+
224
+ if row['category'] == 'MRT':
225
+ st.markdown(row["name"] + ' :metro:: ' + str(int(row["distance"])) + 'm')
226
+ elif row['category'] == 'Mall':
227
+ st.markdown(row["name"] + ' :shopping_trolley:: ' + str(int(row["distance"])) + 'm')
228
+ elif row['category'] == 'Primary School':
229
+ st.markdown(row["name"] + ' :school:: ' + str(int(row["distance"])) + 'm')
230
+ elif row['category'] == 'Secondary School':
231
+ st.markdown(row["name"] + ' :mortar_board:: ' + str(int(row["distance"])) + 'm')
232
+
233
+ m = folium.Map(location=[1.290270, 103.851959], zoom_start=11)
234
+
235
+ folium.Marker(
236
+ [latlong_geo['lat'].item(), latlong_geo['long'].item()],
237
+ tooltip='Your Home',
238
+ popup='Your Home',
239
+ icon=folium.Icon(color="orange", icon='home', prefix='fa')
240
+ ).add_to(m)
241
+
242
+ folium.Circle(
243
+ radius=2000,
244
+ location=[latlong_geo['lat'].item(), latlong_geo['long'].item()],
245
+ color="black",
246
+ fill=False,
247
+ weight=1
248
+ ).add_to(m)
249
+
250
+ for index, row in temp_results.iterrows():
251
+
252
+ if row['category'] == 'MRT':
253
+ folium.Marker(
254
+ [row['lat'], row['long']],
255
+ tooltip=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>',
256
+ icon=folium.Icon(color="red", icon='train', prefix='fa'),
257
+ popup=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>'
258
+ ).add_to(m)
259
+
260
+ elif row['category'] == 'Mall':
261
+ folium.Marker(
262
+ [row['lat'], row['long']],
263
+ tooltip=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>',
264
+ icon=folium.Icon(color="lightgreen", icon='shopping-cart', prefix='fa'),
265
+ popup=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>'
266
+ ).add_to(m)
267
+
268
+ elif row['category'] == 'Primary School':
269
+ folium.Marker(
270
+ [row['lat'], row['long']],
271
+ tooltip=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>',
272
+ icon=folium.Icon(color="lightblue", icon='book'),
273
+ popup=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>'
274
+ ).add_to(m)
275
+
276
+ elif row['category'] == 'Secondary School':
277
+ folium.Marker(
278
+ [row['lat'], row['long']],
279
+ tooltip=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>',
280
+ icon=folium.Icon(color="darkblue", icon='book', prefix='fa'),
281
+ popup=f'{row["name"]} <br>Distance: {int(row["distance"])}m</br>'
282
+ ).add_to(m)
283
+
284
+ st_folium(m, width=700, height=450)
285
+
286
+
287
+
data/district.csv ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ district,town,2dpostal
2
+ 1,"RAFFLES PLACE, CECIL, MARINA, PEOPLE'S PARK","01, 02, 03, 04, 05, 06"
3
+ 2,"ANSON, TANJONG PAGAR","07, 08"
4
+ 3,"BUKIT MERAH,�QUEENSTOWN,�TIONG BAHRU","14, 15, 16"
5
+ 4,"TELOK BLANGAH, HARBOURFRONT","09, 10"
6
+ 5,"PASIR PANJANG, HONG LEONG GARDEN, CLEMENTI NEW TOWN","11, 12, 13"
7
+ 6,"HIGH STREET, BEACH ROAD (PARTIAL)",17
8
+ 7,"MIDDLE ROAD, GOLDEN MILE, BEACH ROAD (PARTIAL)","18, 19"
9
+ 8,"LITTLE INDIA,�FARRER PARK,�JALAN BESAR,�LAVENDER","20, 21"
10
+ 9,"ORCHARD, CAIRNHILL, RIVER VALLEY","22, 23"
11
+ 10,"ARDMORE,�BUKIT TIMAH, HOLLAND ROAD, TANGLIN","24, 25, 26, 27"
12
+ 11,"WATTEN ESTATE,�NOVENA, THOMSON","28, 29, 30"
13
+ 12,"BALESTIER,�TOA PAYOH, SERANGOON","31, 32, 33"
14
+ 13,"MACPHERSON, BRADDELL, POTONG PASIR, BIDADARI","34, 35, 36, 37"
15
+ 14,"GEYLANG, EUNOS, ALJUNIED","38, 39, 40, 41"
16
+ 15,"KATONG, JOO CHIAT, AMBER ROAD","42, 43, 44, 45"
17
+ 16,"BEDOK, UPPER EAST COAST, EASTWOOD, KEW DRIVE","46, 47, 48"
18
+ 17,"LOYANG, CHANGI","49, 50, 81"
19
+ 18,"SIMEI, TAMPINES, PASIR RIS","51, 52"
20
+ 19,"SERANGOON GARDEN,�HOUGANG,�PUNGGOL","53, 54, 55, 82"
21
+ 20,"BISHAN,�ANG MO KIO","56, 57"
22
+ 21,"UPPER BUKIT TIMAH, CLEMENTI PARK, ULU PANDAN","58, 59"
23
+ 22,"PENJURU, JURONG, PIONEER, TUAS","60, 61, 62, 63, 64"
24
+ 23,"HILLVIEW, DAIRY FARM, BUKIT PANJANG, CHOA CHU KANG, BUKIT BATOK","65, 66, 67, 68"
25
+ 24,"LIM CHU KANG, TENGAH","69, 70, 71"
26
+ 25,"KRANJI, WOODGROVE, WOODLANDS","72, 73"
27
+ 26,"UPPER THOMSON, SPRINGLEAF","77, 78"
28
+ 27,"YISHUN, SEMBAWANG, SENOKO, CANBERRA","75, 76"
29
+ 28,SELETAR,"79, 80"
data/expressway.cpg ADDED
@@ -0,0 +1 @@
 
 
1
+ ISO-8859-1
data/expressway.dbf ADDED
Binary file (202 kB). View file
 
data/expressway.prj ADDED
@@ -0,0 +1 @@
 
 
1
+ PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",0.0],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]]
data/expressway.shp ADDED
Binary file (168 kB). View file
 
data/expressway.shx ADDED
Binary file (4 kB). View file
 
data/mall.csv ADDED
@@ -0,0 +1,126 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ mall,lat,long,geometry
2
+ I12 KATONG,1.30522306203042,103.905043928938,POINT (11566656.5810221 145309.33518929142)
3
+ ION ORCHARD,1.30397974144505,103.832032328465,POINT (11558528.966835443 145170.89348854078)
4
+ BUGIS+,1.30095171530648,103.855172625542,POINT (11561104.93292286 144833.72804790206)
5
+ LOT ONE,1.38497459672379,103.745011766388,POINT (11548841.882176489 154189.68319064792)
6
+ NORTHPOINT CITY,1.42790288991304,103.836177650973,POINT (11558990.422026208 158969.87913312975)
7
+ SEMBAWANG SHOPPING CENTRE,1.44185307934021,103.824970378482,POINT (11557742.83415933 160523.29422201548)
8
+ HOLLAND ROAD SHOPPING CENTRE,1.31027747574118,103.795371163103,POINT (11554447.864575457 145872.13654214397)
9
+ MARINA BAY LINK MALL,1.28003113385646,103.854284863268,POINT (11561006.107678574 142504.26871829436)
10
+ TEKKA CENTRE,1.30671098278725,103.85013440636,POINT (11560544.080929015 145475.01280651498)
11
+ FUNAN,1.29134759697794,103.849989790085,POINT (11560527.982318923 143764.3288594248)
12
+ HILLION MALL,1.37843100827586,103.762842789877,POINT (11550826.822631605 153461.04239749498)
13
+ PEOPLE'S PARK COMPLEX,1.28404487854559,103.842590753293,POINT (11559704.325310875 142951.18860965632)
14
+ THE SELETAR MALL,1.39147015374628,103.876125507257,POINT (11563437.397046026 154912.97758468584)
15
+ BEDOK MALL,1.32475054237912,103.92918919889,POINT (11569344.420178223 147483.69700686546)
16
+ CITY SQUARE MALL,1.31139349427341,103.856487111691,POINT (11561251.260851622 145996.40367746312)
17
+ PLAZA SINGAPURA,1.30083497231103,103.845072925117,POINT (11559980.639414383 144820.72892664242)
18
+ DJITSUN MALL,1.32611970329469,103.929554495615,POINT (11569385.084823638 147636.152093794)
19
+ KALLANG WAVE MALL,1.30307515150401,103.873149707591,POINT (11563106.132542504 145070.16893048552)
20
+ TIONG BAHRU PLAZA,1.28633177192832,103.827550771424,POINT (11558030.082187679 143205.82847351837)
21
+ WISMA ATRIA,1.30368769989282,103.833203583562,POINT (11558659.35035643 145138.37515230273)
22
+ THE ADELPHI,1.29118503658447,103.851184338699,POINT (11560660.95886236 143746.22812262655)
23
+ ERA APAC CENTRE,1.33167653374942,103.849383945185,POINT (11560460.539973153 148254.90205003312)
24
+ SELETAR MALL,1.39131549124709,103.876213231014,POINT (11563447.162409985 154895.75555609525)
25
+ VIVOCITY,1.26429316783973,103.82230469365,POINT (11557446.091481214 140751.89441436098)
26
+ THE PARAGON,1.30387230879994,103.835857545469,POINT (11558954.788044503 145158.93104354606)
27
+ QUEENSWAY SHOPPING CENTRE,1.28761792586115,103.803391140455,POINT (11555340.644370455 143349.03860044328)
28
+ KATONG SHOPPING CENTRE,1.3040973115095,103.901515916971,POINT (11566263.84452642 145183.98471877558)
29
+ TAMPINES 1,1.37166822424446,103.932914115463,POINT (11569759.075994376 152707.995870831)
30
+ FU LU SHOU COMPLEX,1.30151258571919,103.854497235401,POINT (11561029.748836277 144896.1799616709)
31
+ THE MAJESTIC,1.28471077015851,103.843197416212,POINT (11559771.858718101 143025.33395335102)
32
+ YEW TEE POINT,1.39708432396576,103.746598000147,POINT (11549018.46091082 155538.1292467078)
33
+ BUGIS JUNCTION,1.29911287475873,103.855411173758,POINT (11561131.487988794 144628.9765507228)
34
+ PARKWAY PARADE,1.30091736056425,103.90533928065,POINT (11566689.459424283 144829.90270946815)
35
+ PIONEER MALL,1.34167331883255,103.697244542805,POINT (11543524.459170619 149368.04198144574)
36
+ GREAT WORLD CITY,1.29342272650003,103.832022146655,POINT (11558527.833401538 143995.3899994859)
37
+ WATERWAY POINT,1.4064128346795,103.902188891645,POINT (11566338.759724446 156576.88516463953)
38
+ ORCHARD TOWERS,1.30758079522771,103.829476735628,POINT (11558244.479542155 145571.86508814918)
39
+ HARBOURFRONT CENTRE,1.26396991176004,103.820243325181,POINT (11557216.620992908 140715.90095194863)
40
+ HOLLAND PIAZZA,1.31067976097165,103.795260908624,POINT (11554435.591102999 145916.9304452947)
41
+ DAWSON PLACE,1.29270339855062,103.810958956467,POINT (11556183.089795329 143915.29438199895)
42
+ MILLENIA WALK,1.29267926922552,103.860302888543,POINT (11561676.031187767 143912.60763402536)
43
+ NGEE ANN CITY,1.3022727300848,103.834899517575,POINT (11558848.140867176 144980.8206945949)
44
+ MARINA SQUARE,1.29145526802576,103.857007335679,POINT (11561309.171921063 143776.31779079596)
45
+ FAR EAST PLAZA,1.30717698071189,103.833792932243,POINT (11558724.9563515 145526.90095677547)
46
+ JCUBE,1.33332312550425,103.740187071348,POINT (11548304.799581403 148438.24938659594)
47
+ LEISURE PARK KALLANG,1.30230108405227,103.876473975883,POINT (11563476.18839603 144983.97785930184)
48
+ ESPLANADE MALL,1.29036586550079,103.8547977273,POINT (11561063.19944146 143655.01526936505)
49
+ PUNGGOL PLAZA,1.39417447299355,103.913120037036,POINT (11567555.609263161 155214.10999804424)
50
+ CLEMENTI MALL,1.31489619639366,103.764423054189,POINT (11551002.736850135 146386.42512213686)
51
+ CHANGI CITY POINT,1.33403637902708,103.962917615531,POINT (11573099.05034396 148517.66992054947)
52
+ SUNTEC CITY,1.29350132535558,103.857307495824,POINT (11561342.585595561 144004.1418140981)
53
+ TAMPINES MALL,1.35259361362837,103.944785968039,POINT (11571080.64457791 150584.01972618993)
54
+ JURONG POINT,1.33945271661445,103.70668501289,POINT (11544575.367493331 149120.77799638768)
55
+ CITYLINK MALL,1.2927777312893,103.854173501417,POINT (11560993.710934024 143923.57117126122)
56
+ CAPITOL SINGAPORE,1.2935414355709,103.851569286784,POINT (11560703.811087163 144008.6080009693)
57
+ ORCHARD CENTRAL,1.30083890839245,103.839434733899,POINT (11559352.998839002 144821.16720217513)
58
+ TANG PLAZA,1.30505783063001,103.83306065595,POINT (11558643.439727442 145290.93694087424)
59
+ MARINA BAY SANDS,1.28345419690844,103.860809048956,POINT (11561732.376707202 142885.41772234382)
60
+ WESTGATE,1.33415767556867,103.742766484424,POINT (11548591.938531566 148531.17625094252)
61
+ GEK POH SHOPPING CENTRE,1.34874357136408,103.697732091001,POINT (11543578.732787535 150155.31586859017)
62
+ TANJONG PAGAR CENTRE,1.2755961982077,103.842393171342,POINT (11559682.3305887 142010.45113722907)
63
+ OUR TAMPINES HUB,1.35218046898785,103.940598001519,POINT (11570614.442277445 150538.01586070567)
64
+ LUCKY PLAZA,1.30450604646634,103.833962339817,POINT (11558743.814716375 145229.49667804473)
65
+ CENTURY SQUARE,1.35227804040128,103.943727694121,POINT (11570962.838064237 150548.88048642385)
66
+ CANBERRA PLAZA,1.44349544527985,103.830345369213,POINT (11558341.175390523 160706.1795339727)
67
+ INTERNATIONAL PLAZA,1.27588674266836,103.845923793168,POINT (11560075.357612554 142042.80241770542)
68
+ HDB HUB,1.33201387005935,103.84984949662,POINT (11560512.364921834 148292.46430390378)
69
+ DUO,1.29953434891664,103.85840168774,POINT (11561464.390482482 144675.90690623393)
70
+ ORCHARD GATEWAY,1.30160116957544,103.838868886519,POINT (11559290.008996794 144906.04361633817)
71
+ THE CATHAY,1.29918373808483,103.847789785765,POINT (11560283.078958277 144636.86704838052)
72
+ PEOPLE'S PARK CENTRE,1.28564781446701,103.843861556498,POINT (11559845.790476555 143129.6714953169)
73
+ THE SHOPPES AT MARINA BAY SANDS,1.28423496027027,103.85898228297,POINT (11561529.022047842 142972.35372605218)
74
+ JUNCTION 8,1.3504812534505,103.848760473211,POINT (11560391.135390485 150348.80743019588)
75
+ WHEELOCK PLACE,1.30467628730252,103.830642027577,POINT (11558374.199248541 145248.45271486975)
76
+ SIM LIM SQUARE,1.30290658774258,103.853031869482,POINT (11560866.625048349 145051.39964510401)
77
+ COMPASS ONE,1.39205314156706,103.89507054384,POINT (11565546.348871507 154977.89464305568)
78
+ OASIS TERRACES,1.40278015725693,103.913215101343,POINT (11567566.191773407 156172.3758193433)
79
+ ONE RAFFLES PLACE,1.28434954622306,103.851072545834,POINT (11560648.514137553 142985.1125811013)
80
+ HOUGANG MALL,1.37249493810003,103.893775562605,POINT (11565402.192219839 152800.0516308496)
81
+ IMM,1.33487526118006,103.746894773008,POINT (11549051.497514585 148611.07918863875)
82
+ UNITED SQUARE,1.31724362960663,103.844003130499,POINT (11559861.550422255 146647.80914341682)
83
+ GOLDEN MILE COMPLEX,1.3027512163519,103.865163649543,POINT (11562217.128627157 145034.09930866418)
84
+ SUN PLAZA,1.44820036592783,103.819530140823,POINT (11557137.229673335 161230.09570974388)
85
+ 600 @ TOA PAYOH,1.33403623894465,103.850977706475,POINT (11560637.956668403 148517.6543224169)
86
+ MUSTAFA CENTRE,1.31011213190394,103.855290873926,POINT (11561118.096272754 145853.72573699447)
87
+ 321 CLEMENTI,1.31200212030821,103.764986676365,POINT (11551065.478983767 146064.1733763485)
88
+ JUNCTION 10,1.38055127973087,103.760106974822,POINT (11550522.273092777 153697.1383636429)
89
+ PALAIS RENAISSANCE,1.30665484543191,103.829588045188,POINT (11558256.870465694 145468.76199922094)
90
+ DOWNTOWN EAST,1.37595122154029,103.955598940037,POINT (11572284.33911469 153184.91403746555)
91
+ AMK HUB,1.36938922690344,103.84847796594,POINT (11560359.68682493 152454.22645013712)
92
+ LIAT TOWERS,1.30508722710852,103.830722581168,POINT (11558383.166433275 145294.21019098454)
93
+ SQUARE 2,1.27822949964567,103.850812513482,POINT (11560619.567468539 142303.66172543532)
94
+ EASTPOINT MALL,1.34269199750599,103.953050756306,POINT (11572000.676599305 149481.47189381268)
95
+ WHITE SANDS,1.37228761596577,103.949733905672,POINT (11571631.446475692 152776.96601424794)
96
+ HEARTLAND MALL,1.35954177325561,103.885167372726,POINT (11564443.932905857 151357.70200382103)
97
+ ALEXANDRA RETAIL CENTRE,1.27414893629254,103.801399416665,POINT (11555118.926692354 141849.30278758265)
98
+ JEM,1.33305999269581,103.743503708169,POINT (11548674.005903462 148408.9496448728)
99
+ WEST MALL,1.35009714832628,103.74921385957,POINT (11549309.657049773 150306.03716653708)
100
+ JEWEL CHANGI AIRPORT,1.36006289399606,103.989989170512,POINT (11576112.642059429 151415.7292406353)
101
+ THE CENTREPOINT,1.30145045537088,103.840034074858,POINT (11559419.717169369 144889.26185821815)
102
+ RAFFLES CITY,1.29408304748297,103.853339531257,POINT (11560900.873800479 144068.91533836423)
103
+ CAUSEWAY POINT,1.43600784474269,103.78568873405,POINT (11553370.021503637 159872.40042875698)
104
+ NEX,1.35076935257845,103.872296143862,POINT (11563011.114262832 150380.88739109543)
105
+ THE STAR VISTA,1.30681500712523,103.788462732266,POINT (11553678.821572501 145486.59575529105)
106
+ PENINSULA PLAZA,1.29231742228801,103.850803179769,POINT (11560618.528444361 143872.31676603836)
107
+ ROCHESTER MALL,1.30540765569962,103.788446680148,POINT (11553677.0346589 145329.88939636093)
108
+ HOUGANG 1,1.35659543728082,103.889837028233,POINT (11564963.756579075 151029.62522742926)
109
+ THOMSON PLAZA,1.35436282723449,103.83030941613,POINT (11558337.17311163 150781.02264811573)
110
+ CAPITOL PIAZZA,1.29307884763132,103.851261982149,POINT (11560669.602091677 143957.09982545662)
111
+ THE CLEMENTI MALL,1.31489619639366,103.764423054189,POINT (11551002.736850135 146386.42512213686)
112
+ CHINATOWN POINT,1.28299209695303,103.843245630659,POINT (11559777.22592579 142833.96408653253)
113
+ NOVENA SQUARE,1.32057156550961,103.843219261065,POINT (11559774.290476015 147018.37144736745)
114
+ WEST COAST PLAZA,1.30362457527941,103.765858386923,POINT (11551162.517359205 145131.34633313888)
115
+ VELOCITY@NOVENA SQUARE,1.31978949204523,103.844033569199,POINT (11559864.938842839 146931.28831189274)
116
+ CATHAY CINELEISURE ORCHARD,1.30152101873533,103.836429655016,POINT (11559018.474987952 144897.1189629879)
117
+ CHANGE ALLEY,1.28412271103554,103.852544637414,POINT (11560812.38662264 142959.8550591836)
118
+ FORUM THE SHOPPING MALL,1.30609752164563,103.828678556041,POINT (11558155.626596967 145406.70486913418)
119
+ SOUTH BEACH AVENUE,1.29443171770814,103.85601091893,POINT (11561198.251315948 144107.73903505644)
120
+ JUNCTION NINE,1.4331228398318,103.84166098599,POINT (11559600.82408815 159551.14245872086)
121
+ MUSTAFA CENTRE,1.31011213190394,103.855290873926,POINT (11561118.096272754 145853.72573699447)
122
+ ORCHARD ROAD SHAW HOUSE,1.30580981580562,103.831507365654,POINT (11558470.528242638 145374.66928016834)
123
+ SHAW CENTRE,1.30615048740141,103.83185337296,POINT (11558509.045599751 145412.60252243307)
124
+ HILTON SINGAPORE ORCHARD,1.30206450556085,103.836340953476,POINT (11559008.600777686 144957.63525897707)
125
+ CITY GATE,1.30231590504573,103.862331661034,POINT (11561901.873108402 144985.62815102638)
126
+ MYVILLAGE AT SERANGOON GARDEN,1.36511490572797,103.865159501442,POINT (11562216.666862663 151978.27568578548)
data/mrt.csv ADDED
@@ -0,0 +1,172 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ STN_NAME,STN_NO,lat,long,geometry
2
+ ESPLANADE MRT STATION,CC3,1.2932599009494317,103.855611730623,POINT (11561153.813876882 143977.25972322148)
3
+ PAYA LEBAR MRT STATION,EW8/CC9,1.31736940114175,103.89227219447312,POINT (11565234.838044923 146661.81366790616)
4
+ DHOBY GHAUT MRT STATION,NS24/NE6/CC1,1.2990442033847656,103.84583316073905,POINT (11560065.268456714 144621.33012301076)
5
+ DAKOTA MRT STATION,CC8,1.3083751546214861,103.88866829966075,POINT (11564833.654309537 145660.31581804075)
6
+ LAVENDER MRT STATION,EW11,1.3073717303890142,103.86283780108813,POINT (11561958.216361497 145548.58603583908)
7
+ RENJONG LRT STATION,SW8,1.3867475127345048,103.89042878872309,POINT (11565029.631055502 154387.10104518078)
8
+ DOVER MRT STATION,EW22,1.3113946904069214,103.77864915459556,POINT (11552586.379103368 145996.53686532134)
9
+ HOUGANG MRT STATION,NE14,1.371281175152925,103.8923475339162,POINT (11565243.224793361 152664.89741662212)
10
+ PHOENIX LRT STATION,BP5,1.3786249497953063,103.75803362284962,POINT (11550291.468606979 153482.63811900956)
11
+ ALJUNIED MRT STATION,EW9,1.3164324723857483,103.88290604375914,POINT (11564192.202916747 146557.4876806285)
12
+ COVE LRT STATION,PE1,1.3993617069380282,103.90591743982358,POINT (11566753.819809085 155791.72186749076)
13
+ PASIR RIS MRT STATION,EW1,1.3729518745158271,103.94925763848777,POINT (11571578.428655261 152850.9321622951)
14
+ ADMIRALTY MRT STATION,NS10,1.4405870900082878,103.8009770091412,POINT (11555071.904501896 160382.3203376982)
15
+ KEMBANGAN MRT STATION,EW6,1.3210380680383345,103.9129475274572,POINT (11567536.405584693 147070.31607272758)
16
+ PUNGGOL POINT LRT STATION,PW3,1.4169108528743335,103.90653551174151,POINT (11566822.623260263 157745.87399860815)
17
+ MARSILING MRT STATION,NS8,1.4325651685513625,103.77419400298993,POINT (11552090.433895223 159489.04335861353)
18
+ COMPASSVALE LRT STATION,SE1,1.3944787834858998,103.9005552779689,POINT (11566156.906681871 155247.99572051817)
19
+ KHATIB MRT STATION,NS14,1.4175768090823964,103.83303805986112,POINT (11558640.924342334 157820.03058972285)
20
+ LAYAR LRT STATION,SW6,1.392092872617292,103.88015787537157,POINT (11563886.27821123 154982.3187890766)
21
+ TAMPINES WEST MRT STATION,DT31,1.3455175068462677,103.9384294702698,POINT (11570373.042483013 149796.09272306375)
22
+ TAMPINES MRT STATION,EW2/DT32,1.353289191281307,103.94515900808243,POINT (11571122.17120559 150661.4726686996)
23
+ TAMPINES EAST MRT STATION,DT33,1.3562130027776913,103.95480497267452,POINT (11572195.95507219 150987.0408807443)
24
+ TAI SENG MRT STATION,CC11,1.335453104061741,103.88816447597783,POINT (11564777.568913706 148675.42183319925)
25
+ SUMANG LRT STATION,PW6,1.408353297018006,103.89851028717388,POINT (11565929.259347893 156792.9616271752)
26
+ STEVENS MRT STATION,DT10,1.320065954923104,103.82602302655928,POINT (11557860.014407277 146962.0721869328)
27
+ STADIUM MRT STATION,CC6,1.3028541001828107,103.87534796324088,POINT (11563350.841242082 145045.5552457105)
28
+ SIXTH AVENUE MRT STATION,DT7,1.3307848582698434,103.79732046012039,POINT (11554664.85932684 148155.6143914006)
29
+ SOUTH VIEW LRT STATION,BP2,1.3802982863129039,103.74529180004235,POINT (11548873.055380294 153668.96708927798)
30
+ SOO TECK LRT STATION,PW7,1.4052096467859656,103.89723440867311,POINT (11565787.229202872 156442.9065743286)
31
+ SOMERSET MRT STATION,NS23,1.3002576150886098,103.83907542830768,POINT (11559313.001123536 144756.4412536795)
32
+ SIMEI MRT STATION,EW3,1.343197438643703,103.95337711850748,POINT (11572037.007073388 149537.75280291872)
33
+ SERANGOON MRT STATION,NE12/CC13,1.3496172245316762,103.87363463482953,POINT (11563160.11439577 150252.59746399353)
34
+ SENGKANG MRT STATION,NE16,1.3915276814947555,103.89541608066608,POINT (11565584.813855035 154919.3834334129)
35
+ BRADDELL MRT STATION,NS18,1.3404441148884796,103.84679989936878,POINT (11560172.885308705 149231.17013437828)
36
+ NOVENA MRT STATION,NS20,1.320430081393632,103.84381813023575,POINT (11559840.956287153 147002.6173237617)
37
+ FARRER PARK MRT STATION,NE8,1.312448228414031,103.85427015829734,POINT (11561004.470728727 146113.8469306267)
38
+ BEDOK MRT STATION,EW5,1.324011319398632,103.93017252059741,POINT (11569453.883049976 147401.3850926784)
39
+ REDHILL MRT STATION,EW18,1.2896195393319383,103.81679002803264,POINT (11556832.201712795 143571.91355870623)
40
+ CHANGI AIRPORT MRT STATION,CG2,1.3573079313565826,103.98837058050897,POINT (11575932.46144449 151108.96195398265)
41
+ CORAL EDGE LRT STATION,PE3,1.3939263508217195,103.91256353528017,POINT (11567493.659771075 155186.48098662618)
42
+ CLEMENTI MRT STATION,EW23,1.315078227515149,103.76523302884567,POINT (11551092.902816473 146406.69407190688)
43
+ BUKIT BATOK MRT STATION,NS2,1.34899664622402,103.7495406556263,POINT (11549346.035820354 150183.49584195326)
44
+ OASIS LRT STATION,PE6,1.402350879683705,103.91263185203226,POINT (11567501.264757132 156124.57453696936)
45
+ NIBONG LRT STATION,PW5,1.4117555857480237,103.90029894818544,POINT (11566128.372180901 157171.8173986583)
46
+ MERIDIAN LRT STATION,PE2,1.3968523393495353,103.90899093869116,POINT (11567095.960137978 155512.2971595746)
47
+ BUKIT GOMBAK MRT STATION,NS3,1.3586719215924352,103.75191010878359,POINT (11549609.802139282 151260.8433106341)
48
+ EUNOS MRT STATION,EW7,1.319779231523703,103.90336181865256,POINT (11566469.329361666 146930.14581277402)
49
+ CHINESE GARDEN MRT STATION,EW25,1.3421449755958947,103.7328143945828,POINT (11547484.076958116 149420.56097565332)
50
+ KADALOOR LRT STATION,PE5,1.3996385100843882,103.9163949789851,POINT (11567920.174133312 155822.5446471391)
51
+ CHENG LIM LRT STATION,SW1,1.3962489158283502,103.8939079084962,POINT (11565416.924897054 155445.10440144964)
52
+ SAM KEE LRT STATION,PW1,1.409613764005498,103.9048311129408,POINT (11566632.890453659 156933.31860778105)
53
+ KRANJI MRT STATION,NS7,1.4252396282240647,103.76218063472041,POINT (11550753.111856747 158673.31427826764)
54
+ ANG MO KIO MRT STATION,NS16,1.3699486593657557,103.8496163526122,POINT (11560486.411449607 152516.51998526446)
55
+ RIVIERA LRT STATION,PE4,1.394636478299355,103.9162237902967,POINT (11567901.11749569 155265.55542793244)
56
+ BANGKIT LRT STATION,BP9,1.3800154937551705,103.77266121865229,POINT (11551919.80512326 153637.47763038703)
57
+ PASIR PANJANG MRT STATION,CC26,1.2762296708847953,103.79134196548895,POINT (11553999.336348757 142080.98648170006)
58
+ HOLLAND VILLAGE MRT STATION,CC21,1.3119456172770734,103.79623333609268,POINT (11554543.841233645 146057.88183834363)
59
+ LABRADOR PARK MRT STATION,CC27,1.2723234942723962,103.80292770505237,POINT (11555289.054977419 141646.04532671935)
60
+ BOTANIC GARDENS MRT STATION,CC19/DT9,1.3221094921518408,103.81498942390112,POINT (11556631.759377753 147189.6181943206)
61
+ ONE-NORTH MRT STATION,CC23,1.2996564796266807,103.78739399247746,POINT (11553559.850003451 144689.5059327703)
62
+ KENT RIDGE MRT STATION,CC24,1.2934009384330032,103.78449793871876,POINT (11553237.462773722 143992.96394482808)
63
+ HAW PAR VILLA MRT STATION,CC25,1.2825029020151386,103.78182132891398,POINT (11552939.503933202 142779.49350457196)
64
+ MARINA BAY MRT STATION,NS27/TE20/CE2,1.275950352815708,103.85514510996279,POINT (11561101.869902594 142049.8852230529)
65
+ KING ALBERT PARK MRT STATION,DT6,1.335638111428803,103.78387153256621,POINT (11553167.73155979 148696.02235539054)
66
+ LITTLE INDIA MRT STATION,NE7/DT12,1.3071673594980848,103.84861049976973,POINT (11560374.44042337 145525.82964935843)
67
+ ROCHOR MRT STATION,DT13,1.3039275604923852,103.85243888615356,POINT (11560800.614446178 145165.08322684388)
68
+ SENJA LRT STATION,BP13,1.3826992422861197,103.76236875421941,POINT (11550774.053223584 153936.3179973449)
69
+ MOUNTBATTEN MRT STATION,CC7,1.3061937868831155,103.88254701483167,POINT (11564152.235999363 145417.42385146447)
70
+ CHOA CHU KANG MRT STATION,NS4,1.3851720516680506,103.74436906787206,POINT (11548770.33730496 154211.67019864143)
71
+ BOON KENG MRT STATION,NE9,1.3194470902702067,103.86168108598112,POINT (11561829.451424792 146893.16220894022)
72
+ BARTLEY MRT STATION,CC12,1.342846844386206,103.87972518721023,POINT (11563838.111585438 149498.71410445895)
73
+ SEGAR LRT STATION,BP11,1.38775640835129,103.76965965406144,POINT (11551585.672481425 154499.44371902267)
74
+ HILLVIEW MRT STATION,DT3,1.3623400892682047,103.76742925214765,POINT (11551337.385276116 151669.29701431398)
75
+ BEAUTY WORLD MRT STATION,DT5,1.3412035624480063,103.77581897726542,POINT (11552271.325204123 149315.73460453708)
76
+ HUME MRT STATION,DT4,1.354510835774154,103.76910392949537,POINT (11551523.809505709 150797.50348808448)
77
+ BUKIT PANJANG MRT STATION,DT1,1.3791601969823708,103.7615727413405,POINT (11550685.44147524 153542.2388223382)
78
+ CASHEW MRT STATION,DT2,1.3693615842520959,103.76469719103808,POINT (11551033.253624585 152451.14840519405)
79
+ JOO KOON MRT STATION,EW29,1.3277168591173092,103.67838692917158,POINT (11541425.23922337 147813.99435683808)
80
+ YEW TEE MRT STATION,NS5,1.397549633093504,103.74740209348013,POINT (11549107.972171212 155589.94262947125)
81
+ YISHUN MRT STATION,NS13,1.4295817514617353,103.83497216228015,POINT (11558856.227638762 159156.82726659652)
82
+ YIO CHU KANG MRT STATION,NS15,1.381757606857193,103.84480082296689,POINT (11559950.34914159 153831.46511077735)
83
+ WOODLEIGH MRT STATION,NE11,1.3392070875067645,103.87080919015972,POINT (11562845.587333862 149093.42721697348)
84
+ WOODLANDS MRT STATION,NS9/TE2,1.436831161352432,103.78616372611886,POINT (11553422.897378873 159964.08042424417)
85
+ UPPER CHANGI MRT STATION,DT34,1.341740479061355,103.96147329751271,POINT (11572938.269597623 149375.52027424268)
86
+ TELOK AYER MRT STATION,DT18,1.2822805847293683,103.84831284910844,POINT (11560341.30610332 142754.73905738868)
87
+ TONGKANG LRT STATION,SW7,1.3893387806248036,103.88593735823005,POINT (11564529.647300085 154675.64433547884)
88
+ UBI MRT STATION,DT27,1.3299552648699082,103.89924886691787,POINT (11566011.477668904 148063.23957630194)
89
+ TOA PAYOH MRT STATION,NS19,1.3326773927956028,103.84742121709718,POINT (11560242.050081851 148366.3472918789)
90
+ TIONG BAHRU MRT STATION,EW17,1.2862197406629323,103.82703434033594,POINT (11557972.593341926 143193.3540667392)
91
+ THANGGAM LRT STATION,SW4,1.3974369934620556,103.87565537215009,POINT (11563385.061845321 155577.39991232104)
92
+ PROMENADE MRT STATION,CC4/DT15,1.2932501664155354,103.86099644353484,POINT (11561753.237376297 143976.1758037617)
93
+ BRAS BASAH MRT STATION,CC2,1.2968267736068342,103.85065551166026,POINT (11560602.09010569 144374.42361949536)
94
+ NICOLL HIGHWAY MRT STATION,CC5,1.2998028299333477,103.86363313811002,POINT (11562046.752873782 144705.80176703745)
95
+ POTONG PASIR MRT STATION,NE10,1.3313873887636678,103.86906995781828,POINT (11562651.976875242 148222.7058835956)
96
+ LAKESIDE MRT STATION,EW26,1.3442631497501274,103.7209653201618,POINT (11546165.044027198 149656.4198537855)
97
+ SAMUDERA LRT STATION,PW4,1.4158186973347184,103.9020872422455,POINT (11566327.444165055 157624.25864301543)
98
+ RANGGUNG LRT STATION,SE5,1.3839214793059078,103.89749260349933,POINT (11565815.971319452 154072.4164639848)
99
+ SEMBAWANG MRT STATION,NS11,1.449069633762495,103.8201938614095,POINT (11557211.114711054 161326.89309981905)
100
+ PUNGGOL LRT STATION,PTC,1.4051667769393887,103.90239279920175,POINT (11566361.458609832 156438.13288926278)
101
+ KANGKAR LRT STATION,SE4,1.3840307673525571,103.90225755055017,POINT (11566346.40279881 154084.58590371252)
102
+ PIONEER MRT STATION,EW28,1.3375865013018222,103.69731852705563,POINT (11543532.695059726 148912.97515507814)
103
+ BUGIS MRT STATION,EW12/DT14,1.3006268207577492,103.8558393480098,POINT (11561179.152128475 144797.55162939345)
104
+ NEWTON MRT STATION,NS21/DT11,1.3123222844963476,103.83798766461875,POINT (11559191.911823582 146099.82323917202)
105
+ BUONA VISTA MRT STATION,EW21/CC22,1.307258322805033,103.78994227956271,POINT (11553843.524024175 145535.95827439064)
106
+ OUTRAM PARK MRT STATION,EW16/NE3,1.2797977743988724,103.83944001272573,POINT (11559353.586475305 142478.28477934073)
107
+ CHINATOWN MRT STATION,NE4/DT19,1.284357551339618,103.84347988591021,POINT (11559803.303101072 142986.0039305362)
108
+ EXPO MRT STATION,CG1/DT35,1.3352521079355228,103.96237940541006,POINT (11573039.137067359 148653.040968593)
109
+ RAFFLES PLACE MRT STATION,EW14/NS26,1.284067270916838,103.85145931527562,POINT (11560691.569114849 142953.68194313743)
110
+ TUAS CRESCENT MRT STATION,EW31,1.3210532517669473,103.6490634978009,POINT (11538160.969774876 147072.00676703738)
111
+ TUAS LINK MRT STATION,EW33,1.3403799475083589,103.63681865801408,POINT (11536797.88044496 149224.02509912133)
112
+ TUAS WEST ROAD MRT STATION,EW32,1.3299818235881544,103.63962756181195,POINT (11537110.566185428 148066.19687597212)
113
+ CITY HALL MRT STATION,EW13/NS25,1.292933237469202,103.8526085041428,POINT (11560819.496234369 143940.8864479635)
114
+ BISHAN MRT STATION,NS17/CC15,1.3508383853898323,103.84814352687059,POINT (11560322.457238022 150388.57422468087)
115
+ FERNVALE LRT STATION,SW5,1.3919441926131013,103.87627965663317,POINT (11563454.556876088 154965.76292080994)
116
+ PUNGGOL MRT STATION,NE17,1.4051325907556091,103.90237397827487,POINT (11566359.363473836 156434.3261559687)
117
+ BUANGKOK MRT STATION,NE15,1.3827715834893828,103.89309246897267,POINT (11565326.150584523 153944.37332891655)
118
+ BAKAU LRT STATION,SE3,1.388105015813465,103.90552634650676,POINT (11566710.283500204 154538.26191290523)
119
+ FARMWAY LRT STATION,SW2,1.3971619024754305,103.88938286091681,POINT (11564913.198904702 155546.7678150151)
120
+ COMMONWEALTH MRT STATION,EW20,1.3024476467430939,103.79829071923508,POINT (11554772.868077423 145000.29735925797)
121
+ KUPANG LRT STATION,SW3,1.3981975783962912,103.8813742834903,POINT (11564021.688143605 155662.09304290343)
122
+ DAMAI LRT STATION,PE7,1.4053160222898036,103.90850357798875,POINT (11567041.707392752 156454.7518038036)
123
+ QUEENSTOWN MRT STATION,EW19,1.2946113316842771,103.80604523687614,POINT (11555636.097032575 144127.73867584657)
124
+ KALLANG MRT STATION,EW10,1.3113966420370984,103.8713152634759,POINT (11562901.923157724 145996.7541767177)
125
+ RUMBIA LRT STATION,SE2,1.3915644451333653,103.90589048249545,POINT (11566750.818933045 154923.4771502459)
126
+ PETIR LRT STATION,BP7,1.3777546493939679,103.76666731212067,POINT (11551252.566500299 153385.72868731114)
127
+ BOON LAY MRT STATION,EW27,1.3386040234650776,103.70605907221326,POINT (11544505.68809593 149026.27610090005)
128
+ KEAT HONG LRT STATION,BP3,1.3786121666958278,103.74905150334752,POINT (11549291.58363776 153481.21469885838)
129
+ JELAPANG LRT STATION,BP12,1.3866966744926235,103.76450057701811,POINT (11551011.366651999 154381.44010003205)
130
+ CHOA CHU KANG LRT STATION,BP1,1.3848220120716195,103.7445491166943,POINT (11548790.380248168 154172.6925818194)
131
+ SENGKANG LRT STATION,STC,1.3915744419839085,103.89543625945755,POINT (11565587.060147827 154924.59032286154)
132
+ HARBOURFRONT MRT STATION,NE1/CC29,1.2654573488935517,103.82145073544076,POINT (11557351.029288204 140881.5220428616)
133
+ PENDING LRT STATION,BP8,1.3761265375660021,103.77127974972706,POINT (11551766.020705957 153204.43575785123)
134
+ CLARKE QUAY MRT STATION,NE5,1.2885422167968394,103.84660479428602,POINT (11560151.166310241 143451.9562032456)
135
+ BUKIT PANJANG LRT STATION,BP6,1.377916447639459,103.76302226977556,POINT (11550846.802242521 153403.74519478835)
136
+ FAJAR LRT STATION,BP10,1.3845326784839436,103.77083795572631,POINT (11551716.840422759 154140.4747061619)
137
+ KOVAN MRT STATION,NE13,1.3601798705902914,103.8850911160559,POINT (11564435.444052171 151428.75468542307)
138
+ LORONG CHUAN MRT STATION,CC14,1.351619756028687,103.8641441269304,POINT (11562103.635889068 150475.58020054118)
139
+ MARYMOUNT MRT STATION,CC16,1.3487766567363653,103.83941284509919,POINT (11559350.562188951 150158.99993609407)
140
+ CALDECOTT MRT STATION,CC17/TE9,1.337658547790272,103.8395412144457,POINT (11559364.85219924 148920.99751960862)
141
+ DOWNTOWN MRT STATION,DT17,1.2794414875995104,103.85285112582064,POINT (11560846.504756 142438.61322080987)
142
+ GEYLANG BAHRU MRT STATION,DT24,1.3215128864646897,103.87191146415509,POINT (11562968.29191374 147123.18667561747)
143
+ BENDEMEER MRT STATION,DT23,1.3136449959266032,103.86289119803092,POINT (11561964.160481978 146247.1054721069)
144
+ BENCOOLEN MRT STATION,DT21,1.2987271895563188,103.85024488974202,POINT (11560556.379882842 144586.03123501714)
145
+ FORT CANNING MRT STATION,DT20,1.2924715944352647,103.84432545085059,POINT (11559897.430959666 143889.48349797496)
146
+ KAKI BUKIT MRT STATION,DT28,1.3349629788461834,103.90845515798364,POINT (11567036.31730244 148620.84652545184)
147
+ JALAN BESAR MRT STATION,DT22,1.305380482719378,103.85543504052043,POINT (11561134.144824635 145326.86372878257)
148
+ MATTAR MRT STATION,DT25,1.3268656822602576,103.88325306022709,POINT (11564230.832613258 147719.21635259414)
149
+ MACPHERSON MRT STATION,CC10/DT26,1.32636803742709,103.89026149677716,POINT (11565011.00820127 147663.8039305353)
150
+ BAYFRONT MRT STATION,DT16/CE1,1.2818719119679975,103.85907645399898,POINT (11561539.505118836 142709.2344219543)
151
+ FARRER ROAD MRT STATION,CC20,1.3174545710295482,103.80748912479913,POINT (11555796.829900924 146671.2972432539)
152
+ JURONG EAST MRT STATION,EW24/NS1,1.3332090241725925,103.74226323339626,POINT (11548535.916883416 148425.54424477482)
153
+ BEDOK NORTH MRT STATION,DT29,1.3347556341800602,103.91787672326603,POINT (11568085.121152151 148597.7587572671)
154
+ BEDOK RESERVOIR MRT STATION,DT30,1.3365987361021572,103.93228754735703,POINT (11569689.326751873 148802.98768779304)
155
+ ORCHARD MRT STATION,NS22/TE14,1.303937745807605,103.8322193307721,POINT (11558549.783837046 145166.2173446278)
156
+ BUKIT BROWN MRT STATION,CC18,1.333731898401575,103.83071216411965,POINT (11558382.006812755 148483.76610501905)
157
+ LENTOR MRT STATION,TE5,1.3849312067749544,103.83634746191629,POINT (11559009.325293947 154184.85163220315)
158
+ BRIGHT HILL MRT STATION,TE7,1.363267264237404,103.83293672072716,POINT (11558629.643321544 151772.5388627062)
159
+ SPRINGLEAF MRT STATION,TE4,1.3981083797467933,103.81792447452686,POINT (11556958.487718863 155652.1605375253)
160
+ MARINA SOUTH PIER MRT STATION,NS28,1.271377380933597,103.86291089314031,POINT (11561966.352931526 141540.6985178447)
161
+ CANBERRA MRT STATION,NS12,1.4431183773154057,103.82971485192934,POINT (11558270.986527568 160664.1911988393)
162
+ WOODLANDS SOUTH MRT STATION,TE3,1.4270954766495607,103.79389595243948,POINT (11554283.644875582 158879.97039645704)
163
+ WOODLANDS NORTH MRT STATION,TE1,1.4483500983927855,103.78567472141162,POINT (11553368.461623866 161246.76917784876)
164
+ GUL CIRCLE MRT STATION,EW30,1.3195643150447611,103.66059386900477,POINT (11539444.524825947 146906.2150724093)
165
+ TELOK BLANGAH MRT STATION,CC28,1.2705817862905882,103.8097397563753,POINT (11556047.369061945 141452.11153245045)
166
+ TECK WHYE LRT STATION,BP4,1.3766592935410347,103.7536996314673,POINT (11549809.010893196 153263.7589981544)
167
+ TECK LEE LRT STATION,PW2,1.4128738703520478,103.90662621156845,POINT (11566832.719918812 157296.34210002632)
168
+ TANJONG PAGAR MRT STATION,EW15,1.2765150319492937,103.84585358345352,POINT (11560067.54190289 142112.760613886)
169
+ TANAH MERAH MRT STATION,EW4,1.3272540815765572,103.94654794350254,POINT (11571276.7867893 147762.46436656342)
170
+ TAN KAH KEE MRT STATION,DT8,1.325870603981269,103.80733086531299,POINT (11555779.212535514 147608.4150574537)
171
+ UPPER THOMSON MRT STATION,TE8,1.3544050504962832,103.8329237558847,POINT (11558628.200081885 150785.7242336254)
172
+ MAYFLOWER MRT STATION,TE6,1.3721031732145874,103.83679077026835,POINT (11559058.674153963 152756.42805140457)
data/pri_sch_latlong.csv ADDED
@@ -0,0 +1,184 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Name,lat,long,geometry
2
+ ADMIRALTY PRIMARY SCHOOL,1.4426347903311,103.800040119743,POINT (11554967.61045116 160610.34146766094)
3
+ AHMAD IBRAHIM PRIMARY SCHOOL,1.43315271543517,103.832942401086,POINT (11558630.2756562 159554.46923631808)
4
+ AI TONG SCHOOL,1.3605834338904,103.833020333986,POINT (11558638.951106941 151473.69181225167)
5
+ ALEXANDRA PRIMARY SCHOOL,1.29133439161334,103.824424680531,POINT (11557682.087341296 143762.85847152237)
6
+ ANCHOR GREEN PRIMARY SCHOOL,1.39036998654612,103.887165375933,POINT (11564666.349605462 154790.47143562874)
7
+ ANDERSON PRIMARY SCHOOL,1.38426429436736,103.841392081119,POINT (11559570.889734838 154110.58959966997)
8
+ ANGLO-CHINESE SCHOOL (JUNIOR),1.30932252730174,103.841552127373,POINT (11559588.706002336 145765.80438504825)
9
+ ANGLO-CHINESE SCHOOL (PRIMARY),1.31837054523521,103.835609732354,POINT (11558927.20161473 146773.2900057938)
10
+ ANGSANA PRIMARY SCHOOL,1.34846568919477,103.951577056231,POINT (11571836.625057375 150124.37359610677)
11
+ ANG MO KIO PRIMARY SCHOOL,1.36932176584608,103.839630858752,POINT (11559374.83135777 152446.7145742989)
12
+ BEACON PRIMARY SCHOOL,1.38394936211823,103.773632022975,POINT (11552027.874566125 154075.52127012392)
13
+ BEDOK GREEN PRIMARY SCHOOL,1.32344593287992,103.937878976352,POINT (11570311.761780398 147338.4297522833)
14
+ BENDEMEER PRIMARY SCHOOL,1.32181250780475,103.865404167629,POINT (11562243.902978014 147156.5492463982)
15
+ BLANGAH RISE PRIMARY SCHOOL,1.27612047924037,103.808628535239,POINT (11555923.668490894 142068.82830769152)
16
+ BOON LAY GARDEN PRIMARY SCHOOL,1.34284013791617,103.712858381937,POINT (11545262.583792122 149497.96733854152)
17
+ BUKIT PANJANG PRIMARY SCHOOL,1.37362179302436,103.769374904025,POINT (11551553.974252364 152925.52857570155)
18
+ BUKIT TIMAH PRIMARY SCHOOL,1.3377498622588,103.766855344779,POINT (11551273.498200076 148931.16537086113)
19
+ BUKIT VIEW PRIMARY SCHOOL,1.34586054788695,103.75366641455,POINT (11549805.313202877 149834.2904119548)
20
+ CANBERRA PRIMARY SCHOOL,1.45125024371543,103.815858858929,POINT (11556728.544442335 161569.7152611293)
21
+ CANOSSA CATHOLIC PRIMARY SCHOOL,1.32664424544839,103.882227964852,POINT (11564116.719518088 147694.5595091072)
22
+ CANTONMENT PRIMARY SCHOOL,1.27547252623201,103.839962631748,POINT (11559411.764158743 141996.6806236165)
23
+ CASUARINA PRIMARY SCHOOL,1.37246063927999,103.957020286115,POINT (11572442.562636333 152796.23240797306)
24
+ CATHOLIC HIGH SCHOOL (PRIMARY),1.35438878373608,103.844210670766,POINT (11559884.653699096 150783.91292011662)
25
+ CEDAR PRIMARY SCHOOL,1.33566084356265,103.87562006259,POINT (11563381.131203072 148698.55357268747)
26
+ CHANGKAT PRIMARY SCHOOL,1.33997334692002,103.952273949753,POINT (11571914.202889381 149178.75014392636)
27
+ CHIJ (KATONG) PRIMARY,1.30648535277087,103.911105620496,POINT (11567331.365439683 145449.88925561)
28
+ CHIJ (KELLOCK),1.275022722964,103.828157564896,POINT (11558097.630127998 141946.5963478505)
29
+ CHIJ OUR LADY OF GOOD COUNSEL,1.35742952269615,103.864009397373,POINT (11562088.637863342 151122.50123922044)
30
+ CHIJ OUR LADY OF THE NATIVITY,1.37330297140128,103.897575728303,POINT (11565825.224730268 152890.02731541076)
31
+ CHIJ OUR LADY QUEEN OF PEACE,1.366603668561,103.767412204602,POINT (11551335.487552015 152144.05110793738)
32
+ CHIJ PRIMARY (TOA PAYOH),1.33275264711587,103.841847263786,POINT (11559621.560437545 148374.72683122152)
33
+ CHIJ ST. NICHOLAS GIRLS' SCHOOL,1.37347687878916,103.834253269436,POINT (11558776.200853419 152909.39216023145)
34
+ CHONGFU SCHOOL,1.43839562897006,103.839309173817,POINT (11559339.02155461 160138.29099816506)
35
+ CHONGZHENG PRIMARY SCHOOL,1.35061130568554,103.951317297552,POINT (11571807.7088535 150363.28880162173)
36
+ CHUA CHU KANG PRIMARY SCHOOL,1.37775890093367,103.741832917421,POINT (11548488.014328172 153386.2021034107)
37
+ CLEMENTI PRIMARY SCHOOL,1.31506321827875,103.763144493687,POINT (11550860.408146104 146405.02281115574)
38
+ COMPASSVALE PRIMARY SCHOOL,1.39444529636566,103.897812229905,POINT (11565851.551968176 155244.26684702645)
39
+ CONCORD PRIMARY SCHOOL,1.38026516111464,103.736554295636,POINT (11547900.400838975 153665.27853880092)
40
+ CORPORATION PRIMARY SCHOOL,1.35099779872539,103.707593724342,POINT (11544676.524789445 150406.3249697947)
41
+ DAMAI PRIMARY SCHOOL,1.33546106800406,103.921270169613,POINT (11568462.877871528 148676.3086160726)
42
+ DAZHONG PRIMARY SCHOOL,1.3591797447277,103.74847210784,POINT (11549227.085624894 151317.38982729582)
43
+ DE LA SALLE SCHOOL,1.3947078296399,103.743201812831,POINT (11548640.399068164 155273.50057652107)
44
+ EAST SPRING PRIMARY SCHOOL,1.35268400746357,103.961676849165,POINT (11572960.928863905 150594.08512667858)
45
+ EDGEFIELD PRIMARY SCHOOL,1.40009139510996,103.907847599114,POINT (11566968.684158444 155872.97462853458)
46
+ ELIAS PARK PRIMARY SCHOOL,1.37505696315817,103.945289416873,POINT (11571136.68824575 153085.3369559966)
47
+ ENDEAVOUR PRIMARY SCHOOL,1.45403837499301,103.817436231731,POINT (11556904.136779444 161880.1883953774)
48
+ EUNOS PRIMARY SCHOOL,1.32447629876368,103.904541254016,POINT (11566600.623505747 147453.1601869154)
49
+ EVERGREEN PRIMARY SCHOOL,1.44415332824735,103.794577787757,POINT (11554359.546435934 160779.43798976808)
50
+ FAIRFIELD METHODIST SCHOOL (PRIMARY),1.30054082453424,103.785438270044,POINT (11553342.139978025 144787.97610671783)
51
+ FARRER PARK PRIMARY SCHOOL,1.31236867681371,103.850766402965,POINT (11560614.434469266 146104.98896329888)
52
+ FENGSHAN PRIMARY SCHOOL,1.32980598760785,103.931710293058,POINT (11569625.067097247 148046.61763024144)
53
+ FERNVALE PRIMARY SCHOOL,1.39030227963797,103.874445458032,POINT (11563250.374821791 154782.93211748824)
54
+ FIRST TOA PAYOH PRIMARY SCHOOL,1.34032299499938,103.855529906182,POINT (11561144.705221776 149217.68343963957)
55
+ FRONTIER PRIMARY SCHOOL,1.3366431119298,103.699682818103,POINT (11543795.886735206 148807.92892681924)
56
+ FUCHUN PRIMARY SCHOOL,1.43047990810126,103.778192944298,POINT (11552535.59400535 159256.84075589752)
57
+ FUHUA PRIMARY SCHOOL,1.33650394789627,103.736103745748,POINT (11547850.245854866 148792.43304140636)
58
+ GAN ENG SENG PRIMARY SCHOOL,1.28559516494962,103.815547410064,POINT (11556693.874113275 143123.80910211775)
59
+ GEYLANG METHODIST SCHOOL (PRIMARY),1.31759126757284,103.883845744916,POINT (11564296.809971029 146686.51825691646)
60
+ GONGSHANG PRIMARY SCHOOL,1.35723721393297,103.949115320172,POINT (11571562.585852819 151101.08751707867)
61
+ GREENDALE PRIMARY SCHOOL,1.39648195114256,103.91233462071,POINT (11567468.177117689 155471.0534798642)
62
+ GREENRIDGE PRIMARY SCHOOL,1.3858892193692,103.767794469258,POINT (11551378.04105887 154291.52829022062)
63
+ GREENWOOD PRIMARY SCHOOL,1.43989958331782,103.804725587384,POINT (11555489.194323082 160305.76325728002)
64
+ GUANGYANG PRIMARY SCHOOL,1.34569011530238,103.849453239895,POINT (11560468.253824987 149815.31270870473)
65
+ HAIG GIRLS' SCHOOL,1.31194344271383,103.902902557195,POINT (11566418.20461007 146057.63970359697)
66
+ HOLY INNOCENTS' PRIMARY SCHOOL,1.36693830877349,103.894114899795,POINT (11565439.967063036 152181.31368752124)
67
+ HENRY PARK PRIMARY SCHOOL,1.31667646178347,103.784296227747,POINT (11553215.008411061 146584.6556281392)
68
+ HONG WEN SCHOOL,1.32175999964553,103.857628468881,POINT (11561378.316152826 147150.70250909525)
69
+ HORIZON PRIMARY SCHOOL,1.399550034492,103.913404855665,POINT (11567587.315127907 155812.69265002923)
70
+ HOUGANG PRIMARY SCHOOL,1.37738245231461,103.880805274557,POINT (11563958.346358893 153344.28391953034)
71
+ HUAMIN PRIMARY SCHOOL,1.42697284512936,103.844240226564,POINT (11559887.94383548 158866.31488282295)
72
+ INNOVA PRIMARY SCHOOL,1.42896700684852,103.790607539185,POINT (11553917.580386575 159088.3729114962)
73
+ JIEMIN PRIMARY SCHOOL,1.42768847665227,103.830425490093,POINT (11558350.094406087 158946.0033451538)
74
+ JING SHAN PRIMARY SCHOOL,1.37223290983498,103.852132214306,POINT (11560766.475892266 152770.8744085614)
75
+ JUNYUAN PRIMARY SCHOOL,1.34787074766746,103.939221709073,POINT (11570461.234103171 150058.1266699544)
76
+ JURONG PRIMARY SCHOOL,1.33917519796104,103.698803732244,POINT (11543698.027345018 149089.87631907884)
77
+ JURONG WEST PRIMARY SCHOOL,1.33917519796104,103.698803732244,POINT (11543698.027345018 149089.87631907884)
78
+ KEMING PRIMARY SCHOOL,1.34552849960874,103.756449399351,POINT (11550115.113653809 149797.31676929316)
79
+ KHENG CHENG SCHOOL,1.3373381935639,103.847148501824,POINT (11560211.69155651 148885.32613147984)
80
+ KONG HWA SCHOOL,1.31099674009193,103.888352029067,POINT (11564798.447228087 145952.22563631396)
81
+ KRANJI PRIMARY SCHOOL,1.39356050497104,103.747362720939,POINT (11549103.589239983 155145.74316060552)
82
+ KUO CHUAN PRESBYTERIAN PRIMARY SCHOOL,1.34939813669536,103.855018233311,POINT (11561087.746058322 150228.2019510963)
83
+ LAKESIDE PRIMARY SCHOOL,1.33820397704287,103.718089546664,POINT (11545844.914385788 148981.7309839967)
84
+ LIANHUA PRIMARY SCHOOL,1.35424191127295,103.754165828711,POINT (11549860.907732973 150767.55858377353)
85
+ MAHA BODHI SCHOOL,1.32847086658384,103.901298737314,POINT (11566239.66819759 147897.9526382125)
86
+ MARIS STELLA HIGH SCHOOL,1.34139473351039,103.877852484979,POINT (11563629.64332665 149337.02150254181)
87
+ MARSILING PRIMARY SCHOOL,1.43383904037059,103.773643013846,POINT (11552029.098064287 159630.89449703647)
88
+ MARYMOUNT CONVENT SCHOOL,1.34036676987375,103.840021064426,POINT (11559418.268854704 149222.55777004824)
89
+ MAYFLOWER PRIMARY SCHOOL,1.37691761591859,103.843207919226,POINT (11559773.027908271 153292.52361786735)
90
+ MEE TOH SCHOOL,1.3946184538592,103.908589494228,POINT (11567051.271544756 155263.54836189214)
91
+ MERIDIAN PRIMARY SCHOOL,1.37552831658484,103.934889078518,POINT (11569978.927875994 153137.82289892685)
92
+ METHODIST GIRLS' SCHOOL (PRIMARY),1.34947276268396,103.884971343143,POINT (11564422.110992495 150236.51158272126)
93
+ MONTFORT JUNIOR SCHOOL,1.37382444075979,103.889307782925,POINT (11564904.841260884 152948.09370387063)
94
+ NAN CHIAU PRIMARY SCHOOL,1.39221149906592,103.891180928186,POINT (11565113.35883752 154995.52812397305)
95
+ NAN HUA PRIMARY SCHOOL,1.31920159956387,103.761095065761,POINT (11550632.266872965 146865.82706198597)
96
+ NANYANG PRIMARY SCHOOL,1.32084749904532,103.807750155296,POINT (11555825.887682917 147049.09639033047)
97
+ NGEE ANN PRIMARY SCHOOL,1.30552505910497,103.917463017497,POINT (11568039.067636603 145342.96207680335)
98
+ NAVAL BASE PRIMARY SCHOOL,1.41630663159387,103.838794077233,POINT (11559281.68126517 157678.59182958453)
99
+ NEW TOWN PRIMARY SCHOOL,1.29964188181021,103.80010216304,POINT (11554974.517079387 144687.8804931268)
100
+ NORTHLAND PRIMARY SCHOOL,1.42096989918951,103.840928424929,POINT (11559519.275763864 158197.86356634344)
101
+ NORTHOAKS PRIMARY SCHOOL,1.45660782030102,103.814196981329,POINT (11556543.545074143 162166.31003217184)
102
+ NORTH SPRING PRIMARY SCHOOL,1.38706146494859,103.903202683028,POINT (11566451.614464972 154422.0602871702)
103
+ NORTH VIEW PRIMARY SCHOOL,1.42752327193727,103.848190787869,POINT (11560327.7183083 158927.60713025488)
104
+ NORTH VISTA PRIMARY SCHOOL,1.38282243016299,103.895961877928,POINT (11565645.571728308 153950.03520357958)
105
+ OASIS PRIMARY SCHOOL,1.40462413200793,103.911120600638,POINT (11567333.033021461 156377.7077679351)
106
+ OPERA ESTATE PRIMARY SCHOOL,1.31996876377748,103.923752668632,POINT (11568739.22839822 146951.25004613496)
107
+ PALM VIEW PRIMARY SCHOOL,1.38376923022123,103.891354675017,POINT (11565132.700246274 154055.46322880278)
108
+ PARK VIEW PRIMARY SCHOOL,1.37738069854249,103.939541695654,POINT (11570496.85484643 153344.08863408456)
109
+ PASIR RIS PRIMARY SCHOOL,1.37241870245531,103.962807212116,POINT (11573086.760292022 152791.56268238346)
110
+ PAYA LEBAR METHODIST GIRLS' SCHOOL (PRIMARY),1.34947276268396,103.884971343143,POINT (11564422.110992495 150236.51158272126)
111
+ PEI CHUN PUBLIC SCHOOL,1.33677864390672,103.855341310212,POINT (11561123.710814428 148823.02038434843)
112
+ PEI HWA PRESBYTERIAN PRIMARY SCHOOL,1.33805634613048,103.776106448614,POINT (11552303.326368263 148965.29230300465)
113
+ PEI TONG PRIMARY SCHOOL,1.31666529308968,103.767438999533,POINT (11551338.47035009 146583.41200647512)
114
+ PEIYING PRIMARY SCHOOL,1.41741627551251,103.830143209875,POINT (11558318.671115957 157802.15460409914)
115
+ PIONEER PRIMARY SCHOOL,1.33902264667589,103.687769623983,POINT (11542469.716032047 149072.88974857194)
116
+ POI CHING SCHOOL,1.35765122315688,103.935246477199,POINT (11570018.713315174 151147.18775060304)
117
+ PRINCESS ELIZABETH PRIMARY SCHOOL,1.34919098857585,103.740719208011,POINT (11548364.03676376 150205.13593217285)
118
+ PUNGGOL COVE PRIMARY SCHOOL,1.41158455562454,103.89890448429,POINT (11565973.141170131 157152.77263217556)
119
+ PUNGGOL GREEN PRIMARY SCHOOL,1.40172590450528,103.898794262307,POINT (11565960.87131511 156054.98178366513)
120
+ PUNGGOL PRIMARY SCHOOL,1.40514582647962,103.905156371376,POINT (11566669.098057041 156435.79999321717)
121
+ PUNGGOL VIEW PRIMARY SCHOOL,1.40514582647962,103.905156371376,POINT (11566669.098057041 156435.79999321717)
122
+ QIFA PRIMARY SCHOOL,1.3132658326807,103.756629101811,POINT (11550135.11804015 146204.8861196723)
123
+ QIHUA PRIMARY SCHOOL,1.44203596557592,103.788339762066,POINT (11553665.132592456 160543.65947359323)
124
+ QUEENSTOWN PRIMARY SCHOOL,1.29559365009015,103.807548617332,POINT (11555803.452579388 144237.11780203882)
125
+ RADIN MAS PRIMARY SCHOOL,1.27495823622634,103.824188270373,POINT (11557655.770282889 141939.4159393046)
126
+ RAFFLES GIRLS' PRIMARY SCHOOL,1.3294042600012,103.806442915912,POINT (11555680.366460344 148001.88547363976)
127
+ RED SWASTIKA SCHOOL,1.33405659580859,103.934317528484,POINT (11569915.303217247 148519.92105253864)
128
+ RIVERSIDE PRIMARY SCHOOL,1.44700426493785,103.801889031334,POINT (11555173.43034799 161096.9038478955)
129
+ RIVER VALLEY PRIMARY SCHOOL,1.29418347842837,103.836018941571,POINT (11558972.754576392 144080.09811248837)
130
+ RIVERVALE PRIMARY SCHOOL,1.39340997767762,103.904559511997,POINT (11566602.655974895 155128.98158190493)
131
+ ROSYTH SCHOOL,1.37289067499064,103.875001549174,POINT (11563312.278604554 152844.1175059977)
132
+ RULANG PRIMARY SCHOOL,1.34673868889096,103.718457955487,POINT (11545885.925468367 149932.07161389568)
133
+ SENGKANG GREEN PRIMARY SCHOOL,1.39284606680477,103.875217666486,POINT (11563336.336673675 155066.18874993845)
134
+ SEMBAWANG PRIMARY SCHOOL,1.4450737155262,103.821042374036,POINT (11557305.570704564 160881.92760802348)
135
+ SI LING PRIMARY SCHOOL,1.43240935732525,103.786035065192,POINT (11553408.57491001 159471.69310989018)
136
+ SENG KANG PRIMARY SCHOOL,1.38949740422462,103.899767112047,POINT (11566069.168452784 154693.3074270505)
137
+ SHUQUN PRIMARY SCHOOL,1.34765311431632,103.721523713379,POINT (11546227.2040758 150033.89313191117)
138
+ SINGAPORE CHINESE GIRLS� SCHOOL (PRIMARY),1.32080725235992,103.827744749548,POINT (11558051.675733667 147044.61495907264)
139
+ SOUTH VIEW PRIMARY SCHOOL,1.38166664389749,103.746275846011,POINT (11548982.598876443 153821.33621531626)
140
+ SPRINGDALE PRIMARY SCHOOL,1.39467010299293,103.889926221247,POINT (11564973.685499975 155269.2996208589)
141
+ STAMFORD PRIMARY SCHOOL,1.30345638467449,103.857453500579,POINT (11561358.838770542 145112.61859400698)
142
+ ST. ANDREW'S JUNIOR SCHOOL,1.33140255308868,103.865117134385,POINT (11562211.950583452 148224.3944243932)
143
+ ST. ANTHONY'S CANOSSIAN PRIMARY SCHOOL,1.3347253730189,103.941234868202,POINT (11570685.337952299 148594.3891859481)
144
+ ST. ANTHONY'S PRIMARY SCHOOL,1.3347253730189,103.941234868202,POINT (11570685.337952299 148594.3891859481)
145
+ ST. GABRIEL'S PRIMARY SCHOOL,1.34947192653862,103.862561037707,POINT (11561927.407202838 150236.4184776248)
146
+ ST. HILDA'S PRIMARY SCHOOL,1.34938565036336,103.937007133662,POINT (11570214.708696095 150226.81159340247)
147
+ ST. JOSEPH'S INSTITUTION JUNIOR,1.31781476118551,103.845633334522,POINT (11560043.023903986 146711.40403307407)
148
+ ST. MARGARET'S PRIMARY SCHOOL,1.32439150290682,103.881624837373,POINT (11564049.579674242 147443.71823282758)
149
+ ST. STEPHEN'S SCHOOL,1.31878997295135,103.917258129598,POINT (11568016.259620016 146819.99285251382)
150
+ TAMPINES NORTH PRIMARY SCHOOL,1.36048786025607,103.948768900518,POINT (11571524.022593336 151463.04960370512)
151
+ TAMPINES PRIMARY SCHOOL,1.3504863946694,103.943573098509,POINT (11570945.628559431 150349.37990708207)
152
+ TANJONG KATONG PRIMARY SCHOOL,1.30498489044822,103.899999965407,POINT (11566095.089570248 145282.8151703313)
153
+ TAO NAN SCHOOL,1.2943321052493,103.849026157822,POINT (11560420.711266091 144096.64739659836)
154
+ TECK GHEE PRIMARY SCHOOL,1.36558782075966,103.850957126982,POINT (11560635.66576972 152030.93529731748)
155
+ TECK WHYE PRIMARY SCHOOL,1.38388660469396,103.753924558586,POINT (11549834.049665514 154068.53310722037)
156
+ TELOK KURAU PRIMARY SCHOOL,1.33104585441349,103.910934011337,POINT (11567312.261995487 148184.67618943602)
157
+ TEMASEK PRIMARY SCHOOL,1.31770677551333,103.945590669163,POINT (11571170.223497273 146699.37994300586)
158
+ TOWNSVILLE PRIMARY SCHOOL,1.36003263746623,103.853826048327,POINT (11560955.032632971 151412.3601500122)
159
+ UNITY PRIMARY SCHOOL,1.40285481877246,103.746822625758,POINT (11549043.466119453 156180.68959297883)
160
+ VALOUR PRIMARY SCHOOL,1.40683570215319,103.899078139493,POINT (11565992.472378902 156623.9727459325)
161
+ WATERWAY PRIMARY SCHOOL,1.39882800626578,103.918621581556,POINT (11568168.038397701 155732.29286318534)
162
+ WELLINGTON PRIMARY SCHOOL,1.45192019155475,103.822303719094,POINT (11557445.982994137 161644.3174542344)
163
+ WEST GROVE PRIMARY SCHOOL,1.3448790560014,103.699286360581,POINT (11543751.753285736 149725.00110734877)
164
+ WEST SPRING PRIMARY SCHOOL,1.38944145898943,103.766195711835,POINT (11551200.06819664 154687.07780021828)
165
+ WESTWOOD PRIMARY SCHOOL,1.34718456606375,103.70053420978,POINT (11543890.663223157 149981.72015270186)
166
+ WEST VIEW PRIMARY SCHOOL,1.38378546546228,103.760273432258,POINT (11550540.803049793 154057.27105479036)
167
+ WHITE SANDS PRIMARY SCHOOL,1.36563610941695,103.960861814678,POINT (11572870.199639834 152036.31229326726)
168
+ WOODGROVE PRIMARY SCHOOL,1.43273620725049,103.79023031392,POINT (11553875.587862162 159508.0892531675)
169
+ WOODLANDS PRIMARY SCHOOL,1.43658270720199,103.791791282236,POINT (11554049.354060244 159936.41393727277)
170
+ WOODLANDS RING PRIMARY SCHOOL,1.43495229315857,103.797435733144,POINT (11554677.69146113 159754.86007605487)
171
+ XINGHUA PRIMARY SCHOOL,1.35790893589535,103.890472887906,POINT (11565034.54015409 151175.88425877245)
172
+ XINGNAN PRIMARY SCHOOL,1.34270639669225,103.687588478681,POINT (11542449.551029267 149483.07524413624)
173
+ XINMIN PRIMARY SCHOOL,1.37139548941931,103.883080767491,POINT (11564211.653073607 152677.6264683167)
174
+ XISHAN PRIMARY SCHOOL,1.43347186925064,103.837755319448,POINT (11559166.047277484 159590.00839618544)
175
+ YANGZHENG PRIMARY SCHOOL,1.34864575840923,103.868595527042,POINT (11562599.163482808 150144.4243629536)
176
+ YEW TEE PRIMARY SCHOOL,1.39676600905037,103.750985967346,POINT (11549506.927185029 155502.68405808753)
177
+ YIO CHU KANG PRIMARY SCHOOL,1.37793264345276,103.885643682171,POINT (11564496.955430731 153405.5486259779)
178
+ YISHUN PRIMARY SCHOOL,1.43338602975674,103.834087115915,POINT (11558757.704728067 159580.44979621202)
179
+ YU NENG PRIMARY SCHOOL,1.33388930344069,103.932144857355,POINT (11569673.442573505 148501.29310280873)
180
+ YUHUA PRIMARY SCHOOL,1.34280230475033,103.741105772644,POINT (11548407.068941865 149493.7546128622)
181
+ YUMIN PRIMARY SCHOOL,1.35131569890862,103.950551091373,POINT (11571722.41517181 150441.72329866586)
182
+ ZHANGDE PRIMARY SCHOOL,1.28421153335379,103.825951875662,POINT (11557852.093925621 142969.74519842496)
183
+ ZHENGHUA PRIMARY SCHOOL,1.37954887512229,103.769313521752,POINT (11551547.14120899 153585.5188162627)
184
+ ZHONGHUA PRIMARY SCHOOL,1.36026072476019,103.869712517383,POINT (11562723.506278789 151437.7578674354)
data/sec_sch_latlong.csv ADDED
@@ -0,0 +1,144 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Name,lat,long,geometry
2
+ ADMIRALTY SECONDARY SCHOOL,1.44589068910993,103.802398196596,POINT (11555230.110365685 160972.9016410955)
3
+ AHMAD IBRAHIM SECONDARY SCHOOL,1.43605975368804,103.829718690077,POINT (11558271.413788212 159878.1807215579)
4
+ ANDERSON SECONDARY SCHOOL,1.37434001701177,103.851554107068,POINT (11560702.121288907 153005.50389861598)
5
+ ANGLICAN HIGH SCHOOL,1.33118107926966,103.941853465631,POINT (11570754.1999031 148199.7334148808)
6
+ ANGLO-CHINESE SCHOOL (BARKER ROAD),1.31908928371585,103.834802703002,POINT (11558837.363518208 146853.3208044744)
7
+ ANGLO-CHINESE SCHOOL (INDEPENDENT),1.30370409257783,103.780363417671,POINT (11552777.209996013 145140.2004501405)
8
+ ANG MO KIO SECONDARY SCHOOL,1.36733710171069,103.842154973672,POINT (11559655.814545367 152225.71975491787)
9
+ ASSUMPTION ENGLISH SCHOOL,1.36838160662857,103.766687526556,POINT (11551254.816760946 152342.02665355933)
10
+ BARTLEY SECONDARY SCHOOL,1.33995415587811,103.882806211705,POINT (11564181.089663317 149176.61322255436)
11
+ BEATTY SECONDARY SCHOOL,1.341790284928,103.852280842345,POINT (11560783.021089885 149381.06615860472)
12
+ BEDOK GREEN SECONDARY SCHOOL,1.33451947288431,103.935028383346,POINT (11569994.435218511 148571.4622681374)
13
+ BEDOK SOUTH SECONDARY SCHOOL,1.32513655159184,103.950989139261,POINT (11571771.178439645 147526.67884758994)
14
+ BEDOK VIEW SECONDARY SCHOOL,1.32415704029686,103.943776245024,POINT (11570968.242726037 147417.6110014376)
15
+ BENDEMEER SECONDARY SCHOOL,1.32461111307996,103.860970284401,POINT (11561750.325354839 147468.17165903482)
16
+ BOON LAY SECONDARY SCHOOL,1.34272216334333,103.701891453912,POINT (11544041.750948813 149484.830861767)
17
+ BOWEN SECONDARY SCHOOL,1.37035994436209,103.877659577677,POINT (11563608.16898402 152562.3171158967)
18
+ BROADRICK SECONDARY SCHOOL,1.30705061123433,103.886917922608,POINT (11564638.80322733 145512.82990938093)
19
+ BUKIT BATOK SECONDARY SCHOOL,1.34849111079052,103.74087370482,POINT (11548381.235269867 150127.2042991483)
20
+ BUKIT MERAH SECONDARY SCHOOL,1.28569283064288,103.813438929393,POINT (11556459.159118632 143134.68393496302)
21
+ BUKIT PANJANG GOVERNMENT HIGH SCHOOL,1.38224243360043,103.738361221869,POINT (11548101.546947135 153885.451480727)
22
+ BUKIT VIEW SECONDARY SCHOOL,1.3457330554294,103.752226593984,POINT (11549645.033110637 149820.09410053105)
23
+ CATHOLIC HIGH SCHOOL,1.3547230747166,103.844874676599,POINT (11559958.57049031 150821.13642381603)
24
+ CANBERRA SECONDARY SCHOOL,1.45319086315972,103.814203583818,POINT (11556544.280059855 161785.81343881556)
25
+ CEDAR GIRLS' SECONDARY SCHOOL,1.33375800216334,103.873933064886,POINT (11563193.335477693 148486.67274997223)
26
+ CHANGKAT CHANGI SECONDARY SCHOOL,1.33950630072876,103.953245525564,POINT (11572022.35821393 149126.74458314062)
27
+ CHIJ KATONG CONVENT,1.30644268034894,103.917144350028,POINT (11568003.593736222 145445.1377481442)
28
+ CHIJ SECONDARY (TOA PAYOH),1.33246079948303,103.843271625083,POINT (11559780.119611835 148342.22971204986)
29
+ CHIJ ST. JOSEPH'S CONVENT,1.39175222260369,103.902464991543,POINT (11566369.4950245 154944.38661015753)
30
+ CHIJ ST. NICHOLAS GIRLS' SCHOOL,1.37347687878916,103.834253269436,POINT (11558776.200853419 152909.39216023145)
31
+ CHIJ ST. THERESA'S CONVENT,1.27535177510054,103.822440701642,POINT (11557461.231821628 141983.23533812325)
32
+ CHUA CHU KANG SECONDARY SCHOOL,1.38319029263484,103.751878290333,POINT (11549606.260125564 153990.99739923218)
33
+ CHRIST CHURCH SECONDARY SCHOOL,1.42656780901455,103.793451105242,POINT (11554234.124712078 158821.21248545684)
34
+ CHUNG CHENG HIGH SCHOOL (MAIN),1.30509154753048,103.891653229373,POINT (11565165.93516516 145294.69126295196)
35
+ CHUNG CHENG HIGH SCHOOL (YISHUN),1.41922603586175,103.837390782849,POINT (11559125.46724891 158003.67794612917)
36
+ CLEMENTI TOWN SECONDARY SCHOOL,1.31553912945073,103.762020598524,POINT (11550735.296708854 146458.01496312665)
37
+ COMMONWEALTH SECONDARY SCHOOL,1.31920395934801,103.745637393049,POINT (11548911.526617816 146866.08982159942)
38
+ COMPASSVALE SECONDARY SCHOOL,1.39614083952009,103.899847164494,POINT (11566078.079850422 155433.06982890505)
39
+ CRESCENT GIRLS' SCHOOL,1.29331947077104,103.817544461755,POINT (11556916.184890606 143983.89269511588)
40
+ DAMAI SECONDARY SCHOOL,1.33692798510393,103.927091653438,POINT (11569110.92248659 148839.64949665839)
41
+ DEYI SECONDARY SCHOOL,1.36599702567717,103.852545772422,POINT (11560812.512971153 152076.5007255728)
42
+ DUNEARN SECONDARY SCHOOL,1.36357900792871,103.74472109107,POINT (11548809.524348103 151807.25183950562)
43
+ DUNMAN HIGH SCHOOL,1.29996216014962,103.88294155989,POINT (11564196.15655435 144723.5428911554)
44
+ DUNMAN SECONDARY SCHOOL,1.36065258337022,103.956213906966,POINT (11572352.79692008 151481.39166813152)
45
+ EAST SPRING SECONDARY SCHOOL,1.35622508992581,103.960640700298,POINT (11572845.585299645 150988.3867929523)
46
+ EDGEFIELD SECONDARY SCHOOL,1.40059309981824,103.902687385465,POINT (11566394.251802653 155928.8408259741)
47
+ EVERGREEN SECONDARY SCHOOL,1.44149131273737,103.794137756171,POINT (11554310.562343847 160483.00979618495)
48
+ FAIRFIELD METHODIST SECONDARY SCHOOL,1.30163374395823,103.784099647149,POINT (11553193.12515899 144909.67071594935)
49
+ FAJAR SECONDARY SCHOOL,1.375600053443,103.763998914082,POINT (11550955.521789398 153145.8109114431)
50
+ FUCHUN SECONDARY SCHOOL,1.43070452883799,103.777625748539,POINT (11552472.454062277 159281.85321826424)
51
+ FUHUA SECONDARY SCHOOL,1.34701408913756,103.72652089832,POINT (11546783.488158831 149962.7375016932)
52
+ GAN ENG SENG SCHOOL,1.28907114485773,103.823733673089,POINT (11557605.164744718 143510.8511047384)
53
+ GEYLANG METHODIST SCHOOL (SECONDARY),1.31764900474601,103.882661129303,POINT (11564164.939164205 146692.94722955022)
54
+ GREENDALE SECONDARY SCHOOL,1.39696019936894,103.91170014084,POINT (11567397.547141643 155524.3076514391)
55
+ GREENRIDGE SECONDARY SCHOOL,1.38186433722811,103.773828466913,POINT (11552049.742605273 153843.34973742164)
56
+ GUANGYANG SECONDARY SCHOOL,1.34440856042912,103.850208933626,POINT (11560552.377266318 149672.61135316582)
57
+ HAI SING CATHOLIC SCHOOL,1.37434641160381,103.954957944437,POINT (11572212.983810896 153006.21594618028)
58
+ HILLGROVE SECONDARY SCHOOL,1.35273576615912,103.752986488399,POINT (11549729.62416997 150599.84848447377)
59
+ HOLY INNOCENTS' HIGH SCHOOL,1.37154508822261,103.896398814264,POINT (11565694.211258741 152694.2845029248)
60
+ HOUGANG SECONDARY SCHOOL,1.37764019332164,103.882533963338,POINT (11564150.783113735 153372.98381138817)
61
+ HUA YI SECONDARY SCHOOL,1.35234365488339,103.721832320169,POINT (11546261.558026519 150556.18669209132)
62
+ HWA CHONG INSTITUTION,1.3249477928719,103.805704361472,POINT (11555598.150956161 147505.6607027077)
63
+ JUNYUAN SECONDARY SCHOOL,1.35361315263537,103.933886165824,POINT (11569867.284145588 150697.54594577954)
64
+ JURONG SECONDARY SCHOOL,1.33002032220942,103.723952961648,POINT (11546497.626756115 148070.483677783)
65
+ JURONG WEST SECONDARY SCHOOL,1.33525634688323,103.702098904443,POINT (11544064.844236288 148653.5129742614)
66
+ JURONGVILLE SECONDARY SCHOOL,1.35128862770284,103.728907710089,POINT (11547049.186829578 150438.70890750457)
67
+ JUYING SECONDARY SCHOOL,1.3387227734133,103.687310264575,POINT (11542418.580376657 149039.49889353552)
68
+ KENT RIDGE SECONDARY SCHOOL,1.30122773426098,103.764889617566,POINT (11551054.674447687 144864.46226133357)
69
+ KRANJI SECONDARY SCHOOL,1.39005109871311,103.741190664845,POINT (11548416.519098451 154754.96255238494)
70
+ KUO CHUAN PRESBYTERIAN SECONDARY SCHOOL,1.35017129930314,103.854983746416,POINT (11561083.906994732 150314.2939078006)
71
+ LOYANG VIEW SECONDARY SCHOOL,1.36658417167238,103.956944585725,POINT (11572434.135707464 152141.88010671528)
72
+ MANJUSRI SECONDARY SCHOOL,1.32747123084846,103.901719963831,POINT (11566286.558918973 147786.64380123367)
73
+ MARIS STELLA HIGH SCHOOL,1.34139473351039,103.877852484979,POINT (11563629.64332665 149337.02150254181)
74
+ MARSILING SECONDARY SCHOOL,1.43664424769955,103.776008090454,POINT (11552292.377187978 159943.26674814863)
75
+ MAYFLOWER SECONDARY SCHOOL,1.36827266209722,103.835360726863,POINT (11558899.482450265 152329.89554453458)
76
+ MERIDIAN SECONDARY SCHOOL,1.3672468492013,103.948972483629,POINT (11571546.685361587 152215.6700301149)
77
+ METHODIST GIRLS' SCHOOL (SECONDARY),1.35096755912522,103.885120050588,POINT (11564438.66502955 150402.95777690993)
78
+ MONTFORT SECONDARY SCHOOL,1.37396131656912,103.888928372577,POINT (11564862.605494143 152963.3350308644)
79
+ NAN CHIAU HIGH SCHOOL,1.38879582498399,103.890004423764,POINT (11564982.390964346 154615.18502305483)
80
+ NAN HUA HIGH SCHOOL,1.30809529518605,103.768561446725,POINT (11551463.420599947 145629.15388546584)
81
+ NANYANG GIRLS' HIGH SCHOOL,1.33058326666479,103.802420979943,POINT (11555232.646596272 148133.1672629472)
82
+ NAVAL BASE SECONDARY SCHOOL,1.41937881620441,103.831050390247,POINT (11558419.657973025 158020.6905955229)
83
+ NEW TOWN SECONDARY SCHOOL,1.30977590011357,103.77318863421,POINT (11551978.51675458 145816.2868008886)
84
+ NGEE ANN SECONDARY SCHOOL,1.35447525755806,103.956747262496,POINT (11572412.16978609 150793.5418322182)
85
+ NORTH VISTA SECONDARY SCHOOL,1.381131285358,103.899188813886,POINT (11566004.792595975 153761.72304987357)
86
+ NORTHBROOKS SECONDARY SCHOOL,1.42081285020652,103.845147332528,POINT (11559988.922409488 158180.375576229)
87
+ NORTHLAND SECONDARY SCHOOL,1.43580183362637,103.840104687784,POINT (11559427.577764334 159849.4601725573)
88
+ ORCHID PARK SECONDARY SCHOOL,1.41532032779634,103.837859241343,POINT (11559177.615809917 157568.76346340694)
89
+ OUTRAM SECONDARY SCHOOL,1.28651357464735,103.837127264403,POINT (11559096.132509686 143226.0717617956)
90
+ PASIR RIS CREST SECONDARY SCHOOL,1.37284060102246,103.959728202919,POINT (11572744.006556064 152838.54169681272)
91
+ PASIR RIS SECONDARY SCHOOL,1.37284060102246,103.959728202919,POINT (11572744.006556064 152838.54169681272)
92
+ PAYA LEBAR METHODIST GIRLS' SCHOOL (SECONDARY),1.35096755912522,103.885120050588,POINT (11564438.66502955 150402.95777690993)
93
+ PEI HWA SECONDARY SCHOOL,1.39037504993234,103.878461745339,POINT (11563697.465879684 154791.03525520363)
94
+ PEICAI SECONDARY SCHOOL,1.35951583222214,103.870010749055,POINT (11562756.705276655 151354.81344805082)
95
+ PEIRCE SECONDARY SCHOOL,1.36665944653812,103.83021606804,POINT (11558326.781649785 152150.262050655)
96
+ PING YI SECONDARY SCHOOL,1.3270167275387,103.920700671987,POINT (11568399.481685797 147736.03514635738)
97
+ PRESBYTERIAN HIGH SCHOOL,1.38201194250223,103.843149382823,POINT (11559766.511665696 153859.78586195203)
98
+ PUNGGOL SECONDARY SCHOOL,1.40205738421399,103.909213706482,POINT (11567120.75853502 156091.8929842118)
99
+ QUEENSTOWN SECONDARY SCHOOL,1.29352126774652,103.813190980055,POINT (11556431.557524582 144006.36235675865)
100
+ QUEENSWAY SECONDARY SCHOOL,1.30022271592188,103.802207291625,POINT (11555208.858921524 144752.55529563106)
101
+ RAFFLES GIRLS' SCHOOL (SECONDARY),1.34217479932295,103.84313404727,POINT (11559764.804519746 149423.8818488619)
102
+ RAFFLES INSTITUTION,1.34610222088556,103.844023836251,POINT (11559863.855376024 149861.20075219436)
103
+ REGENT SECONDARY SCHOOL,1.39327908335682,103.751034411529,POINT (11549512.319966812 155114.4061831275)
104
+ RIVERSIDE SECONDARY SCHOOL,1.44110157139127,103.78830823641,POINT (11553661.623172482 160439.61025726734)
105
+ RIVER VALLEY HIGH SCHOOL,1.34407801149725,103.709022156436,POINT (11544835.537122784 149635.80468490944)
106
+ ST. ANDREW'S SECONDARY SCHOOL,1.33069360968075,103.866249138562,POINT (11562337.96471201 148145.45390457948)
107
+ ST. PATRICK'S SCHOOL,1.30788341871801,103.917638193713,POINT (11568058.56816377 145605.56175767496)
108
+ SEMBAWANG SECONDARY SCHOOL,1.44531502131387,103.816843258118,POINT (11556838.12725879 160908.79819277974)
109
+ SENGKANG SECONDARY SCHOOL,1.38652129134849,103.898365549236,POINT (11565913.147194348 154361.91081902673)
110
+ SERANGOON GARDEN SECONDARY SCHOOL,1.36932570490947,103.869270301476,POINT (11562674.279029202 152447.15319408747)
111
+ SERANGOON SECONDARY SCHOOL,1.36932570490947,103.869270301476,POINT (11562674.279029202 152447.15319408747)
112
+ SINGAPORE CHINESE GIRLS' SCHOOL,1.3206340835184,103.828164966953,POINT (11558098.454121213 147025.33276929165)
113
+ SINGAPORE SPORTS SCHOOL,1.42641140556342,103.789444793951,POINT (11553788.144179204 158803.79633543073)
114
+ SPRINGFIELD SECONDARY SCHOOL,1.34957303471476,103.930354460693,POINT (11569474.136528773 150247.67691109842)
115
+ ST. ANTHONY'S CANOSSIAN SECONDARY SCHOOL,1.33466313498855,103.941977166932,POINT (11570767.97026894 148587.4589998603)
116
+ ST. GABRIEL'S SECONDARY SCHOOL,1.34648798732177,103.876094163287,POINT (11563433.907851245 149904.155933149)
117
+ ST. HILDA'S SECONDARY SCHOOL,1.34973922385379,103.937608032148,POINT (11570281.600409577 150266.1821353054)
118
+ ST. MARGARET'S SECONDARY SCHOOL,1.32006821363359,103.80995114006,POINT (11556070.900186088 146962.32369218295)
119
+ MALCOLM ROAD SAINT JOSEPH'S INSTITUTION,1.32365313490152,103.828498974985,POINT (11558135.635725256 147361.50153136978)
120
+ SWISS COTTAGE SECONDARY SCHOOL,1.36471742697475,103.750396136688,POINT (11549441.267536525 151934.0159952587)
121
+ TANGLIN SECONDARY SCHOOL,1.30970169234123,103.758158358303,POINT (11550305.354094133 145808.02387067425)
122
+ TAMPINES SECONDARY SCHOOL,1.34926094811197,103.944263709507,POINT (11571022.507024065 150212.9259519053)
123
+ TANJONG KATONG GIRLS' SCHOOL,1.30821274627283,103.895820094229,POINT (11565629.788439132 145642.23188915337)
124
+ TANJONG KATONG SECONDARY SCHOOL,1.30873515955341,103.897225196199,POINT (11565786.203674944 145700.4018377545)
125
+ TECK WHYE SECONDARY SCHOOL,1.38333422637073,103.75510327583,POINT (11549965.263868906 154007.02470002385)
126
+ TEMASEK SECONDARY SCHOOL,1.31591673150616,103.947564112022,POINT (11571389.906151446 146500.06051722702)
127
+ UNITY SECONDARY SCHOOL,1.40001524119441,103.74602091483,POINT (11548954.220067186 155864.4946818901)
128
+ VICTORIA SCHOOL,1.3087130270751,103.927980966639,POINT (11569209.920379281 145697.93741867875)
129
+ WEST SPRING SECONDARY SCHOOL,1.38782283303782,103.760128840155,POINT (11550524.707130514 154506.8402508995)
130
+ WESTWOOD SECONDARY SCHOOL,1.35373698510994,103.701772102139,POINT (11544028.464770216 150711.33476201666)
131
+ WHITLEY SECONDARY SCHOOL,1.35505208480649,103.842552378136,POINT (11559700.053407941 150857.7719021517)
132
+ WOODGROVE SECONDARY SCHOOL,1.42831828137013,103.79604758539,POINT (11554523.163560009 159016.1346663915)
133
+ WOODLANDS RING SECONDARY SCHOOL,1.43648894729939,103.800148469692,POINT (11554979.671912309 159925.97335125387)
134
+ WOODLANDS SECONDARY SCHOOL,1.43648894729939,103.800148469692,POINT (11554979.671912309 159925.97335125387)
135
+ XINMIN SECONDARY SCHOOL,1.37255884700002,103.88305161385,POINT (11564208.407705138 152807.16797880508)
136
+ YIO CHU KANG SECONDARY SCHOOL,1.37797597740925,103.84213696352,POINT (11559653.809664419 153410.3739353481)
137
+ YISHUN SECONDARY SCHOOL,1.42813324276086,103.828764316679,POINT (11558165.17342752 158995.5298613849)
138
+ YISHUN TOWN SECONDARY SCHOOL,1.43232156717386,103.838094226361,POINT (11559203.774222465 159461.91730028315)
139
+ YUAN CHING SECONDARY SCHOOL,1.34200635764467,103.72089870437,POINT (11546157.628391176 149405.1258617339)
140
+ YUHUA SECONDARY SCHOOL,1.34718626876968,103.722687235839,POINT (11546356.726803575 149981.90974946608)
141
+ YUSOF ISHAK SECONDARY SCHOOL,1.40693702458178,103.896275149571,POINT (11565680.444968086 156635.25530826193)
142
+ YUYING SECONDARY SCHOOL,1.35713595302467,103.890194755287,POINT (11565003.57857257 151089.81204118932)
143
+ ZHENGHUA SECONDARY SCHOOL,1.38836583415352,103.765510638527,POINT (11551123.806184838 154567.30460216367)
144
+ ZHONGHUA SECONDARY SCHOOL,1.34840720846208,103.869430481414,POINT (11562692.110178335 150117.86174741428)
model/encoder.sav ADDED
Binary file (2.87 kB). View file
 
requirements.txt ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ numpy
2
+ pandas
3
+ geopandas
4
+ shapely
5
+ pickle
6
+ folium
7
+ requests
8
+ streamlit
9
+ seaborn
10
+ streamlit_folium
11
+ matplotlib.pyplot
utils.py ADDED
@@ -0,0 +1,80 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import pandas as pd
2
+ import geopandas as gpd
3
+ from shapely.geometry import Point, LineString
4
+ import pickle
5
+ import requests
6
+
7
+ # Load geospatial data
8
+ expressway = gpd.read_file('data/expressway.shp')
9
+ expressway.to_crs(epsg=3857, inplace=True)
10
+
11
+ geosubset = gpd.read_file('data/geosubset.shp')
12
+ geosubset.to_crs(epsg=3857, inplace=True)
13
+ geosubset['storey'] = geosubset['storey'].astype(int)
14
+ geosubset['floor_area'] = geosubset['floor_area'].astype(float)
15
+ geosubset['age_asof_t'] = geosubset['age_asof_t'].astype(int)
16
+ geosubset['transactDa'] = pd.to_datetime(geosubset['transactDa'])
17
+
18
+ mrt_raw = pd.read_csv('data/mrt.csv')
19
+ geo_mrt = gpd.GeoDataFrame(mrt_raw, crs="EPSG:4326",
20
+ geometry=[Point(xy) for xy in zip(mrt_raw['long'], mrt_raw['lat'])])
21
+ geo_mrt.to_crs(epsg=3857, inplace=True)
22
+
23
+ mall_df = pd.read_csv('data/mall.csv')
24
+ geo_mall = gpd.GeoDataFrame(mall_df, crs="EPSG:4326",
25
+ geometry=[Point(xy) for xy in zip(mall_df['long'], mall_df['lat'])])
26
+ geo_mall.to_crs(epsg=3857, inplace=True)
27
+
28
+ pri_sch_raw = pd.read_csv('data/pri_sch_latlong.csv')
29
+ geo_pri = gpd.GeoDataFrame(pri_sch_raw, crs="EPSG:4326",
30
+ geometry=[Point(xy) for xy in zip(pri_sch_raw['long'], pri_sch_raw['lat'])])
31
+ geo_pri.to_crs(epsg=3857, inplace=True)
32
+
33
+ sec_sec_raw = pd.read_csv('data/sec_sch_latlong.csv')
34
+ geo_sec = gpd.GeoDataFrame(sec_sec_raw, crs="EPSG:4326",
35
+ geometry=[Point(xy) for xy in zip(sec_sec_raw['long'], sec_sec_raw['lat'])])
36
+ geo_sec.to_crs(epsg=3857, inplace=True)
37
+
38
+ postal = pd.read_csv('data/district.csv')
39
+ postal_melt = pd.DataFrame(postal['2dpostal'].str.split(",").to_list(), index=postal.district).stack().reset_index()[['district', 0]]
40
+ postal_final = postal_melt.merge(postal, how='left', on='district').drop(columns=['2dpostal'])
41
+ postal_final.columns = ['district', '2dpostal', 'town']
42
+ postal_final['2dpostal'] = postal_final['2dpostal'].astype(str).str.strip()
43
+
44
+ # Load models
45
+ xgb = pickle.load(open('model/xgb_final.sav', "rb"))
46
+ enc = pickle.load(open('model/encoder.sav', "rb"))
47
+
48
+ # Load CIs
49
+ sd_hdb = 34.88572450193993
50
+ sd_condo = 112.3696357113714
51
+ sd_ec = 66.34935799217807
52
+ sd_apt = 137.16498181900047
53
+
54
+ # test one map api here
55
+ def test_postal(location):
56
+ searchQuery = "https://developers.onemap.sg/commonapi/search?searchVal=" + location + "&returnGeom=Y&getAddrDetails=Y"
57
+ response = requests.get(searchQuery)
58
+
59
+ try:
60
+ result = response.json()['results'][0]
61
+ latitude = result['LATITUDE']
62
+ longitude = result['LONGITUDE']
63
+ return [result['SEARCHVAL'], result['ADDRESS'], float(latitude), float(longitude)]
64
+ except:
65
+ return 'INVALID LOCATION'
66
+
67
+ # Actual predictions
68
+ def getSVY21(location):
69
+ searchQuery = "https://developers.onemap.sg/commonapi/search?searchVal=" + location + "&returnGeom=Y&getAddrDetails=Y"
70
+ response = requests.get(searchQuery)
71
+
72
+ try:
73
+ result = response.json()['results'][0]
74
+ latitude = result['LATITUDE']
75
+ longitude = result['LONGITUDE']
76
+ return float(latitude), float(longitude)
77
+ except:
78
+ return 'INVALID LOCATION'
79
+
80
+ print('utils imported!')