def predict(observationVector, theta):
    """ Given a fitted theta and observation vector, we can make a regression prediction. 
    We assume observationVector and theta are lists. """
    
    observationVector.insert(0, 1) # add the intercept value
    return sum([observationVector[i] * theta[i] for i in range(len(theta))])