2013-02-05 2 views
0

나는 예를 들어 크기 5 × 3의 매트릭스 F 있습니다MATLAB에서 벡터와 셀을 어떻게 연결할 수 있습니까?

F= [1 12 13; 
    2 23 24; 
    3 34 35; 
    4 45 46; 
    5 56 57] 

나는 즉

>> label 

    label = 

     'v' 

와 F의 크기가 주어진 항목 'V'와 크기 1X1의 레이블 셀을 가지고 기준 :

012,376,775,141,683,479,251 :

>> [m n]=size(F) 

    m= 

     5 

    n = 

     3 

내 출력을 같이 할3210

이 출력을 얻으려면 매트릭스와 셀을 어떻게 연결할 수 있습니까?

+0

레이블은 실제로 셀이나 문자입니까? –

+0

@DennisJaheruddin : 표시된 출력에서 ​​아주 명확하게 셀입니다. 그것이'char'이라면,'v' 주위에 아포스트로피가 없을 것입니다. – Jonas

답변

4

숫자와 숫자가 아닌 데이터를 모두 포함하는 배열을 만들려면, 당신은 (는 셀 배열이 아닌 경우 {label}으로 label 교체) 셀 배열에 모든 것을 넣어해야합니다

Fcell = [ num2cell(F), repmat(label,size(F,1),1)] 

그런 다음 중괄호를 사용하여 개별 숫자/문자에 액세스 할 수 있습니다 @Jonas 세포로 변환, 같이

Fcell{2,2} 

ans = 
    23 
+1

@DennisJaheruddin :'label'이 셀이 아니면'{label} '이 그것을 수정합니다. 그러나 OP 상태와 'disp'출력은 실제로 셀 배열임을 확인합니다. – Jonas

+0

@Dennis : 필요하지 않다고 생각하여 편집을 롤백했습니다. 나는 분명히하기 위해 메모를 추가했다. 그러나 – Jonas

+0

사과, 나는 그 질문을 잘못 읽었다. –

0

당신이 더 사용하기 위해 데이터에 액세스 할 때가는 방법이다. 그러나, 당신은 화면의 데이터를 보는에만 관심이 있고 이것은 또한 옵션입니다 괄호 마음에 들지 않는 경우 : 레이블이이 같은 일을해야 문자가 실제로 경우

Fcell = [num2str(F) repmat([' ' label{1}],size(F,1),1)] 

을 :

Fcell = [num2str(F) repmat([' ' label],size(F,1),1)] 
+0

레이블은 셀이며 코드를 실행합니다. Fcell = [num2str (F) repmat ([ ''{label}], size (F, 1), 1)]; 하지만 날 오류주고있다 : 오류 horzcat 사용 CAT 인수 차원 일관성이 없습니다. – Dev

+0

@Dev 내 게시물을 업데이트했습니다. 이제 대괄호를 올바르게 사용해야합니다. –

+0

고마워 !!, 그것은 내 질문에 표시되는 것과 동일한 출력을 제공하지만 출력은 클래스 숯불입니다. Fcell (2,2)에 접근하면 23이 아닌 Fcell (2,2)에 액세스합니다. 셀을 만드는 Jonas 방식은 Fcell {2,2} = 23을 생성합니다. – Dev

관련 문제