def test_negative_binomial_obj_sparse(): n = 10 random_state = np.random.RandomState(42) X = random_state.rand(n, 3) counts = random_state.randn(n, n) counts = np.triu(counts) counts[np.arange(len(counts)), np.arange(len(counts))] = 0 obj_dense = negative_binomial.negative_binomial_obj(X, counts) obj_sparse = negative_binomial.negative_binomial_obj( X, sparse.coo_matrix(counts)) assert_almost_equal(obj_dense, obj_sparse)
def test_negative_binomial_obj_sparse(): n = 10 random_state = np.random.RandomState(42) X = random_state.rand(n, 3) counts = random_state.randn(n, n) counts = np.triu(counts) counts[np.arange(len(counts)), np.arange(len(counts))] = 0 # obj_dense = negative_binomial.negative_binomial_obj(X, counts) obj_sparse = negative_binomial.negative_binomial_obj( X, sparse.coo_matrix(counts))
def test_negative_binomial_obj_sparse_biased(): random_state = np.random.RandomState(seed=42) n = 50 X = random_state.rand(n, 3) bias = 0.1 + random_state.rand(n) bias = bias.reshape(n, 1) counts = euclidean_distances(X)**(-3) counts[np.isinf(counts) | np.isnan(counts)] = 0 counts *= bias * bias.T counts_dense = np.triu(counts, 1) counts_sparse = sparse.coo_matrix(np.triu(counts, 1)) exp_dense = negative_binomial.negative_binomial_obj(X, counts_dense, -3, bias=bias) exp_sparse = negative_binomial.negative_binomial_obj(X, counts_sparse, -3, bias=bias) assert_almost_equal(exp_dense, exp_sparse)
def test_negative_binomial_obj_sparse_biased(): random_state = np.random.RandomState(seed=42) n = 50 X = random_state.rand(n, 3) bias = 0.1 + random_state.rand(n) bias = bias.reshape(n, 1) counts = euclidean_distances(X)**(-3) counts[np.isinf(counts) | np.isnan(counts)] = 0 counts *= bias * bias.T counts_dense = np.triu(counts) counts_sparse = sparse.coo_matrix(np.triu(counts)) #exp_dense = negative_binomial.negative_binomial_obj( # X, counts_dense, -3, bias=bias) exp_sparse = negative_binomial.negative_binomial_obj( X, counts_sparse, -3, bias=bias)