How to interpolate a value between two values in an array?
    조회 수: 9 (최근 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에서 Multidimensional Arrays에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!