示例#1
0
 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())
示例#2
0
 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)