Main Content

이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

h5read

HDF5 데이터셋에서 데이터 읽기

설명

예제

data = h5read(filename,ds)는 HDF5 파일 filename에 포함된 데이터셋 ds로부터 모든 데이터를 읽어 들입니다.

예제

data = h5read(filename,ds,start,count)start에 지정된 위치에서 시작하여 데이터셋으로부터 데이터의 서브셋을 읽어 들입니다. count 인수는 각 차원을 따라 읽어 들일 요소 개수를 지정합니다.

예제

data = h5read(filename,ds,start,count,stride)는 데이터셋의 각 차원의 인덱스 간 간격이 stride인 데이터의 서브셋을 반환합니다.

예제

모두 축소

HDF5 파일에서 데이터셋에 대한 메타데이터를 가져온 다음 데이터셋을 읽어 들입니다.

HDF5 파일 example.h5에서 데이터셋 /g4/lat에 대한 메타데이터를 표시합니다.

h5disp('example.h5','/g4/lat')
HDF5 example.h5 
Dataset 'lat' 
    Size:  19
    MaxSize:  19
    Datatype:   H5T_IEEE_F64LE (double)
    ChunkSize:  []
    Filters:  none
    FillValue:  0.000000
    Attributes:
        'units':  'degrees_north'
        'CLASS':  'DIMENSION_SCALE'
        'NAME':  'lat'

데이터셋을 읽습니다.

data = h5read('example.h5','/g4/lat')
data = 19×1

   -90
   -80
   -70
   -60
   -50
   -40
   -30
   -20
   -10
     0
      ⋮

HDF5 파일에서 데이터셋에 대한 메타데이터를 가져온 다음 데이터셋의 서브셋을 읽어 들입니다.

HDF5 파일 example.h5에서 데이터셋 /g4/world에 대한 메타데이터를 표시합니다.

h5disp('example.h5','/g4/world')
HDF5 example.h5 
Dataset 'world' 
    Size:  36x19
    MaxSize:  36x19
    Datatype:   H5T_IEEE_F64LE (double)
    ChunkSize:  []
    Filters:  none
    FillValue:  0.000000

데이터셋의 처음에서 시작하여 데이터셋에서 데이터의 5x3 서브셋을 읽어 들입니다.

start = [1 1];
count = [5 3];
data = h5read('example.h5','/g4/world',start,count)
data = 5×3

     0     0     0
     0     0     0
     0     0     0
     0     0     0
     0     0     0

데이터셋에서 데이터를 읽어 들이며, 여기서 데이터는 각 차원을 따라 데이터셋 사이에 지정된 간격을 갖도록 샘플링됩니다.

먼저 HDF5 파일 example.h5에서 데이터셋 /g4/lon에 대한 메타데이터를 표시합니다. 데이터셋의 변수는 요소를 36개 가진 1차원입니다.

h5disp('example.h5','/g4/lon')  
HDF5 example.h5 
Dataset 'lon' 
    Size:  36
    MaxSize:  36
    Datatype:   H5T_IEEE_F64LE (double)
    ChunkSize:  []
    Filters:  none
    FillValue:  0.000000
    Attributes:
        'units':  'degrees_east'
        'CLASS':  'DIMENSION_SCALE'
        'NAME':  'lon'

startLoc의 위치에서 시작하여 stride의 간격으로 변수 데이터를 읽어 들입니다. stride의 값이 1이면 해당 차원에서 인접한 값들이 차례로 액세스되고, 값이 2이면 해당 차원에서 하나 걸러 하나의 값이 액세스되는 식입니다.

startLoc = 1; 
count  = 18; 
stride = 2; 
subsetData  = h5read('example.h5','/g4/lon',startLoc,count,stride);

출력 변수 subsetData를 검토합니다.

whos subsetData
  Name             Size            Bytes  Class     Attributes

  subsetData      18x1               144  double              

입력 인수

모두 축소

파일 이름으로, HDF5 파일의 이름을 포함하는 문자형 벡터 또는 string형 스칼라로 지정됩니다.

데이터셋 이름으로, HDF5 파일에 있는 데이터셋의 이름을 포함하는 문자형 벡터 또는 string형 스칼라로 지정됩니다. HDF5 데이터셋은 데이터 요소로 구성된 다차원 배열과 이를 지원하는 메타데이터입니다.

시작 위치로, 양의 정수로 구성된 숫자형 벡터로 지정됩니다. N차원 데이터셋에 대해 start는 1부터 시작하는 인덱스를 포함하는 길이가 N인 벡터입니다. start의 요소는 순서대로 변수의 차원에 대응됩니다.

start를 지정하지 않으면 h5read 함수는 각 차원을 따라 첫 번째 인덱스에서부터 데이터셋을 읽어 들이기 시작합니다.

읽어 들일 요소 개수로, 양의 정수로 구성된 숫자형 벡터로 지정됩니다. N차원 데이터셋에 대해 count는 길이가 N인 벡터로, 각 차원을 따라 읽어 들일 요소 개수를 지정합니다. count의 요소는 순서대로 변수의 차원에 대응됩니다. count의 요소에 Inf가 하나라도 있는 경우 h5read는 해당 차원의 끝까지 읽어 들입니다.

count를 지정하지 않으면 h5read 함수는 각 차원의 끝까지 데이터를 읽어 들입니다.

데이터셋의 각 차원에서 인덱스 사이의 간격으로, 정수로 구성된 숫자형 벡터로 지정됩니다. 데이터셋의 N차원 변수에 대해 stride는 길이가 N인 벡터입니다. stride 벡터의 요소는 순서대로 변수의 차원에 대응됩니다. 값이 1이면 해당 차원에서 인접한 변수 값들이 차례로 액세스됩니다. 반면, 값이 2이면 해당 차원에서 하나 걸러 하나의 변수 값이 액세스되는 식입니다.

stride를 지정하지 않으면 h5read 함수는 각 차원에서 디폴트 간격 1을 사용하여 데이터를 읽어 들입니다.

R2011a에 개발됨