X - текстовый файл, содержащий 0 бит (1024 элемента), содержащий 100000
битовый вектор (т. Е. Каждая строка представляет собой вектор из 500 элементов). Я создаю матрицу смежности (100000 X 100000), используя приведенный ниже код, но не оптимизированный и очень трудоемкий. Как я могу улучшить это.Оптимизация вычисления матрицы смежности
import numpy as np
import scipy.spatial.distance
readFrom = "vector.txt"
fout = open("adjacencymatrix.txt","a")
X = np.genfromtxt(readFrom, dtype=None)
for outer in range(0,100000):
for inner in range(0,100000):
dis = scipy.spatial.distance.euclidean(X[outer],X[inner])
tmp += str(dis)+" "
tmp += "\n"
fout.write(tmp)
fout.close()
спасибо.
Матрица симметрична, поэтому вам действительно нужно вычислить только * половину * элементов. – nimrodm