def test_missing_in_row_dict_raise_valueerror(self):
     database = Database("whoah")
     database.register()
     dtype = [
         (numpy_string('a'), np.uint32),
         (numpy_string('b'), np.uint32),
         (numpy_string('row'), np.uint32),
         (numpy_string('col'), np.uint32),
         (numpy_string('values'), np.float32),
     ]
     array = np.array([
         (1, 2, MAX_INT_32, MAX_INT_32, 99),
         (1, 4, MAX_INT_32, MAX_INT_32, 99),
     ],
                      dtype=dtype)
     row_dict = {1: 0}
     col_dict = {2: 0}
     np.save(database.filepath_processed(), array, allow_pickle=False)
     with self.assertRaises(ValueError):
         MatrixBuilder.build([database.filepath_processed()],
                             "values",
                             "a",
                             "row",
                             "b",
                             "col",
                             row_dict,
                             col_dict,
                             drop_missing=False)
Example #2
0
def test_database_process_adds_correct_geo(add_biosphere):
    database = Database("food")
    database.write(food)

    package = load_datapackage(ZipFS(database.filepath_processed()))
    data = package.get_resource("food_inventory_geomapping_matrix.indices")[0]

    assert geomapping["CA"] in data["col"].tolist()
    assert geomapping["CH"] in data["col"].tolist()
Example #3
0
def test_database_process_adds_default_geo(add_biosphere):
    database = Database("food")
    new_food = copy.deepcopy(food)
    for v in new_food.values():
        del v["location"]
    database.write(new_food)

    package = load_datapackage(ZipFS(database.filepath_processed()))
    data = package.get_resource("food_inventory_geomapping_matrix.indices")[0]

    assert np.allclose(data["col"], geomapping[config.global_location])
 def test_build_one_d_drop_missing(self):
     database = Database("ghost")
     database.register()
     dtype = [
         (numpy_string('a'), np.uint32),
         (numpy_string('row'), np.uint32),
         (numpy_string('values'), np.float32),
     ]
     array = np.array([
         (1, MAX_INT_32, 99),
         (2, MAX_INT_32, 99),
         (3, MAX_INT_32, 99),
     ],
                      dtype=dtype)
     row_dict = {1: 0, 2: 1}
     np.save(database.filepath_processed(), array, allow_pickle=False)
     values = MatrixBuilder.build([database.filepath_processed()],
                                  "values",
                                  "a",
                                  "row",
                                  row_dict=row_dict,
                                  one_d=True)[0]
     self.assertEqual(values.shape, (2, ))
 def test_build_one_d(self):
     database = Database("sour")
     database.register()
     dtype = [
         (numpy_string('a'), np.uint32),
         (numpy_string('row'), np.uint32),
         (numpy_string('values'), np.float32),
     ]
     array = np.array([
         (1, MAX_INT_32, 99),
         (2, MAX_INT_32, 100),
     ],
                      dtype=dtype)
     row_dict = {1: 0, 2: 1}
     np.save(database.filepath_processed(), array, allow_pickle=False)
     matrix = MatrixBuilder.build([database.filepath_processed()],
                                  "values",
                                  "a",
                                  "row",
                                  row_dict=row_dict,
                                  one_d=True)[3]
     self.assertTrue(
         np.allclose(matrix.toarray(), np.array(((99, 0), (0, 100)))))
 def test_build_drop_missing(self):
     database = Database("boo")
     database.register()
     dtype = [
         (numpy_string('a'), np.uint32),
         (numpy_string('b'), np.uint32),
         (numpy_string('row'), np.uint32),
         (numpy_string('col'), np.uint32),
         (numpy_string('values'), np.float32),
     ]
     array = np.array([
         (1, 2, MAX_INT_32, MAX_INT_32, 99),
         (3, 4, MAX_INT_32, MAX_INT_32, 99),
         (3, 2, MAX_INT_32, MAX_INT_32, 99),
         (5, 6, MAX_INT_32, MAX_INT_32, 99),
     ],
                      dtype=dtype)
     row_dict = {1: 0, 3: 1}
     col_dict = {2: 0, 6: 1}
     np.save(database.filepath_processed(), array, allow_pickle=False)
     values = MatrixBuilder.build([database.filepath_processed()], "values",
                                  "a", "row", "b", "col", row_dict,
                                  col_dict)[0]
     self.assertEqual(values.shape, (2, ))