mahesh1209's picture
Create app.py
88c6363 verified
import gradio as gr
import pandas as pd
from sklearn.linear_model import LinearRegression
# Sample data
data = pd.DataFrame({
"sqft": [1500, 1800, 2400, 3000, 3500],
"bedrooms": [3, 4, 3, 5, 4],
"bathrooms": [2, 2, 3, 4, 3],
"price": [300000, 350000, 400000, 500000, 450000]
})
# Train model
X = data[["sqft", "bedrooms", "bathrooms"]]
y = data["price"]
model = LinearRegression().fit(X, y)
# Prediction function
def predict_price(sqft, bedrooms, bathrooms):
try:
input_df = pd.DataFrame([[sqft, bedrooms, bathrooms]], columns=X.columns)
pred = model.predict(input_df)[0]
return f"🏠 Estimated Price: ${pred:,.0f}"
except Exception as e:
return f"⚠️ Error: {e}"
# Gradio UI
demo = gr.Interface(
fn=predict_price,
inputs=[
gr.Slider(500, 5000, value=2000, label="Square Footage"),
gr.Slider(1, 6, value=3, label="Bedrooms"),
gr.Slider(1, 5, value=2, label="Bathrooms")
],
outputs=gr.Textbox(label="Prediction"),
title="🏡 House Price Predictor"
)
demo.launch()