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

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

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형 스칼라로 지정됩니다.

파일의 위치에 따라 filename은 다음 형식 중 하나가 될 수 있습니다.

위치

형식

현재 폴더

filename에 파일의 이름을 지정합니다.

예: 'myFile.h5'

다른 폴더

파일이 현재 폴더나 MATLAB® 경로의 폴더에 없는 경우, filename에 전체 경로 또는 상대 경로 이름을 지정합니다.

예: 'C:\myFolder\myFile.h5'

예: 'myFolder\myFile.h5'

원격 위치

파일이 원격 위치에 저장된 경우, filename은 다음 형식과 같이 URL(Uniform Resource Locator)로 지정된 파일의 전체 경로를 포함해야 합니다.

scheme_name://path_to_file/my_file.ext

원격 위치에 따라 scheme_name은 다음 표에 있는 값 중 하나가 될 수 있습니다.

원격 위치scheme_name
Amazon S3™s3
Windows Azure® Blob Storagewasb, wasbs
HDFS™hdfs

자세한 내용은 원격 데이터로 작업하기 항목을 참조하십시오.

예: 's3://bucketname/path_to_file/myFile.h5'

데이터셋 이름으로, 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을 사용하여 데이터를 읽어 들입니다.

제한 사항

  • h5read는 그룹에 대한 참조 읽기를 지원하지 않습니다.

버전 내역

R2011a에 개발됨

모두 확장