Spaces:
Sleeping
Sleeping
import streamlit as st | |
import pandas as pd | |
import joblib | |
import numpy as np | |
from datetime import datetime | |
# 🎯 Modeli yükle | |
model = joblib.load("restaurant_revenue_model.pkl") | |
# 🌆 Giriş alanları | |
st.title("🍽️ Restaurant Revenue Predictor") | |
st.write("Restoran bilgilerinizi girerek tahmini geliri öğrenin.") | |
# Kullanıcıdan giriş al | |
open_date = st.date_input("Açılış Tarihi", value=datetime(2015, 1, 1)) | |
years = datetime.now().year - open_date.year | |
city_group = st.selectbox("City Group", ["Big Cities", "Other"]) | |
type_rest = st.selectbox("Restaurant Type", ["IL", "FC", "DT", "MB"]) | |
# Sayısal özellikler (P1 - P37 arası 37 özellik) | |
inputs = {} | |
for i in range(1, 38): | |
inputs[f"P{i}"] = st.number_input(f"Feature P{i}", value=0) | |
# Encode işlemleri | |
inputs["Years"] = years | |
inputs["City Group_Other"] = 1 if city_group == "Other" else 0 | |
inputs["Type_FC"] = 1 if type_rest == "FC" else 0 | |
inputs["Type_IL"] = 1 if type_rest == "IL" else 0 | |
inputs["Type_MB"] = 1 if type_rest == "MB" else 0 | |
# Eksik olan kolonları ekle (eğitim setindeki sıralama ile uyumlu olmalı!) | |
feature_order = [f"P{i}" for i in range(1, 38)] + [ | |
"Years", "City Group_Other", "Type_FC", "Type_IL", "Type_MB" | |
] | |
input_df = pd.DataFrame([inputs])[feature_order] | |
# 🔍 Tahmin yap | |
if st.button("Tahmini Geliri Göster"): | |
prediction = model.predict(input_df)[0] | |
st.success(f"📊 Tahmini Gelir: ${prediction:,.2f}") | |