|
|
| import streamlit as st
|
| import pandas as pd
|
| import joblib
|
| import pickle
|
|
|
|
|
| model = joblib.load('models\model1.pkl')
|
|
|
|
|
|
|
|
|
|
|
|
|
| def predict_sales(input_data):
|
|
|
| sales_prediction = model.predict(input_data)
|
| return sales_prediction
|
|
|
|
|
| def main():
|
| st.title('Sales Prediction App')
|
| st.image("images\\r1.jpg", caption="Sunrise by the mountains")
|
|
|
|
|
| PromoInterval = st.selectbox("Promo Interval", ['No Promotion', 'Jan,Apr,Jul,Oct', 'Feb,May,Aug,Nov', 'Mar,Jun,Sept,Dec'])
|
|
|
|
|
| StoreType = st.radio("StoreType", ["Small Shop", "Medium Store", "Large Store", "Hypermarket"])
|
| Assortment = st.radio("Assortment", ["basic", "extra", "extended"])
|
|
|
|
|
|
|
| StateHoliday = st.radio("State Holiday", ["Yes", "No"])
|
| StateHoliday = 1 if StateHoliday == "Yes" else 0
|
|
|
| SchoolHoliday = st.radio("School Holiday", ["Yes", "No"])
|
| SchoolHoliday = 1 if SchoolHoliday == "Yes" else 0
|
|
|
| Promo = st.radio("Promotion", ["store is participating", "store is not participating"])
|
| Promo = 1 if Promo == "store is participating" else 0
|
|
|
|
|
|
|
| Store = st.slider("Store", 1, 1115)
|
| Customers = st.slider("Customers", 0, 7388)
|
| CompetitionDistance = st.slider("Competition Distance", 20, 75860)
|
| CompetitionOpenSinceMonth = st.slider("Competition Open Since Month", 1, 12)
|
| CompetitionOpenSinceYear = st.slider("Competition Open Since Year", 1998, 2015)
|
|
|
|
|
|
|
| input_data = pd.DataFrame({
|
| 'PromoInterval': [PromoInterval],
|
| 'StoreType': [StoreType],
|
| 'Assortment': [Assortment],
|
| 'StateHoliday': [StateHoliday],
|
| 'Store': [Store],
|
| 'Customers': [Customers],
|
| 'Promo': [Promo],
|
| 'SchoolHoliday': [SchoolHoliday],
|
| 'CompetitionDistance': [CompetitionDistance],
|
| 'CompetitionOpenSinceMonth': [CompetitionOpenSinceMonth],
|
| 'CompetitionOpenSinceYear': [CompetitionOpenSinceYear]
|
| })
|
|
|
|
|
| st.subheader('Input Data:')
|
| st.write(input_data)
|
|
|
|
|
|
|
|
|
|
|
|
|
| if st.button('Predict Sales'):
|
| prediction = predict_sales(input_data)[0]
|
| formatted_prediction = "{:.2f}".format(prediction)
|
| st.write('Predicted Sales:', formatted_prediction)
|
|
|
|
|
| if __name__ == '__main__':
|
| main()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |