Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

netcdf.putAtt

NetCDF 属性の書き込み

構文

netcdf.putAtt(ncid,varid,attrname,attrvalue)
netcdf.putAtt(ncid,varid,attrname,attrvalue,xtype)

説明

netcdf.putAtt(ncid,varid,attrname,attrvalue) は値 attrvalue をもつ attrname という名前の属性を、varid によって指定される NetCDF 変数に書き込みます。グローバル属性を指定するには、varid に対して netcdf.getConstant('NC_GLOBAL') を使用します。

ncid は、関数 netcdf.create または関数 netcdf.open によって返される NetCDF ファイル識別子です。

netcdf.putAtt(ncid,varid,attrname,attrvalue,xtype) は、attrvaluextype に指定されたデータ型として書き込みます。xtype の値は、以下の値のいずれかを含む文字ベクトルまたは string スカラーとして指定するか、関数 netcdf.getConstant が返す等価な数値として指定します。

xtype の値MATLAB® クラス
NC_DOUBLE'double'
NC_FLOAT'single'
NC_INT64 (NetCDF-4 ファイルのみ)'int64'
NC_UINT64 (NetCDF-4 ファイルのみ)'uint64'
NC_INT'int32'
NC_UINT (NetCDF-4 ファイルのみ)'uint32'
NC_SHORT'int16'
NC_USHORT (NetCDF-4 ファイルのみ)'uint16'
NC_BYTE'int8'
NC_UBYTE (NetCDF-4 ファイルのみ)'uint8'
NC_CHAR'char'
NC_STRING (NetCDF-4 ファイルのみ)'string'

メモ

netcdf.putAtt を使用して NetCDF4 ファイルの '_FillValue' 属性を設定することはできません。変数の埋め込み値を設定するには、関数 netcdf.defVarFill を使用します。

関数 netcdf.putAtt は、NetCDF ライブラリ C API のさまざまな属性の I/O 関数に相当します。この関数を使用するには、NetCDF プログラミング パラダイムに関する知識が必要です。

すべて折りたたむ

この例では、新しい NetCDF ファイルを作成し、次元と変数を定義し、データをその変数に追加して、変数と関連付けられる属性を作成します。この例を実行するには、現在のディレクトリへの書き込み権限が必要です。

% Create a variable in the workspace.
my_vardata = linspace(0,50,50);

% Create a netCDF file.
ncid = netcdf.create('foo.nc','NC_WRITE');

% Define a dimension in the file.
dimid = netcdf.defDim(ncid,'my_dim',50);
 
% Define a new variable in the file.
varid = netcdf.defVar(ncid,'my_var','double',dimid);

% Leave define mode and enter data mode to write data.
netcdf.endDef(ncid);

% Write data to variable.
netcdf.putVar(ncid,varid,my_vardata);

% Re-enter define mode.
netcdf.reDef(ncid);

% Create an attribute associated with the variable.
netcdf.putAtt(ncid,0,'my_att',10);

% Verify that the attribute was created.
[xtype xlen] = netcdf.inqAtt(ncid,0,'my_att')

xtype =

     6


xlen =

     1

この例では、新しい NetCDF ファイルを作成し、グローバル属性を指定し、属性に値を割り当てます。

ncid = netcdf.create('myfile.nc','CLOBBER');
varid = netcdf.getConstant('GLOBAL');
netcdf.putAtt(ncid,varid,'creation_date',datestr(now));
netcdf.close(ncid);

string 配列を NC_STRING 型として NetCDF-4 ファイルのグローバル属性に書き込みます。次に、グローバル属性の値を返します。

NetCDF-4 ファイルを作成し、string 配列 ["°​F","°​C"] をグローバル属性 Units の値として書き込みます。

ncid = netcdf.create("myfile.nc","NETCDF4");
netcdf.putAtt(ncid, netcdf.getConstant("NC_GLOBAL"),"Units", ["°​F","°​C"])
netcdf.close(ncid)

グローバル属性の値を返してから、NetCDF-4 ファイルを閉じます。

ncid = netcdf.open("myfile.nc");
netcdf.getAtt(ncid, netcdf.getConstant("NC_GLOBAL"), "Units")
netcdf.close(ncid)

データを NetCDF-4 ファイルのグローバル属性に string データとして書き込みます。

NetCDF-4 ファイルを作成します。次に、文字ベクトル 'March''NC_STRING' 型としてグローバル属性 Month に書き込みます。

ncid = netcdf.create("myfile.nc", "NETCDF4");
netcdf.putAtt(ncid, netcdf.getConstant("NC_GLOBAL"),...
      "Month", 'March', 'NC_STRING')
netcdf.close(ncid)

グローバル属性 Month の値を返してから、NetCDF-4 ファイルを閉じます。

ncid = netcdf.open("myfile.nc");
netcdf.getAtt(ncid, netcdf.getConstant("NC_GLOBAL"), "Month")
netcdf.close(ncid)