How to interpolate a value between two values in an array?
조회 수: 23 (최근 30일)
이전 댓글 표시
Hi,i have an array named sumNy. the content of sumNy gives me Ny and the number of it's cells show me corresponding accelerations. now i have a specified Ny that is between two Ny s in my sumNy array, and i want to obtain it's corresponding acceleration.
i wrote this code but i dont know why it is not working
for i=1:150
if i==1
y=0;
elseif sumNy1(1,i-1)<=(1/475) & sumNy1(1,i)>=(1/475)
y=(((1/475)-sumNy1(1,i))/(sumNy1(1,i-1)-sumNy1(1,i)))*(i-1)+(1-(((1/475)- sumNy1(1,i))/(sumNy1(1,i-1)-sumNy1(1,i))))*(i);
end
end
please help me
Thanks
답변 (2개)
Wayne King
2012년 7월 26일
Have you tried interp1?
For example:
t = 0:10; x = sin(t);
tnew = 0:.25:10;
xnew = interp1(t,x,tnew);
plot(t,x,'o',tnew,xnew)
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!