def test_haversine_transformer_suffix(): est = HaversineFeatures(cols=[('from_lat', 'from_lon'), ('to_lat', 'to_lon')], name_suffix="DIST") # Assert the columns trans = est.fit_transform(X) assert trans.columns.tolist() == \ ['id', '(from_lat,from_lon)_(to_lat,to_lon)_DIST']
def test_haversine_transformer_km(): est = HaversineFeatures(cols=[('from_lat', 'from_lon'), ('to_lat', 'to_lon')], units='km') # Assert the columns trans = est.fit(X).transform(X) # make sure the fit and transform work assert trans.columns.tolist() == \ ['id', '(from_lat,from_lon)_(to_lat,to_lon)_km'] dist = trans['(from_lat,from_lon)_(to_lat,to_lon)_km'] assert_almost_equal(dist, expected_km, decimal=5)
def test_haversine_transformer_mi(): est = HaversineFeatures(cols=[('from_lat', 'from_lon'), ('to_lat', 'to_lon')], units='mi') # Assert the columns trans = est.fit_transform(X) assert trans.columns.tolist() == \ ['id', '(from_lat,from_lon)_(to_lat,to_lon)_mi'] dist = trans['(from_lat,from_lon)_(to_lat,to_lon)_mi'] assert_almost_equal(dist, expected_mi, decimal=5)
def test_haversine_bad_cols(): est = HaversineFeatures(cols=None) assert_raises(TypeError, est.fit, X)
def test_haversine_persistable(): assert_persistable( HaversineFeatures(cols=[('from_lat', 'from_lon'), ('to_lat', 'to_lon')]), "location.pkl", X)
def test_haversine_asdf(): assert_transformer_asdf( HaversineFeatures(cols=[('from_lat', 'from_lon'), ('to_lat', 'to_lon')]), X)