For given vector, make a "averaged vector"

조회 수: 2 (최근 30일)
JaeSung Choi
JaeSung Choi 2017년 12월 17일
편집: Jan 2017년 12월 17일
For a given 1 by 1000 vector A = (a1 a2 a3 a4 so on,,a1000) and interger n
I want to make vector
B = (b1 b2 b3 so on,,b(1000-n+1))
with b1 = a1 + a2 + a3 ...+a(n), b2 = a2 + a3 + ....+a(n+1), b(1000-n+1) = a(1000-n+1)+a(1000-n+2)+...a(1000)
Please help me. How can i make such vector B??

채택된 답변

Jan
Jan 2017년 12월 17일
편집: Jan 2017년 12월 17일
b = movsum(a, [0, n], 'Endpoints', 'discard')

추가 답변 (1개)

Walter Roberson
Walter Roberson 2017년 12월 17일
temp = [0, cumsum(A)];
B = temp(n+1:end) - temp(1:end-n);

카테고리

Help CenterFile Exchange에서 Just for fun에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!