У меня есть матрица, которая содержит информацию о местоположении по координатам (например, (1,1)) матрицы 38 * 35.
##(1,1) (1,2) (1,3) (1,4) .... (1,38)
##(2,1) ....
##....
##(35,38)
Я создал каждую точку в векторном массиве, так что (1,1) = 1, (1,2) = 2, ... (2,1) = 39, (2, 2) = 40, .... (35, 38) = 1330 и т. Д.
#1
#2
#3
#4
#5
#6
#7
#8
...
#1330
План состоит в том, чтобы ввести точку прогнозных данных P и определить евклидово расстояние между P и фактическими данными X. Нет проблем, пока обе точки не находятся в одной строке (расстояние будет равновычитание двух чисел), но если сравниваемые данные попадают в разные строки, это становится проблемой.
Например, «на самом деле означало бы (2,2), и я больше не могу вычитать.
Я пытался создать if
операторы, но это кажется сложным.
#original data: x, predicted data:p
if(p<39){
distance <- abs(p-x)
} else if(x<77){
distance <- (sqrt(1)^2+((p-38)^2)
}