Как найти сходство двух векторов - PullRequest
0 голосов
/ 23 января 2019

у меня 2 вектора

x = [18000,18000,1,8999.1913]
y = [18000,18000,1,9000.5]

Я рассчитал расстояние Манхэттена между этими двумя, используя расстояние Склеарна. Я получил значение

1.3086

Как выразить это в процентах?

Потому что, глядя на векторы, кажется, что они почти одинаковы. Таким образом, процентное значение должно приближаться к 100%. Как этого добиться .?

1 Ответ

0 голосов
/ 23 января 2019

Вы можете использовать этот подход,

Коэффициент корреляции Пирсона, вероятно, является наиболее широко используемой мерой для линейных отношений между двумя нормально распределенными переменными, как показано ниже,

image

where x and y are the two vectors and image are the meansof those vectors, value of r is always in between 0 and 1. Hence you may multipley 100 to get percentage value.

Here is the python implementation: https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.pearsonr.html

>>> from scipy import stats
>>> x = [18000,18000,1,8999.1913]
>>> y = [18000,18000,1,9000.5]
>>> stats.pearsonr(x,y)
(0.99999999720381061, 2.7961893911410134e-09)
>>> r = stats.pearsonr(y,x)
>>> percentage = r[0]*100
>>> percentage
99.999999720381055
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...