2013-10-24 1 views
2

용어에 대해 잘 모르겠지만 텍스트 파일의 데이터를 1x1 셀 배열 P으로 읽었습니다. P을 검사 할 때 (1,1) 위치에 "< 142x2 셀>"이 표시됩니다. 거기서부터이 버튼을 더블 클릭하면 실제로 원하는 142x2 셀로 열립니다. 문제는 1x1 셀 배열에서 142x2 셀 배열로 변환하는 코드를 통해이 데이터를 조작하는 방법을 얻지 못한다는 것입니다. 또한 중괄호가 나타내는 부분을 찾을 수 없습니다.1x1 matlab 셀의 내용에 액세스

+0

무엇을 원하십니까? 그것의 142x2 셀, 두 번째 열은 어떻게해야합니까? 오지마? 두 열을 하나로 연결 하시겠습니까? – Daniel

+0

만약 내가 다니엘이 분명치 않다면 죄송합니다. 현재 데이터 유형은 1x1 셀 {P}입니다. {P}의 데이터를 보러 갈 때, (1,1) 위치는 단순히 "<142x1 cell>"라고 말하면, 이것을 더블 클릭하면 실제로 원하는 142x1 데이터까지 열립니다. 내 용어가 약간 꺼져있을 수도 있지만 이것이 더 의미가 있다고 생각합니까? – user2208604

+1

관련 질문 [{} 및() (중괄호 대 괄호)를 사용하여 셀 요소에 액세스하는 것의 차이]] (http://stackoverflow.com/q/9055015/1336150) –

답변

6

나는 142x2 셀 어레이로는 1x1 셀 어레이로 변환하는 코드를 통해이 데이터를 조작하는 방법을하지 않습니다.

셀 어레이 P 실제로 차례로 다른 셀 어레이 142x2 포함는 1x1 셀 어레이이다. 이 유형의 출력은 textscan을 사용할 때 매우 일반적입니다. 내부 셀 어레이에 액세스하려면, 당신은 단순히과 같이 중괄호 ({})를 사용할 수 있습니다

Q = P{1}; // or P{:} if you're certain that P holds only one cell 

Q을 발생하면 142x2 셀 어레이를 개최한다. 보통 중간 변수를 사용하지 않고 P = P{:}을 수행하여 보통 P을 "평평하게"합니다.

또한 중괄호가 무엇을 의미하는지는 알 수 없습니다.

MATLAB's documentation about special characters을 읽으셨습니까? 그 내용은 다음과 같습니다 :

중괄호는 셀 배열 지정 문에 사용됩니다. 예 : A(2,1) = {[1 2 3; 4 5 6]} 또는 A{2,2} = ('str'). { }에 대한 자세한 내용은 help paren을 참조하십시오.

나는 다음 (매우) 관련 질문을 읽어 촉구도 것이다 : Difference between accessing cell elements using {} and() (curly braces vs. parentheses)

2

짧은 대답 : 당신은 PP의 첫 번째 셀의 내용을 할당 할 수 있습니다.

예 :

P = {cell(142,2)}; %Create a 142x2 cell inside a cell 
P = P{1};   %Solution: Now P is a 142x2 cell 

당신이 help cell을 시도하는 경우가 중괄호를 사용하는 방법에 대해 설명합니다 help paren에 당신을 이끌 것입니다.