Генерация двоичной матрицы с миллионами строк - PullRequest
0 голосов
/ 26 февраля 2019

Я пытаюсь сгенерировать двоичную матрицу, используя dok_matrix из scipy.sparse и вложенный цикл for, но сложность по времени слишком велика (более 23,6 миллионов строк и 34565 столбцов).

Строки, статьи ['article_id] и статьи [' title '] в приведенном ниже коде содержат строки.Если строки в двух последующих переменных содержат заданную строку в строках, я хочу добавить 1 к двоичной матрице, в противном случае -1. ​​

Должен быть более быстрый способ сделать это?

import numpy as np
from scipy.sparse import dok_matrix
data = dok_matrix((len(rows),articles['article_id'].size), dtype=np.int8)

for i in range(len(rows)):
    for j in range(articles['article_id'].size):
        if (rows[i] in articles['Content'][j]) or (rows[i] in articles['Title'][j]):
            data[i,j] = 1
        else:
            data[i,j] = -1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...