def test_can_create_ungridded_coordinates(self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) standard_coords = ug.coords().find_standard_coords() assert(standard_coords == [x, y, None, None, None])
def test_GIVEN_missing_coord_values_WHEN_coords_THEN_missing_values_removed(self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) y = np.ma.masked_array(y, np.zeros(y.shape, dtype=bool)) y.mask[1, 2] = True x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) coords = ug.coords() for coord in coords: assert_that(len(coord.data), is_(14))
def test_GIVEN_missing_coord_values_WHEN_coords_THEN_missing_values_removed( self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) y = np.ma.masked_array(y, np.zeros(y.shape, dtype=bool)) y.mask[1, 2] = True x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) coords = ug.coords() for coord in coords: assert_that(len(coord.data), is_(14))
class TestUngriddedCoordinates(TestCase): def setUp(self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) self.x = Coord(x, Metadata(standard_name='latitude', units='degrees')) self.y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([self.x, self.y]) self.ug = UngriddedCoordinates(coords) def test_can_create_ungridded_coordinates(self): standard_coords = self.ug.coords().find_standard_coords() assert(standard_coords == [self.x, self.y, None, None, None]) def test_get_coordinates_points_returns_points(self): points = self.ug.get_coordinates_points() num_points = len([p for p in points]) assert(num_points == 15) def test_GIVEN_missing_coord_values_WHEN_coords_THEN_missing_values_removed(self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) y = np.ma.masked_array(y, np.zeros(y.shape, dtype=bool)) y.mask[1, 2] = True x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) coords = ug.coords() for coord in coords: assert_that(len(coord.data), is_(14)) def test_GIVEN_missing_coord_values_WHEN_coords_flattened_THEN_missing_values_removed(self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) y = np.ma.masked_array(y, np.zeros(y.shape, dtype=bool)) y.mask[1, 2] = True x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) coords = ug.coords_flattened for coord in coords: if coord is not None: assert_that(len(coord), is_(14)) @skip_pandas def test_GIVEN_ungridded_coords_WHEN_call_as_data_frame_THEN_returns_valid_data_frame(self): df = self.ug.as_data_frame() assert_that(df['latitude'][13] == 10) assert_that(df['longitude'][0] == -5) @skip_pandas def test_GIVEN_ungridded_coords_with_time_WHEN_call_as_data_frame_THEN_returns_valid_data_frame(self): from datetime import datetime ug = make_regular_2d_with_time_ungridded_data() ug_coords = UngriddedCoordinates(ug._coords) df = ug_coords.as_data_frame() assert_that(df['latitude'][13] == 10) assert_that(df['longitude'][0] == -5) assert_that(df['longitude'][datetime(1984,8,28)] == 0)
class TestUngriddedCoordinates(TestCase): def setUp(self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) self.x = Coord(x, Metadata(standard_name='latitude', units='degrees')) self.y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([self.x, self.y]) self.ug = UngriddedCoordinates(coords) def test_can_create_ungridded_coordinates(self): standard_coords = self.ug.coords().find_standard_coords() assert (standard_coords == [self.x, self.y, None, None, None]) def test_get_coordinates_points_returns_points(self): points = self.ug.get_coordinates_points() num_points = len([p for p in points]) assert (num_points == 15) def test_GIVEN_missing_coord_values_WHEN_coords_THEN_missing_values_removed( self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) y = np.ma.masked_array(y, np.zeros(y.shape, dtype=bool)) y.mask[1, 2] = True x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) coords = ug.coords() for coord in coords: assert_that(len(coord.data), is_(14)) def test_GIVEN_missing_coord_values_WHEN_coords_flattened_THEN_missing_values_removed( self): x_points = np.arange(-10, 11, 5) y_points = np.arange(-5, 6, 5) y, x = np.meshgrid(y_points, x_points) y = np.ma.masked_array(y, np.zeros(y.shape, dtype=bool)) y.mask[1, 2] = True x = Coord(x, Metadata(standard_name='latitude', units='degrees')) y = Coord(y, Metadata(standard_name='longitude', units='degrees')) coords = CoordList([x, y]) ug = UngriddedCoordinates(coords) coords = ug.coords_flattened for coord in coords: if coord is not None: assert_that(len(coord), is_(14)) @skip_pandas def test_GIVEN_ungridded_coords_WHEN_call_as_data_frame_THEN_returns_valid_data_frame( self): df = self.ug.as_data_frame() assert_that(df['latitude'][13] == 10) assert_that(df['longitude'][0] == -5) @skip_pandas def test_GIVEN_ungridded_coords_with_time_WHEN_call_as_data_frame_THEN_returns_valid_data_frame( self): from datetime import datetime ug = make_regular_2d_with_time_ungridded_data() ug_coords = UngriddedCoordinates(ug._coords) df = ug_coords.as_data_frame() assert_that(df['latitude'][13] == 10) assert_that(df['longitude'][0] == -5) assert_that(df['longitude'][datetime(1984, 8, 28)] == 0)