subtract each element from the one before in a row matrix
조회 수: 22 (최근 30일)
이전 댓글 표시
Hi all,
I have a row matrix defined as:
s = linspace(0,4,17);
I want to create a vector that its elements are the half subtraction of two subsequent elements of vector s. My attempt to do that is the follwoing:
for i = 1:length(s)-1
for j = 2:length(s)
Mid_s = (s(j)-s(i))/2;
end
end
However, the result I'm having is just one number. How can I have all numbers resulted from the "for" loop as an array/vector?
Thanks.
댓글 수: 0
답변 (1개)
Cris LaPierre
2021년 7월 31일
편집: Cris LaPierre
2021년 7월 31일
You are overwritting your variable Mid_s everytime, so you just end up with the very last number. Ch 13 of MATLAB Onramp will introduce you to writing for loops.
As a suggestion for improvement, you can accomplish this with a single for loop. Even better, you should look into the diff command.
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!