У меня есть два вектора, каждый для for [(x1, y1), (x2, y2), ...]. «x_vals» и «y_vals» содержат координаты x и y соответственно. Мне нужно найти произведение векторных точек этих двух векторов, чтобы найти меру проекции одного на другой. Моя цель - просто проверить, насколько близки эти два вектора, получив меру косинуса от 0 до 1. Вот мой код:
for idx,(x,y) in enumerate(zip(x_vals,y_vals)):
n = 19 # desired length for the chunked vector
if idx + n > len(x_vals):
n = len(x_vals) - idx
x_set = x_vals[idx:idx+n]# first list
x_set_= x_vals[idx+n+1:]# rest
y_set = y_vals[idx:idx+n]
y_set_= y_vals[idx+n+1:]# rest
pt =(x_set,y_set)
for ii in range(len(x_set_)):
x_set_new=x_set_[ii:ii+n]
y_set_new=y_set_[ii:ii+n]
# stX = np.multiply(x_set_,x_set_new)
# stY = np.multiply(y_set_,y_set_new)
pt_new =(x_set_new,y_set_new)
cosvalue = np.dot(pt,pt_new,axis=0)
Кроме того, как я могу узнать, что многие точки в двух векторах находятся ближе к порогу?
Любая помощь приветствуется. Заранее спасибо.