#python #numpy #scipy
Вопрос:
Я хочу применить функцию расстояния SciPy к двум векторам (ряд SciPy):
from scipy.spatial import distance
distance.jensenshannon(a, b)
где a
находится серия
q 0
w 1
и b
является ли серия
q 1
t 1
.
Я хочу указать значение заполнения 0, чтобы оно a
стало
q 0
w 1
t 0
и b
становится
q 1
w 0
t 1
перед применением функции расстояния.
Некоторые функции в SciPy или NumPy fill_value
предназначены для этой цели. Например, я могу вычислить евклидово расстояние с np.sqrt((a.subtract(b, fill_value=0)**2).sum())
помощью . Но функции пространственного расстояния SciPy не имеют этой опции.
Каков рекомендуемый способ добиться желаемого поведения?
Комментарии:
1. Похоже, что scipy даже не выравнивает значения векторов в соответствии с индексом, чего я и ожидал.