| import streamlit as st |
| import pandas as pd |
| import requests |
|
|
| |
| st.title("SuperKart Sales Prediction") |
|
|
| |
| st.subheader("Online Prediction") |
|
|
| |
| Product_Weight = st.number_input( |
| "Product Weight (kg)", |
| min_value=0.0, step=0.01, value=12.65 |
| ) |
|
|
| Product_Sugar_Content = st.selectbox( |
| "Product Sugar Content", |
| ["Low Sugar", "Regular", "No Sugar"] |
| ) |
|
|
| Product_Allocated_Area = st.number_input( |
| "Product Allocated Area (sq. m)", |
| min_value=0.0, step=0.001, value=0.068 |
| ) |
|
|
| Product_Type = st.selectbox( |
| "Product Type", |
| ["Fruits and Vegetables", "Snack Foods", "Frozen Foods", "Dairy", |
| "Household", "Baking Goods", "Canned", "Health and Hygiene", |
| "Meat", "Soft Drinks", "Breads", "Hard Drinks", |
| "Others", "Starchy Foods", "Breakfast", "Seafood"] |
| ) |
|
|
| Product_MRP = st.number_input( |
| "Product MRP (₹)", |
| min_value=0.0, step=0.5, value=147.0 |
| ) |
|
|
| |
| |
| |
| Store_Id = st.selectbox("Store ID", ["OUT001", "OUT002", "OUT003", "OUT004"]) |
|
|
| Store_Establishment_Year = st.number_input( |
| "Store Establishment Year", |
| min_value=1987, max_value=2025, step=1, value=2002 |
| ) |
|
|
| Store_Size = st.selectbox("Store Size", ["Small", "Medium", "High"]) |
|
|
| Store_Location_City_Type = st.selectbox("Store Location City Type", ["Tier 1", "Tier 2", "Tier 3"]) |
|
|
| Store_Type = st.selectbox( |
| "Store Type", |
| ["Supermarket Type1", "Supermarket Type2", "Departmental Store", "Food Mart"] |
| ) |
|
|
| |
| input_data = pd.DataFrame([{ |
| "Product_Weight": Product_Weight, |
| "Product_Sugar_Content": Product_Sugar_Content, |
| "Product_Allocated_Area": Product_Allocated_Area, |
| "Product_Type": Product_Type, |
| "Product_MRP": Product_MRP, |
| "Store_Id": Store_Id, |
| "Store_Establishment_Year": Store_Establishment_Year, |
| "Store_Size": Store_Size, |
| "Store_Location_City_Type": Store_Location_City_Type, |
| "Store_Type": Store_Type |
| }]) |
|
|
| |
| if st.button("Predict"): |
| response = requests.post("https://Jagadesswar-SuperKartSalesPredictionBackend.hf.space/v1/sales_revenue", json=input_data.to_dict(orient='records')[0]) |
| if response.status_code == 200: |
| prediction = response.json()['Predicted Revenue (INR (₹))'] |
| st.success(f"Predicted Revenue (INR (₹)): {prediction}") |
| else: |
| st.error("Error making prediction.") |
|
|
| |
| st.subheader("Batch Prediction") |
|
|
| |
| uploaded_file = st.file_uploader("Upload CSV file for batch prediction", type=["csv"]) |
|
|
| |
| if uploaded_file is not None: |
| if st.button("Predict Batch"): |
| response = requests.post("https://Jagadesswar-SuperKartSalesPredictionBackend.hf.space/v1/sales_revenue_batch", files={"file": uploaded_file}) |
| if response.status_code == 200: |
| predictions = response.json() |
| st.success("Batch predictions completed!") |
| st.write(predictions) |
| else: |
| st.error("Error making batch prediction.") |
|
|