Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

ncread

NetCDF データ ソース内の変数からデータを読み取る

説明

vardata = ncread(source,varname) は、source で指定された NetCDF ファイルまたは OPeNDAP NetCDF データソースに含まれる変数 varname から、すべてのデータを読み取ります。

vardata = ncread(source,varname,start,count) は、start で指定された位置から始まるデータを読み取ります。count 引数は、各次元に沿って読み取る要素数を指定します。

vardata = ncread(source,varname,start,count,stride) は、stride で指定された変数の各次元のインデックス間の間隔でデータを返します。

すべて折りたたむ

example.nc ファイルから peaks という名前の変数を読み取り、プロットします。

peaksData  = ncread('example.nc','peaks');
whos peaksData
  Name            Size            Bytes  Class    Attributes

  peaksData      50x50             5000  int16              

peaksData をプロットして、タイトルを追加します。

surf(double(peaksData));
title('Peaks Data');

変数データのうち、位置 [25 17] から各次元の末尾までの部分のみを読み取ってプロットします。

startLoc = [25 17]; % Start location along each coordinate
count  = [Inf Inf]; % Read until the end of each dimension
peaksData  = ncread('example.nc','peaks',startLoc,count);
whos peaksData
  Name            Size            Bytes  Class    Attributes

  peaksData      26x34             1768  int16              

データをプロットします。

surf(double(peaksData));
title('Peaks Data Starting at [25 17]');

データを読み取ってプロットします。ここで、データは各次元に沿って、指定された変数インデックス間の間隔でサンプリングされます。読み取りは startLoc の位置から開始し、stride で指定された間隔で変数データを読み取ります。stride の値が 1 の場合、対応する次元内の隣接する値にアクセスします。一方、値が 2 の場合、対応する次元内の値に 1 つおきにアクセスし、以降同様に繰り返されます。

startLoc = [1 1]; 
count  = [10 15]; 
stride = [2 3]; 
sampledPeaksData  = ncread('example.nc','peaks',startLoc,count,stride);
whos sampledPeaksData
  Name                   Size            Bytes  Class    Attributes

  sampledPeaksData      10x15              300  int16              

データをプロットします。

surf(double(sampledPeaksData));
title('Peaks Data Subsampled by [2 3]');

入力引数

すべて折りたたむ

ソース名。NetCDF ファイルの名前または OPeNDAP NetCDF データ ソースの URL を含む文字ベクトルまたは string スカラーとして指定します。

データ型: char | string

変数名。NetCDF ファイルまたは OPeNDAP NetCDF データ ソースの変数名を含む文字ベクトルまたは string スカラーとして指定します。

データ型: char | string

開始位置。正の整数の数値ベクトルとして指定します。N 次元の変数について、start は 1 ベースのインデックスを含む、長さ N のベクトルです。

start を指定しない場合、関数 ncread は各次元に沿って、最初のインデックスから変数の読み取りを開始します。

データ型: double

読み取る要素数。正の整数の数値ベクトルとして指定します。N 次元の変数について、count は長さが N のベクトルで、各次元に沿って読み取る要素数を指定します。count のいずれかの要素が Inf の場合、ncread は対応する次元の末尾まで読み取りを行います。

count を指定しない場合、関数 ncread は各次元の末尾まで変数データを読み取ります。

データ型: double

各次元に沿った変数インデックス間の間隔。整数の数値ベクトルとして指定します。N 次元の変数について、stride は長さが N のベクトルです。ベクトル stride の要素は、変数の次元に、同じ順序で対応しています。値が 1 の場合、対応する次元内の NetCDF 変数の隣接する値にアクセスします。一方、値が 2 の場合、対応する次元内の NetCDF 変数の値に 1 つおきにアクセスし、以降同様に繰り返されます。

stride を指定しない場合、関数 ncread は各次元に沿って既定の間隔 1 でデータを読み取ります。

データ型: double

出力引数

すべて折りたたむ

変数データ。テキストまたは数値配列として返されます。

ほとんどの場合、関数 ncread は、対応する NetCDF データ型に最も近い MATLAB® データ型を使用します。

_FillValuescale_factor、または add_offset の各変数属性のうち少なくとも 1 つが存在する場合、ncreaddouble 型の vardata を返します。さらに、ncread には以下の規則が適用されます。

  • _FillValue 属性が存在する場合、ncread_FillValue 値と等しい vardata 値を NaN に置き換えます。_FillValue 属性が存在しない場合、ncread は、NetCDF ライブラリに変数の埋め込み値をクエリします。

  • scale_factor 属性が存在する場合、ncread は、変数データに scale_factor 属性の値を乗算します。

  • add_offset 属性が存在する場合、ncread は、変数データに add_offset 属性の値を加算します。

メモ

テキストを含む変数データについて、関数 ncread は ASCII エンコードされた vardata のみの読み取りをサポートしています。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char

R2011a で導入