1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
- import streamlit as st
- import pandas as pd
- import pickle
- import numpy as np
- import math
- from PIL import Image
- with open('preprocess.pkl', 'rb') as f:
- pre = pickle.load(f)
- with open('xg.pkl','rb') as file:
- model = pickle.load(file)
- im = Image.open('logo.png')
- st.set_page_config(layout="wide")
- st.title("Empower Your Ride")
- st.subheader("User Predictions Platform for Scooter Rentals Online")
- st.divider()
- # st.header('App for user predictions for Scooter Rental platform')
- with st.sidebar:
- new_image = im.resize((300, 200))
- st.image(new_image)
- st.title("Please select input parameters to get no. of users")
- st.divider()
- def user_input_features():
- hr = st.sidebar.slider('Hour of Day', 0, 24, 12)
- weather = st.sidebar.radio('Weather', ['clear', 'cloudy', 'light snow/rain'])
- temperature = st.sidebar.slider("Temp", 30, 140, 60)
- relative_humidity = st.sidebar.slider('Humidity', 0, 100, 30)
- windspeed = st.sidebar.slider('Windspeed', 0, 70, 10)
- year = st.sidebar.slider('Year', 2011, 2012)
- month = st.sidebar.selectbox('Month', ['January', 'February', 'March','April','May','June',
- 'July','August','September','October','November','December'])
- dayofweek = st.sidebar.selectbox('Day', ['Monday', 'Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'])
- data = {'hr': hr, 'weather': weather, 'temperature': temperature, 'relative-humidity': relative_humidity,
- 'windspeed': windspeed, 'year': year, 'month': month, 'dayofweek': dayofweek}
- features = pd.DataFrame(data, index=[0])
- return features
- df = user_input_features()
- # st.write(df)
- df_tf = pre.transform(df)
- log_prediction = model.predict(df_tf)
- result = int(2.71828**log_prediction)
- # if st.checkbox('Show dataset'):
- st.write('#### Scooter rental dataset')
- st.write(df)
- # if st.checkbox('Show transformed dataset'):
- # st.write(df_tf)
- # elif st.checkbox('Show original dataset'):
- # st.write(df)
-
- st.subheader('Users Prediction')
- if st.button('Predict'):
- st.subheader("Number of users is")
- st.subheader(result)
|