Pattr commited on
Commit
52fc559
·
verified ·
1 Parent(s): 995c4f7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -6
app.py CHANGED
@@ -23,7 +23,24 @@ def get_data():
23
  _conn.close()
24
  _df = pd.DataFrame(_data,columns=['name','province','a_type','genre','close','hour','link'])
25
  return _df
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
 
 
 
 
27
  province_mapping = {
28
  'Bangkok': 'กรุงเทพฯ',
29
  'Nakohn Pathom': 'นครปฐม',
@@ -33,8 +50,17 @@ province_mapping = {
33
  'Samut Songkhram': 'สมุทรสงคราม'
34
  }
35
 
36
- with open('prophet_model.json', 'r') as fin:
37
- prophet_model = model_from_json(json.load(fin))
 
 
 
 
 
 
 
 
 
38
 
39
  def will_rain(year, month, date):
40
  _date = pd.to_datetime(f'{year}-{month}-{date}')
@@ -46,12 +72,10 @@ def will_rain(year, month, date):
46
  def get_advice(province, activity, purpose, year, month, date):
47
  is_rain = will_rain(year, month, date)
48
  activity = 'indoor' if is_rain else activity.lower()
49
-
50
  province = province_mapping[province]
51
 
52
- places = get_data()
53
- places.replace({'indoor ': 'indoor', 'outdoor ': 'outdoor'}, inplace=True)
54
- places = places[(places['province'] == province) & (places['a_type'] == activity) & (places['genre'] == purpose.lower())]
55
 
56
  random_idx = np.random.randint(0, len(places))
57
  place_name = places.iloc[random_idx]['name']
 
23
  _conn.close()
24
  _df = pd.DataFrame(_data,columns=['name','province','a_type','genre','close','hour','link'])
25
  return _df
26
+ def get_dataset():
27
+ _conn = connector.connect(
28
+ host='110.238.111.32',
29
+ user = 'outsider',
30
+ password='Hack2024',
31
+ database = 'TheSimp'
32
+ )
33
+ _cursor = _conn.cursor()
34
+ _query = "SELECT id , ds ,a_temp ,m_temp ,n_temp ,y ,a_pres ,m_pres ,a_ws ,m_ws ,a_humi ,m_humi ,n_humi ,a_vis flat,m_vis ,n_vis FROM weather_new"
35
+ _cursor.execute(_query)
36
+ _data = cursor.fetchall()
37
+ _df = pd.DataFrame(_data,columns=['id','ds','a_temp','m_temp','n_temp','y','a_pres','m_pres','a_ws','m_ws','a_humi','m_humi','n_humi' ,'a_vis','m_vis' ,'n_vis']).drop('id',axis=1)
38
+ return _df
39
+
40
 
41
+ places = get_data()
42
+ places.replace({'indoor ': 'indoor', 'outdoor ': 'outdoor'}, inplace=True)
43
+ places = places[(places['province'] == province) & (places['a_type'] == activity) & (places['genre'] == purpose.lower())]
44
  province_mapping = {
45
  'Bangkok': 'กรุงเทพฯ',
46
  'Nakohn Pathom': 'นครปฐม',
 
50
  'Samut Songkhram': 'สมุทรสงคราม'
51
  }
52
 
53
+
54
+ #with open('prophet_model.json', 'r') as fin:
55
+ # prophet_model = model_from_json(json.load(fin))
56
+
57
+ params = {
58
+ 'changepoint_prior_scale': 0.1,
59
+ 'seasonality_prior_scale': 0.1,
60
+ 'interval_width' : 0.2,
61
+ }
62
+ model = Prophet(**params)
63
+ model.fit(get_dataset())
64
 
65
  def will_rain(year, month, date):
66
  _date = pd.to_datetime(f'{year}-{month}-{date}')
 
72
  def get_advice(province, activity, purpose, year, month, date):
73
  is_rain = will_rain(year, month, date)
74
  activity = 'indoor' if is_rain else activity.lower()
75
+
76
  province = province_mapping[province]
77
 
78
+
 
 
79
 
80
  random_idx = np.random.randint(0, len(places))
81
  place_name = places.iloc[random_idx]['name']