Spaces:
Build error
Build error
import streamlit as st | |
import numpy as np | |
import pickle | |
import math | |
def haversine(pickup_longitude, pickup_latitude, dropoff_longitude, dropoff_latitude): | |
R = 6371.0 | |
phi1 = math.radians(pickup_latitude) | |
phi2 = math.radians(dropoff_latitude) | |
delta_phi = math.radians(dropoff_latitude - pickup_latitude) | |
delta_lambda = math.radians(dropoff_longitude - pickup_longitude) | |
a = math.sin(delta_phi / 2.0)**2 + math.cos(phi1) * math.cos(phi2) * math.sin(delta_lambda / 2.0)**2 | |
c = 2 * math.atan2(math.sqrt(a), math.sqrt(1 - a)) | |
distance = R * c | |
return distance | |
p_lo=st.number_input("Pickup Longitude") | |
p_la=st.number_input("Pickup Latitude") | |
d_lo=st.number_input("Dropoff Longitude") | |
d_la=st.number_input("Dropoff Latitude") | |
passenger_count=st.number_input("Passenger Count") | |
distance=haversine(p_lo,p_la,d_lo,d_la) | |
file_path = 'newyorkcity_model.pkl' | |
with open(file_path, 'rb') as file: | |
model = pickle.load(file) | |
data=[distance,passenger_count] | |
if st.button("Predict"): | |
data=np.array(data) | |
if len(data.shape) == 1: | |
data = np.expand_dims(data, axis=0) | |
prediction=model.predict(data) | |
st.write(prediction) |