メインコンテンツ

このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。

extractfield

構造体配列からのフィールド値

説明

a = extractfield(S,name) は、構造S のフィールド name で指定されたフィールド値を返します。

すべて折りたたむ

マサチューセッツ州コンコードの道路に関する情報を含む構造を読み込みます。

roads = shaperead('concord_roads.shp');
r = roads(1:5);

道路の x 座標と y 座標を取得します。マップを表示し、最初のいくつかの要素をマゼンタ色で強調表示します。

hold on
plot(extractfield(roads,'X'),extractfield(roads,'Y'));
plot(extractfield(r,'X'),extractfield(r,'Y'),'m');

Figure contains an axes object. The axes object contains 2 objects of type line.

フィールド STREETNAME に保存されている道路の名前を抽出します。フィールド値は文字ベクトルなので、結果はセル配列で返されます。

names = extractfield(r,'STREETNAME');

構造から X フィールドを抽出し、返される値の形式を調べます。すべての値は同じ数値データ型 (double) であるため、結果はベクトルで返されます。

uniformType = extractfield(r,'X');

説明のために、要素の 1 つの Xフィールド値を別のデータ型に変更します。このコマンドは、2 番目の要素をデータ型 single に変換します。

r(2).X = single(r(2).X);

X フィールドの値を再度抽出します。今回は、値のデータ型が異なるため、結果はセル配列で返されます。

mixedType = extractfield(r,'X');

入力引数

すべて折りたたむ

構造、構造として指定されます。

フィールド名。大文字と小文字を区別する文字列列スカラーまたは文字ベクトルとして指定します。

出力引数

すべて折りたたむ

抽出されたフィールド値は、1 行 n 列の数値ベクトルまたはセル配列として返されます。n は、構造S のフィールド name、つまり n = numel([S(:).(name)]) 内の要素の合計数です。a は、フィールド名のいずれかのフィールド値に文字ベクトルが含まれている場合、またはフィールド値の型が統一されていない場合はセル配列です。それ以外の場合、a はフィールド値と同じ型です。a では入力フィールドの形状は保持されません。

バージョン履歴

R2006a より前に導入