CoolFace
Apppublic

mintup/vicko-beverage

sourceHugging Faceapache-2.0updated 2y agoView on Hugging Face
0likes
predict.py110 linesDownload Raw Back to root
1import streamlit as st2import pandas as pd3import pickle4 5# Load the trained model6with open('best_log_model.pkl', 'rb') as file_1:7    best_model = pickle.load(file_1)8 9def run():10    # Create form for user input11    with st.form(key='form_parameters'):12        pid = st.number_input(13            'Product ID',14            min_value=1001,15            max_value=9999,16            value=1001,17            step=1,18            help='Enter the Product ID'19        )20 21        pcat = st.selectbox(22            'Product Category',23            ('Soda', 'Juice', 'Water', 'Energy Drink'),24            index=025        )26 27        sales_volume = st.number_input(28            'Sales Volume (L)',29            min_value=0.0,30            value=0.0,31            step=0.1,32            help='Enter the sales volume in liters'33        )34 35        price_per_liter = st.number_input(36            'Price per Liter (IDR)',37            min_value=0.0,38            value=0.0,39            step=0.1,40            help='Enter the price per liter in IDR'41        )42 43        advertising_spend = st.number_input(44            'Advertising Spend (USD)',45            min_value=0.0,46            value=0.0,47            step=0.1,48            help='Enter the advertising spend in USD'49        )50 51        num_retailers = st.number_input(52            'Number of Retailers',53            min_value=0,54            value=1,55            step=1,56            help='Enter the number of retailers'57        )58 59        temperature = st.number_input(60            'Temperature (°C)',61            min_value=-50.0,62            max_value=50.0,63            value=25.0,64            step=0.1,65            help='Enter the temperature in Celsius'66        )67 68        market_share = st.number_input(69            'Market Share (%)',70            min_value=0.0,71            max_value=100.0,72            value=0.0,73            step=0.1,74            help='Enter the market share percentage'75        )76 77        competitor_price = st.number_input(78            'Competitor Price per Liter (IDR)',79            min_value=0.0,80            value=0.0,81            step=0.1,82            help='Enter the competitor price per liter in IDR'83        )84 85        submitted = st.form_submit_button('Predict')86 87    if submitted:88        # Prepare the input data89        data_inf = pd.DataFrame([{90            'Product_ID': pid,91            'Sales_Volume_(L)': sales_volume,92            'Product_Category': pcat,93            'Price_per_Liter_(IDR)': price_per_liter,94            'Advertising_Spend_(USD)': advertising_spend,95            'Number_of_Retailers': num_retailers,96            'Temperature_(°C)': temperature,97            'Market_Share_(%)': market_share,98            'Competitor_Price_per_Liter_(IDR)': competitor_price,99        }])100 101        st.dataframe(data_inf)102 103        # Predict using the model104        y_pred_inf = best_model.predict(data_inf)105        st.write('# Holiday Season:', str(y_pred_inf[0]))106 107if __name__ == '__main__':108    run()109 110