2012-06-15 3 views
0

MATLAB에서 PyTables의 table.where과 비슷한 항목 (예 : col1 = 4)을 기준으로 데이터 집합의 하위 집합을 선택하려고합니다. 지금까지, 나의 수색은 완전히 효과가 없었다. 나는 그런 유용한 기능이 어떻게 든 지원되지 않을 것이라고 믿을 수 없다 ... 누군가 도울 수 있는가?PyTables table.where matlab에서 동일합니다

MATLAB ver R2011b.

EDIT : 질문에서 명확하지 않은 경우, MATLAB의 데이터 저장을 위해 HDF5 파일을 사용하고 있으므로 PyTables와 비슷한 기능을 찾고 싶습니다.

+0

:

당신이 매트릭스 MATLAB에서 데이터에 액세스 할 수 후에는로 쉽게? – Oli

+0

@ uscere90 : MATLAB에서 정확히 무엇을 찾고 있는지, [dataset] (http://www.mathworks.com/help/toolbox/stats/dataset.html) 유형 또는 [HDF5] (http : //www.mathworks.com/help/techdoc/ref/hdf5.html) 파일? – Amro

+0

@Amro hdf5 파일을 조작하는 방법을 찾고 있습니다. 내가 작업하고있는 파일이 너무 커서 한 번에 모두 RAM에로드 할 수 없습니다. 나는 원하는 데이터를 담고있는 3d 덩어리를 잡고, matlab에 메모리가 있으면 그것을 검색한다. 나는 더 우아한, 라 피 테이블의 테이블로 그것을 할 수 있기를 바랬습니다. 바로 지금 당신의 일치하는 데이터를 돌려줍니다. – uscere90

답변

0

당신이하려고하는 것은 load- 파일을 메모리에 저장하는 것입니다 (또는 메모리가 큰 경우 HDF5 Diskmap Class 시도해보십시오). 어떻게 MATLAB에서 그 HDF5 형식의 파일을로드 할

a=[ 
0 0 0 0 1; 
0 1 0 0 1; 
1 0 1 1 1; 
0 1 1 1 1; 
1 0 1 0 1]; 

a(find(a(:,1)==1),:) 
+0

실제로, 이것은 본질적으로 내가 지금하고있는 일입니다. 나는 원하는 데이터를 담을 수있는 큰 멍청이를로드하는 대신에 일치하는 데이터만을 반환하는 hdf5 함수가 있었으면합니다. 그런 다음 그것을 검색하여 검색합니다. – uscere90

+0

hdf5read는 하나의 데이터 열을 읽을 수있는 것 같습니다. 최소한 부하를 줄여야합니다. 그런 다음 기준에 맞는 색인을 유지하고 나중에 색인을로드 할 수 있습니다. – jpjacobs