반응형
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
반응형
'취미 > Matlab' 카테고리의 다른 글
MATLAB에서 (연습할 때 연습용) 임의의 행렬 만들기 (0) | 2020.05.02 |
---|