R语言 矢量的点积
在数学中, 点积 或也被称为 标量 积是一个 代数运算 ,它将两个等长的数字序列取出 并返回一个单一的数字。 让 我们给定两个 向量 A 和 B, 我们必须找到两个向量的点积 。
既然如此 。
和。
其中
i: 沿x方向的单位向量
j: 沿y方向 的单位向量
k: 沿z方向 的单位向量
然后 ,点积的计算方法是 。
例子
给出两个矢量A和B为。
A = 3i + 5j + 4k。
和
B = 2i + 7j + 5k
点积 = 3 * 2 + 5 * 7 + 4 * 5 = 6 + 35 + 20 + 61
在R语言中计算点积
R语言提供了一种非常有效的方法来计算两个向量的点积。通过使用 几何 库中的 dot() 方法,可以做到这一点。
语法: dot(x, y, d = NULL)
参数
x: 向量的矩阵
y: 矢量的 矩阵
d: 计算点积的维度
返回: 长度为第d维的向量
例1 :
# R Program illustrating
# dot product of two vectors
# Import the required library
library(geometry)
# Taking two scalar values
a = 5
b = 7
# Calculating dot product using dot()
print(dot(a, b, d = TRUE))
输出
[1] 35
例2 :
# R Program illustrating
# dot product of two vectors
# Import the required library
library(geometry)
# Taking two complex values
a = 3 + 1i
b = 7 + 6i
# Calculating dot product using dot()
print(dot(a, b, d = TRUE))
输出
[1] 15+25i
例3 :
# R Program illustrating
# dot product of two vectors
# Import the required library
library(geometry)
# Taking two simple vectors
a = c(1, 4)
b = c(7, 4)
# Calculating dot product using dot()
print(dot(a, b, d = TRUE))
输出
[1] 23
例4 :
在下面这个例子中,让我们拿两个二维数组来计算这两个数组的点乘。要在R中创建一个二维数组,请参考R中的多维数组。
# R Program illustrating
# dot product of two vectors
# Import the required library
library(geometry)
# Taking two 2D array
vector1 = c(2, 1)
vector2 = c(0, 3)
a = array(c(vector1, vector2), dim = c(2, 2))
vector1 = c(4, 2)
vector2 = c(9, 3)
b = array(c(vector1, vector2), dim = c(2, 2))
# Calculating dot product using dot()
print(dot(a, b, d = TRUE))
输出
[1] 10 9