Spaces:
Build error
Build error
| import pandas as pd | |
| import streamlit as st | |
| import pickle | |
| try: | |
| with open("final_model_3.pkl", "rb") as f: | |
| model = pickle.load(f) | |
| st.success("β Model loaded successfully!") | |
| except FileNotFoundError: | |
| st.error("β Model file not found! Please upload `final_model.pkl`.") | |
| model = None | |
| st.markdown("<h1 class='title'>π‘ House Price Predictor</h1>", unsafe_allow_html=True) | |
| with st.expander("πΉ **Property Details**", expanded=True): | |
| POSTED_BY = st.selectbox("POSTED_BY", ["Owner", "Dealer", "Builder"]) | |
| UNDER_CONSTRUCTION = st.selectbox("UNDER_CONSTRUCTION", [1, 0]) | |
| RERA = st.selectbox("RERA", [1, 0]) | |
| BHK_NO_ = st.selectbox("BHK_NO.", [1.0, 2.0, 3.0, 4.0, 4.5]) | |
| BHK_OR_RK = st.selectbox("BHK_OR_RK", ["BHK", "RK"]) | |
| SQUARE_FT = st.number_input("SQUARE_FT", min_value=100, max_value=5000, value=1200) | |
| READY_TO_MOVE = st.selectbox("READY_TO_MOVE", [1, 0]) | |
| RESALE = st.selectbox("RESALE", [1, 0]) | |
| LONGITUDE = st.number_input("LONGITUDE", min_value=-37.713008, max_value=39.573320499999994, value=20.750000) | |
| LATITUDE = st.number_input("LATITUDE", min_value=-121.761248, max_value=152.962676, value=77.324137) | |
| if st.button("π Predict Price"): | |
| input_data = pd.DataFrame([[POSTED_BY, UNDER_CONSTRUCTION, RERA, BHK_NO_, BHK_OR_RK, SQUARE_FT, | |
| READY_TO_MOVE, RESALE, LONGITUDE, LATITUDE]], | |
| columns=["POSTED_BY", "UNDER_CONSTRUCTION", "RERA", "BHK_NO.", "BHK_OR_RK", "SQUARE_FT", | |
| "READY_TO_MOVE", "RESALE", "LONGITUDE", "LATITUDE"]) | |
| try: | |
| predicted_price = model.predict(input_data)[0] | |
| st.markdown(f"<div class='result-box'>π Predicted Price: βΉ {predicted_price:.2f} Lakhs</div>", unsafe_allow_html=True) | |
| except ValueError as e: | |
| st.error(f"β Error during prediction: {e}") | |