MATLAB에서 어떤 행렬의 크기를 구하고자할 때 사용하는 함수가 size()함수와 length()함수이다.


>> A=[1 2 3 4; 5 6 7 8]
A =
1 2 3 4
5 6 7 8
>> s=size(A)
s =
2 4

출력 파라메터가 하나일 때는 size()함수는 행수와 열수를 요소로 하는 행벡터를 반환한다. 출력 파라메터가 두 개일 때는 다음과 같이 첫 번째 파라메터에는 행을 두 번째 파라메터는 열수를 담아서 반환한다.


>> [row col]=size(A)
row = 2
col = 4


만약 두 개의 입력 파라메터가 주어진다면 행수 혹은 열수를 반환한다. 다음 예제를 보면 이를 알 수 있다.


>> r=size(A,1) % 행수를 반환
r =
2
>> r=size(A,2) %열수를 반환
r =
4


크기를 구하고자 하는 것이 벡터라면 length()함수를 이용하면 된다.



>> B=pi:0.01:2*pi;
>> length(B)
315
>> size(B)
1 315


이 예에서 벡터 B는 315의 크기를 가지는 행벡터임을 알 수 있다.만약 length()함수의 입력 파라메터로 행렬이 들어간다면 행수와 열수 중에서 큰 값이 반환된다.


>> A
1 2 3 4
5 6 7 8
>> length(A)
4


즉, length(A)함수는 max(size(A))명령과 동일한 일을 수행하게 된다.



Posted by 살레시오

댓글을 달아 주세요

  1. ㅈㄷㄱㅈ 2015.09.27 22:56  댓글주소  수정/삭제  댓글쓰기

    여기서 벡터의 크기라는 것이 각각의 값을 제곱해서 더해준뒤 다시 제곱근을 씌워준게 아닌것같은데, 그러면 무엇인가요?

  2. 살레시오 2015.09.27 23:29 신고  댓글주소  수정/삭제  댓글쓰기

    행수와 열수를 구해주는 것입니다.

  3. ㅈㄷㄱㅈ 2015.09.28 14:54  댓글주소  수정/삭제  댓글쓰기

    감사합니다 ^^