Как посчитать скалярное произведение в r: с примерами
Учитывая вектор a = [a 1 , a 2 , a 3 ] и вектор b = [b 1 , b 2 , b 3 ], скалярное произведение вектора a и вектора b, обозначаемое ab , определяется выражением:
ab = а 1 * b 1 + а 2 * b 2 + а 3 * b 3
Например, если a = [2, 5, 6] и b = [4, 3, 2], то скалярное произведение a и b будет равно:
аб = 2*4 + 5*3 + 6*2
аб = 8 + 15 + 12
аб = 35
По сути, скалярное произведение представляет собой сумму произведений соответствующих записей в двух векторах.
Как вычислить скалярное произведение в R
Есть два способа быстро вычислить скалярное произведение двух векторов в R:
Способ 1: используйте %*%
Следующий код показывает, как использовать функцию %*% для вычисления скалярного произведения между двумя векторами в R:
#definevectors a <- c(2, 5, 6) b <- c(4, 3, 2) #calculate dot product between vectors a %*% b [,1] [1,] 35
Скалярное произведение оказывается 35 .
Обратите внимание, что эта функция также работает для столбцов фрейма данных:
#define data df <- data.frame(a=c(2, 5, 6), b=c(4, 3, 2)) #calculate dot product between columns 'a' and 'b' of data frame df$a %*% df$b [,1] [1,] 35
Способ 2: используйте функцию dot().
Мы также можем вычислить скалярное произведение между двумя векторами, используя функцию dot() из библиотеки pracma :
library (pracma) #definevectors a <- c(2, 5, 6) b <- c(4, 3, 2) #calculate dot product between vectors dot(a,b) [1] 35
Опять же, скалярное произведение между двумя векторами оказывается равным 35 .
Связанный: Как рассчитать перекрестное произведение в R
Дополнительные ресурсы
В следующих руководствах объясняется, как вычислить скалярное произведение с помощью другого статистического программного обеспечения:
Как посчитать скалярное произведение в Excel
Как вычислить скалярное произведение в Google Таблицах
Как вычислить скалярное произведение на калькуляторе TI-84