Spaces:
No application file
No application file
File size: 1,148 Bytes
12a5507 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
import json
import pickle
import numpy as np
__locations = None
__data_columns = None
__model = None
def get_estimated_price(location, sqft, bhk, bath):
try:
loc_index = __data_columns.index(location.lower())
except ValueError:
loc_index = -1
x = np.zeros(len(__data_columns))
x[0] = sqft
x[1] = bath
x[2] = bhk
if loc_index >= 0:
x[loc_index] = 1
return round(__model.predict([x])[0], 2)
def get_location_names():
return __locations
def load_saved_artifacts():
print("loading saved artifacts...start")
global __data_columns
global __locations
global __model
with open("./artifacts/columns.json", 'r') as f:
__data_columns = json.load(f)['data_columns']
__locations = __data_columns[2:]
with open("./artifacts/banglore_home_prices_model.pickle", 'rb') as f:
__model = pickle.load(f)
print("loading saved artifacts...done")
if __name__ == '__main__':
load_saved_artifacts()
print(get_location_names())
print(get_estimated_price('1st Phase JP Nagar', 1000, 3, 3))
|