Как рассчитать скалярный продукт в 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

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.