def test_random_noisy_interactions(self): intrs = random_noisy_interactions( self.params['n_noisy_interactions'], self.params['min_time'], self.params['max_time'], self.params['n_total_participants'], self.params['n_topics'], self.params['topic_noise'], ) assert_equal(self.params['n_noisy_interactions'], len(intrs)) topic_mean = np.mean([i['topics'] for i in intrs], axis=0) self.seems_like_uniform_distribution(topic_mean) np.testing.assert_almost_equal( 305, np.mean([i['timestamp'] for i in intrs]), decimal=-3 ) freq = Counter(itertools.chain( *[[i['sender_id']] + i['recipient_ids'] for i in intrs] )) freq = np.array(freq.values(), dtype=np.float64) self.seems_like_uniform_distribution(freq / freq.sum())
def test_random_noisy_interactions_with_taboo(self): intrs = random_noisy_interactions( self.params['n_noisy_interactions'], self.params['min_time'], self.params['max_time'], self.params['n_total_participants'], self.params['n_topics'], self.params['topic_noise'], taboo_topics=range(9) ) topics = set([i['topics'].argmax() for i in intrs]) assert_equal(set(range(10)), topics)