Как эффективно создать набор данных с функциональными зависимостями - PullRequest
0 голосов
/ 15 января 2019

Мне нужно решить простую проблему, но я нигде не могу найти правильного решения. По сути, мне нужен набор данных (около 100 миллионов строк) с функциональными зависимостями. Я написал для этого скрипт на python, используя numpy:

#this for n attributes (about 5-8)
num_rows = 100000000
attr1 = np.random.randint(0,97000000,num_rows)
dict_values = {}
attr2 = []

for i in range(num_rows):

    l = np.random.randint(0,97000000,1)[0]

    if (attr1[i] in list(dict_values.keys())):
        l = dict_values[attr1[i]]
    else:
        dict_values[attr1[i]] = l

    attr2.append(l)

attr2 = np.array(attr2)

Я генерирую массив с n строками, затем я создаю другой массив с сохранением значений первого атрибута в dict, чтобы всегда указывать значение y для второго атрибута, когда я вижу значение x для первого атрибута. Теперь проблема в том, что это очень неэффективный способ сделать это, но я не нашел другого. У кого-нибудь есть лучшее решение?

Заранее спасибо

...