Как рассчитать скалярный продукт в R (с примерами)


Для данного вектора a = [a 1 , a 2 , a 3 ] и вектора b = [b 1 , b 2 , b 3 ] скалярное произведение вектора a и вектора b, обозначаемое как a · b , определяется как:

а · b = а 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:

#define vectors
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)

#define vectors
a <- c(2, 5, 6)
b <- c(4, 3, 2)

#calculate dot product between vectors
dot(a, b)

[1] 35

И снова скалярное произведение между двумя векторами оказывается равным 35 .

Связанный: Как рассчитать перекрестный продукт в R

Дополнительные ресурсы

В следующих руководствах объясняется, как рассчитать скалярный продукт с помощью другого статистического программного обеспечения:

Как рассчитать скалярный продукт в Excel
Как рассчитать скалярный продукт в Google Sheets
Как рассчитать скалярный продукт на калькуляторе TI-84