点积和索引
6视图(30天)
显示旧的评论
我回顾这段代码,我不理解它这段代码是什么意思,点操作是如何工作的。
你能解释一些例子吗?
NCol = [
1 3 1 2 3 4 5 2 3 1 2 5]
NRow = [
1 1 2 2 2 3 3 4 4 5 5 5]
c = (NCol (1: k - 1) = = NRow (k)。* (NRow (1: k - 1) = = NCol (k))
0评论
答案(2)
Sulaymon Eshkabilov
2021年10月21日
说明如下:
%步骤1。比较每个个体价值(元素)的NCol行向量(行矩阵)
%的k(最后一个)元素NRow(例如5)是否他们是平等的。
%如果平等,结果将是1(真正的);否则,0(假)
(NCol (1: k - 1) = = NRow (k))
%步骤2。类似于步骤1,每个个体(元素)的价值
% NRow行向量(矩阵的行)的k(最后一个)元素NCol(行向量)
%是否他们是平等的。
%如果平等,结果将是1(真正的);否则,0(假)
(NRow (1: k - 1) = = NCol (k))
%步骤3。Elementwise计算比较的步骤1和步骤2
同时%。
(NCol (1: k - 1) = = NRow (k)。* (NRow (1: k - 1) = = NCol (k))
%最后,计算结果从两个逻辑向量从步骤1和2
沃尔特·罗伯森
2021年10月21日
1:k - 1只能正常工作如果k是一个标量。
NRow (1: k - 1) = = NCol (k)
这部分测试是否在NRow每个值
之前
指数k,等于NCol条目在指数k。结果是一个逻辑向量长度的k - 1。例如如果k 4,然后NCol(4)是2,和你会测试NRow(1:3) = = 2这将给你的逻辑向量(假的,假的,真的)
(NCol (1: k - 1) = = NRow (k))
这部分测试是否在NCol每个值
之前
指数k,等于NRow条目在指数k。结果是一个逻辑向量长度的k - 1。例如如果k 4,然后NRow(4)是2,和你会测试NCol(1:3) = = 2这将给你的逻辑向量(假的,假的,假)
所以你有两个逻辑向量长度的k - 1和。*乘以相应的条目。乘法相应的逻辑值是一样的”和“条目。
可以写成的代码
c = (NCol (1: k - 1) = = NRow (k) & (NRow (1: k - 1) = = NCol (k))
唯一的区别是是否
c
最终将成为一个双精度向量(原始代码)或一个逻辑向量(建议代码)