阵列数学:逻辑索引包含一个数组边界之外的真正价值。

16个视图(30天)
我有维向量,x和y。返回x的值对应于最大的y值,我可以使用:
x (y = = max (y))
太酷了!
现在我需要做几个维向量。我可以做一个循环。但是我怎么能使用一个数组?
同样,我可以使用这个函数返回多个振幅在数组,1为每个y向量。
振幅= abs (max (y) - min (y)) / 2;

答案(1)

KALYAN ACHARJYA
KALYAN ACHARJYA 2023年4月9日
编辑:KALYAN ACHARJYA 2023年4月9日
y值可以存储单元阵列,使用cellfun获取结果。这是一个例子-
#没有循环
x = (10 12 13 7 0 9);
y = {[50 11 9 19 10 49], [30 11 9 19 10 49], [10 11 9 79 49]};
dat = cellfun (@ (n) x (n = = max (n)), y)
dat = 1×3
10 9 7
#使用循环
n =长度(y);
dat = 0 (1, n);
i = 1: n
dat (i) = x (y{我}= = max (y{我}));
结束
dat
dat = 1×3
10 9 7
避免一个循环在所有情况下是最好的决定,相反,它可以与适当的预循环使用。按照你的要求使用。

类别

找到更多的在运营商和基本操作帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的