MATLAB FOR문 문자열 사용하여 저장 EVAL
Matlab에서 for 문 사용하면서 반복문의 index를 문자열로 사용하여 저장하고 싶을 때, eval을 사용 예시) 임의의 행렬 a라는 10x4 열 값을 반복문 for를 사용해 h1 h2 h3 h4 에 각각 저장 해야 할 때, for i=1:열크기 hi=a(:,i) end 이렇게 간단히 하면 좋겠지만 당연히 안된다... 이럴 땐 eval 함수를 사용한다. clc;clear all; a=randi(10,10,4); % 임시 10x4행렬 b=size(a,2); %h1,2,3.. 에 a의 열 for 문 i 순서대로 대입 for i=1:b eval(['h_',num2str(i),'=a(:,',num2str(i),')']); end
2020. 5. 2.