Spaces:
Build error
Build error
| import streamlit as st | |
| import pandas as pd | |
| from huggingface_hub import hf_hub_download | |
| import joblib | |
| # Download and load the model | |
| model_path = hf_hub_download(repo_id="vyasmax9/tourism-predict-app", filename="best_tourism_app_v1.joblib") | |
| model = joblib.load(model_path) | |
| # Streamlit UI for Tourism Package Prediction | |
| st.title("Tourism Prediction App") | |
| st.write("""Predict whether a customer will purchase the Wellness Tourism Package""") | |
| age = st.number_input("Age", 18, 70, 30) | |
| income = st.number_input("Monthly Income", 1000, 200000, 50000) | |
| typeofcontact = st.selectbox("Type of Contact", ["Company Invited", "Self Inquiry"]) | |
| occupation = st.selectbox("Occupation", ["Salaried", "Freelancer"]) | |
| gender = st.selectbox("Gender", ["Male", "Female"]) | |
| citytier = st.selectbox("City Tier", [1, 2, 3]) | |
| maritalstatus = st.selectbox("Marital Status", ["Single", "Married", "Divorced"]) | |
| preferredpropertystar = st.selectbox("Preferred Property Star", [3, 4, 5]) | |
| designation = st.selectbox("Designation", ["Executive", "Manager", "Senior Manager"]) | |
| productpitched = st.selectbox("Product Pitched", ["Basic", "Standard", "Deluxe", "Super Deluxe", "Luxury"]) | |
| children = st.number_input("Number of Children Visiting", 0, 5, 0) | |
| # Create DataFrame (IMPORTANT) | |
| input_df = pd.DataFrame([{ | |
| 'Age': age, | |
| 'NumberOfChildrenVisiting': children, | |
| 'MonthlyIncome': income, | |
| 'TypeofContact': typeofcontact, | |
| 'Occupation': occupation, | |
| 'Gender': gender, | |
| 'CityTier': citytier, | |
| 'MaritalStatus': maritalstatus, | |
| 'PreferredPropertyStar': preferredpropertystar, | |
| 'Designation': designation, | |
| 'ProductPitched': productpitched | |
| }]) | |
| # MODEL PREDICTION | |
| if st.button("Predict"): | |
| prediction = model.predict(input_df)[0] | |
| result = "Customer will purchase the Wellness Tourism Package" if prediction == 1 else "Customer will not purchase the Wellness Tourism Package" | |
| st.success(result) | |
| st.subheader("Prediction Probability") | |
| prediction_proba = model.predict_proba(input_df) | |
| st.write(prediction_proba) | |
| if prediction == 1: | |
| st.subheader("Prediction") | |
| st.write(f"Prediction: {prediction}") | |
| st.subheader("Prediction Probability") | |
| st.write(f"Probability of Purchase: {prediction_proba[0][1]}") | |
| else: | |
| st.subheader("Prediction") | |
| st.write(f"Prediction: {prediction}") | |
| st.subheader("Prediction Probability") | |
| st.write(f"Probability of Purchase: {prediction_proba[0][ | |