Пример #1
0
    def setUp(self):
        OPTIONS = ['yes', 'no', 'undefined']

        for i in range(4):
            c = Client()
            c.post('/register/', {'user': '******' % i, 'password': '******' % i, 'password-repeat': 'user%s' % i})
        for i in range(5):
            d = Dataset()
            d.save()
        combinations = itertools.combinations(Dataset.objects.all(), 2)
        for source_dataset, target_dataset in combinations:
            for i in range(3):
                similarity = Similarity(source_dataset=source_dataset, target_dataset=target_dataset, similarity=None)
                similarity.save()
        for user in User.objects.all():
            c = Client()
            c.post('/login/', {'user': user.username, 'password': user.username})
            end = False
            while not end:
                request = c.get('/survey')
                source_dataset = request.context['source_dataset']
                if source_dataset == None:
                    break
                target_dataset = request.context['target_dataset']
                sim_id = request.context['sim_id']
                try:
                    user_rating = user.userprofile.rated_datasets.get(source_dataset=source_dataset, target_dataset=target_dataset)
                except:
                    user_rating = None
                similarity_value = OPTIONS[randint(0,2)]
                c.post('/survey', {'source_dataset_id': source_dataset.id, 'target_dataset_id': target_dataset.id, 'similarity': similarity_value, 'sim_id': sim_id})
Пример #2
0
 def set_up(self):
     keys = r.keys('ld_survey:similarity:*')
     for key in keys:
         r.delete(key)
     for i in range(6):
         d = Dataset()
         d.save()
     combinations = itertools.combinations(Dataset.objects.all(), 2)
     print 'Creating similarities...'
     for source_dataset, target_dataset in combinations:
         similarity = Similarity(source_dataset=source_dataset, target_dataset=target_dataset, similarity=None)
         similarity.save()
Пример #3
0
 def setUp(self):
     keys = r.keys('ld_survey:similarity:*')
     for key in keys:
         r.delete(key)
     for i in range(4):
         c = Client()
         c.post('/register/', {'user': '******' % i, 'password': '******' % i, 'password-repeat': 'user%s' % i})
     for i in range(5):
         d = Dataset()
         d.save()
     combinations = itertools.combinations(Dataset.objects.all(), 2)
     for source_dataset, target_dataset in combinations:
         for i in range(3):
             similarity = Similarity(source_dataset=source_dataset, target_dataset=target_dataset, similarity=None)
             similarity.save()
Пример #4
0
def import_fp(fp_file_name):

    dataset_dict = {}
    i = 0
    with open('survey_datasets.csv') as survey_datasets:
        for line in survey_datasets:
            if i > 0:
                sline = line.split(',')
                dataset_dict[sline[4]] = sline
            i += 1

    #Load datasets

    with open(fp_file_name) as fp_file:
        for line in fp_file:
            sline = line.split(';')
            source_dataset_name = sline[0].replace('.g', '').replace('\n', '')
            target_dataset_name = sline[1].replace('.g', '').replace('\n', '')
            try:
                source_dataset = Dataset.objects.get(nick=source_dataset_name)
            except:
                source_dataset = create_dataset(dataset_dict[source_dataset_name])
            try:
                target_dataset = Dataset.objects.get(nick=target_dataset_name)
            except:
                target_dataset = create_dataset(dataset_dict[target_dataset_name])
            similarity_source = Similarity.objects.filter(source_dataset=source_dataset, target_dataset=target_dataset)
            similarity_target = Similarity.objects.filter(source_dataset=target_dataset, target_dataset=source_dataset)
            for i in range(3 - len(similarity_source) - len(similarity_target)):
            	print 'Creating similarity for %s - %s' % (source_dataset.nick, target_dataset.nick)
                similarity = Similarity()
                similarity.source_dataset = source_dataset
                similarity.target_dataset = target_dataset
                similarity.similarity = None
                similarity.save()
            try:
                dataset = Dataset.objects.get(datahub_url=sline[1])
                dataset.nick = sline[4]
                dataset.save()
            except Exception as e:
                print e
                print sline[1]

with open('relations.csv') as f:
    for line in f:
        sline = line.split(';')
        source_dataset = Dataset.objects.get(nick=sline[0])
        target_dataset = Dataset.objects.get(nick=sline[1])
        similarity_source = Similarity.objects.filter(source_dataset=source_dataset, target_dataset=target_dataset)
        similarity_target = Similarity.objects.filter(source_dataset=target_dataset, target_dataset=source_dataset)
        if len(similarity_target) <= 0:
            for i in range(3 - len(similarity_source)):
                print 'Creating similarity for %s - %s' % (source_dataset.nick, target_dataset.nick)
                similarity = Similarity()
                similarity.source_dataset = source_dataset
                similarity.target_dataset = target_dataset
                similarity.similarity = None
                similarity.save()
        else:
            for i in range(3 - len(similarity_target)):
                print 'Creating similarity for %s - %s' % (target_dataset.nick, source_dataset.nick)
                similarity = Similarity()
                similarity.source_dataset = source_dataset
                similarity.target_dataset = target_dataset
                similarity.similarity = None
                similarity.save()