MohammedJafar-2001 commited on
Commit
63f0a91
·
verified ·
1 Parent(s): bdae506

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -20
app.py CHANGED
@@ -22,12 +22,12 @@
22
  # st.write(f"The predicted price of the rental house is {result}")
23
 
24
 
25
- import os
26
  import joblib
27
  import streamlit as st
28
 
29
  st.title("User Behavior Using Mobile Prediction")
30
 
 
31
  Device_Model = st.selectbox("Enter Device Model Type", ['Xiaomi Mi 11', 'iPhone 12', 'Google Pixel 5', 'OnePlus 9', 'Samsung Galaxy S21'])
32
  age = st.number_input("Enter age", min_value=0, max_value=100, step=1, format="%d")
33
  gender = st.radio("Enter gender", ['Male', 'Female'])
@@ -38,28 +38,27 @@ Battery_Drain = st.number_input("Enter the Battery Drain")
38
  Number_of_Apps_Installed = st.number_input("Enter the Number of Apps Installed")
39
  Data_Usage = st.number_input("Enter the Data Usage")
40
 
41
- # Path Debugging
42
- model_path = r"Mobile_data_user_behaviour/rfc.pkl"
43
- if not os.path.exists(model_path):
44
- st.error(f"Model file not found at: {model_path}")
45
- else:
46
- try:
47
- model_2 = joblib.load(model_path)
48
 
49
- # Encode categorical variables
50
- mapping_device = {'Xiaomi Mi 11': 0, 'iPhone 12': 1, 'Google Pixel 5': 2, 'OnePlus 9': 3, 'Samsung Galaxy S21': 4}
51
- mapping_os = {'Android': 0, 'iOS': 1}
52
- mapping_gender = {'Male': 0, 'Female': 1}
53
 
54
- device_model_encoded = mapping_device[Device_Model]
55
- operating_system_encoded = mapping_os[Operating_System]
56
- gender_encoded = mapping_gender[gender]
57
 
58
- if st.button("Submit"):
59
- result = model_2.predict([[device_model_encoded, operating_system_encoded, App_Usage_Time, Screen_On_Time, Battery_Drain, Number_of_Apps_Installed, Data_Usage, age, gender_encoded]])
60
- st.write(f"The predicted behavior is: {result}")
61
- except Exception as e:
62
- st.error(f"Failed to load the model or predict: {e}")
 
 
63
 
64
 
65
 
 
22
  # st.write(f"The predicted price of the rental house is {result}")
23
 
24
 
 
25
  import joblib
26
  import streamlit as st
27
 
28
  st.title("User Behavior Using Mobile Prediction")
29
 
30
+ # Inputs
31
  Device_Model = st.selectbox("Enter Device Model Type", ['Xiaomi Mi 11', 'iPhone 12', 'Google Pixel 5', 'OnePlus 9', 'Samsung Galaxy S21'])
32
  age = st.number_input("Enter age", min_value=0, max_value=100, step=1, format="%d")
33
  gender = st.radio("Enter gender", ['Male', 'Female'])
 
38
  Number_of_Apps_Installed = st.number_input("Enter the Number of Apps Installed")
39
  Data_Usage = st.number_input("Enter the Data Usage")
40
 
41
+ # Load the model
42
+ model_path = "./rfc.pkl" # Adjust if in a subdirectory
43
+ try:
44
+ model_2 = joblib.load(model_path)
 
 
 
45
 
46
+ # Encode categorical variables
47
+ mapping_device = {'Xiaomi Mi 11': 0, 'iPhone 12': 1, 'Google Pixel 5': 2, 'OnePlus 9': 3, 'Samsung Galaxy S21': 4}
48
+ mapping_os = {'Android': 0, 'iOS': 1}
49
+ mapping_gender = {'Male': 0, 'Female': 1}
50
 
51
+ device_model_encoded = mapping_device[Device_Model]
52
+ operating_system_encoded = mapping_os[Operating_System]
53
+ gender_encoded = mapping_gender[gender]
54
 
55
+ if st.button("Submit"):
56
+ result = model_2.predict([[device_model_encoded, operating_system_encoded, App_Usage_Time, Screen_On_Time, Battery_Drain, Number_of_Apps_Installed, Data_Usage, age, gender_encoded]])
57
+ st.write(f"The predicted behavior is: {result}")
58
+ except FileNotFoundError:
59
+ st.error(f"Model file not found at: {model_path}")
60
+ except Exception as e:
61
+ st.error(f"An error occurred: {e}")
62
 
63
 
64