Upload 4 files
3c35c49 verified
import streamlit as st
import pandas as pd
from prophet import Prophet
import matplotlib.pyplot as plt
st.title("📈 Demand Forecasting App (Prophet ile)")
# Veriyi yükle
@st.cache_data
def load_data():
df = pd.read_csv("train.csv")
df['date'] = pd.to_datetime(df['date'])
return df
df = load_data()
# Kullanıcıdan seçim
store = st.selectbox("Mağaza Seç", sorted(df['store'].unique()))
item = st.selectbox("Ürün Seç", sorted(df['item'].unique()))
# Prophet için veri hazırla
filtered = df[(df['store'] == store) & (df['item'] == item)]
dfp = filtered[['date', 'sales']].rename(columns={'date': 'ds', 'sales': 'y'})
# Model kur
model = Prophet()
model.fit(dfp)
# Tahmin
future = model.make_future_dataframe(periods=90)
forecast = model.predict(future)
# Tahmin Grafiği
st.subheader("📊 Tahmin Grafiği")
fig1 = model.plot(forecast)
st.pyplot(fig1)
# Mevsimsellik bileşenleri
st.subheader("🧠 Mevsimsellik & Trend Bileşenleri")
fig2 = model.plot_components(forecast)
st.pyplot(fig2)