2014-04-29 1 views
-1

숫자 데이터가 들어있는 행렬이 있습니다. 크기는 31x48입니다. 이 행렬의 각 행에 레이블을 추가하려고합니다. 내가 생각할 수있는 가장 좋은 방법은 내 행렬을 데이터의 48 개 조각이 들어있는 각 행이있는 셀 배열로 변환하는 것입니다.큰 행렬을 셀 배열로 변환

이렇게 프로그래밍하는 방법에 대해 확신하지 못하기 때문에 '행 1'과 같은 레이블을 추가 한 다음 각 데이터를 포함하는 각 행을 반복합니다. 일 2 30 30 30 30 30 ...] 등

내가 레이블을 필요 [....... 30 30 30 30 30] 1 일 : 는 나는 다음과 같이 할 행에 할당되어 두 개의 그룹으로 나눌 때 어떤 데이터가 어떤 날과 일치하는지 알 수 있습니다.

+0

이전에 Matlab에서 작업 해본 경험이 있으십니까? – Schorsch

답변

0

원래 < 31x48> 매트릭스부터 시작하겠습니다. 우리는 '매트'처음에는

mat=rand([31,48]) 

을 전화 할게, 우리는> 행렬이는 < 31x1 셀을 만들 것입니다 배열을

mat_cell=num2cell(mat,2) 

셀로 변환. mat_cell {day, 1}은 해당 일의 48 항목을 반환합니다. 이제 mat_cell의 두 번째 열에 레이블을 추가합니다 (첫 번째 열에는 < 1x48> 데이터가 포함됨).

labels={'Day 1' ; 'Day 2' ; 'Day 3' ; ... 'Day 31'} 

다음

mat_cell(:,2)=labels 

이 mat_cell의 각 행에 레이블을 추가해야합니다 있도록> 우리가 크기 < 1x31의 레이블 이름 셀 어레이를 가정 해 봅시다. 그런 다음

mat_cell{day,1} returns the <1x48> array for the 'day'. 
mat_cell{day,2} returns label for the 'day'. 

은 참고 사항 : 그것은 아주 분명하지만가, 레이블 셀 어레이는 원래 매트 배열의 컬럼에 대응하여 배치 된 텍스트가 있어야합니다.