如何在matlab中将向量的每一行与其下一行值分开

时间:2011-07-05 12:57:16

标签: matlab vector

假设我有向量a=[1;2;2]我想创建向量b=[1/2;1;2],将ith行的ith+1行的每个值与a=rand(3,1); for i=1:length(a) b(i)=a(i)/a(i+1) end 值相对应,最后一个值可以什么都不分,所以我喜欢它。我做了一个简单的代码,但我收到以下错误消息:“索引超出矩阵维度”,所以我需要你的帮助。示例代码

{{1}}

非常感谢你的帮助

1 个答案:

答案 0 :(得分:4)

您可以尝试:

b=a./[a(2:end);1];

不漂亮,但有效。

错误消息“索引超出矩阵维度”来自于当i = length(a)时尝试引用a(i + 1),因为此元素不存在。