ドキュメンテーション

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

read

データ ストアのデータの読み取り

説明

data = read(ds) は、データ ストアからデータを返します。後続の関数 read の呼び出しでは、前回の呼び出しの終点から読み取りが続行されます。

[data,info] = read(ds) は、抽出されたデータに関する情報 (メタデータを含む) も info で返します。

すべて折りたたむ

表形式データが格納されたサンプル ファイル airlinesmall.csv からデータ ストアを作成します。

ds = tabularTextDatastore('airlinesmall.csv','TreatAsMissing','NA','MissingValue',0);

SelectedVariableNames プロパティを変更して対象の変数を指定します。

ds.SelectedVariableNames = {'DepTime','ArrTime','ActualElapsedTime'};

読み取り可能なデータがなくなるまで、データ ストアのデータを一度に 1 ブロックずつ読み取り、データを解析します。この例では、実際の経過時間の合計を求めます。

sumElapsedTime = 0;
while hasdata(ds)
    T = read(ds);
    sumElapsedTime = sumElapsedTime + sum(T.ActualElapsedTime);
end

実際の経過時間の合計を表示します。

sumElapsedTime
sumElapsedTime = 14531797

関数 mapreduce の出力ファイルであるサンプル ファイル mapredout.mat からデータ ストアを作成します。

ds = datastore('mapredout.mat');

データ ストアのデータのサブセットを読み取ります。

T = read(ds)
T=1×2 table
    Key      Value 
    ____    _______

    'AA'    [14930]

データ ストアの ReadSize プロパティを変更して、一度に読み取るキーと値のペアの数を変更します。

ds.ReadSize = 5;

データ ストアから次の 5 組のキーと値のペアを読み取ります。

T = read(ds)
T=5×2 table
    Key      Value 
    ____    _______

    'AS'    [ 2910]
    'CO'    [ 8138]
    'DL'    [16578]
    'EA'    [  920]
    'HP'    [ 3660]

基となるデータ ストアのイメージ ペア間のパリティを維持するデータ ストアを作成します。たとえば、2 つのイメージ データ ストアを個別に作成してから、基となる 2 つのデータ ストアを表す統合データ ストアを作成します。

3 つのイメージの集合を表すイメージ データ ストア imds1 を作成します。

imds1 = imageDatastore({'street1.jpg','street2.jpg','peppers.png'}); 

3 つのイメージの明るい領域のマスクを含む、2 番目のデータ ストア imds2 を作成します。このデータ ストアを作成するために、まず imds1 のイメージをグレースケールに変換します。次に、明るいピクセル (値が 250 を超える) を白、暗いピクセルを黒にマップして、各イメージをバイナリ マスクに変換します。

imds2 = transform(imds1,@(x) rgb2gray(x)>250);

imds1imds2 から統合データ ストアを作成します。

imdsCombined = combine(imds1,imds2);

統合データ ストアから最初のデータ サブセットを読み取ります。出力は 1 行 2 列の cell 配列です。2 つの列は、それぞれ基となる 2 つのデータ ストア imds1 および imds2 から読み取った最初のデータ サブセットを表します。

dataOut = read(imdsCombined)
dataOut = 1x2 cell array
    {480x640x3 uint8}    {480x640 logical}

統合データ ストアから読み取ったデータを、タイル イメージのペアとして表示します。

tile = imtile(dataOut);
imshow(tile)

入力引数

すべて折りたたむ

入力データ ストア。次のデータ ストアを read メソッドの入力として使用できます。

出力引数

すべて折りたたむ

出力データ。ds の種類に従ってテーブルまたは配列として返されます。

データ ストアの種類data のデータ型説明
TabularTextDatastoreSpreadsheetDatastoreテーブルテーブル変数は SelectedVariableNames プロパティにより決定されます。
ImageDatastore整数配列 整数配列の次元はイメージのタイプによって決まります。
  • グレースケール イメージの場合、data は m 行 n 列です。

  • トゥルーカラー イメージの場合、data は m x n x 3 です。

  • CMYK Tiff イメージの場合、data は m x n x 4 です。

ReadSize プロパティが 1 より大きい場合、data は各イメージに対応するイメージ データの cell 配列です。関数 read は、関数 imread でサポートされるすべてのイメージ タイプをサポートします。サポートされるイメージ タイプの詳細については、imread を参照してください。
KeyValueDatastoreテーブルテーブル変数名は KeyValue です。
FileDatastoreVaries出力は、'ReadFcn' 値で指定されるカスタム読み取り関数が返す出力と同じです。
TransformedDatastoreVaries出力は、TransformedDatastore の作成に使用される transform メソッドで指定された変換関数 @fcn の出力と同じです。
CombinedDatastoreVaries

対応する基のデータ ストアから得た、read の出力の水平方向の連結が格納されます。

読み取ったデータに関する情報。構造体配列、または構造体配列の cell 配列として返されます。

  • MATLAB データ ストアと TransformedDatastore の場合、info はデータ ストアに関する情報を含むフィールドをもつ構造体配列。

  • CombinedDatastore の場合、info は構造体配列の cell 配列。cell 配列の各要素には、対応する基のデータ ストアの関連フィールドをもつ構造体が格納されます。

構造体配列内の情報は、入力データ ストアのタイプによって決まります。この構造体配列には、次のフィールドを含めることができます。

フィールド名データ ストアの種類説明
FilenameすべてFilename は、パス文字列、ファイル名、およびファイル拡張子を含む、完全に解決されたパスです。ReadSize プロパティが 1 より大きい ImageDatastore オブジェクトの場合、Filename は各イメージに対応するファイル名の cell 配列です。
FileSizeすべて

ファイルの合計サイズ (バイト単位)。

ReadSize プロパティが 1 より大きい ImageDatastore オブジェクトの場合、FileSize は各イメージに対応するファイル サイズのベクトルです。

MAT ファイルの場合、FileSize の値はデータ ストアのタイプによって決まります。

  • KeyValueDatastore および TallDatastoreFileSize フィールドに、ファイル内のキーと値のペアの総数が格納されます。

  • FileDatastoreFileSize フィールドにファイルの合計サイズがバイト単位で格納されます。

FileTypeKeyValueDatastore のみ

データを読み取るファイルの種類。MAT ファイルの場合は 'mat'、シーケンス ファイルの場合は 'seq' です。

LabelImageDatastore のみ

イメージのラベル名。ReadSize プロパティが 1 より大きい場合、Label は各イメージに対応するラベル名のベクトルです。Labels プロパティが空の場合、Label は空の cell 配列です。

NumCharactersReadTabularTextDatastore のみ

読み取られた文字数。

NumDataRowsSpreadsheetDatastore のみ

各シートから読み取った行数を含むベクトル。

OffsetKeyValueDatastore および TabularTextDatastore のみ

読み取り操作の開始位置 (バイト単位)。MAT ファイルの場合、Offset は読み取る最初のキーと値のインデックスになります。

SheetNamesSpreadsheetDatastore のみ

読み取ったシートの名前。

SheetNumbersSpreadsheetDatastore のみ

読み取ったシートに関連付けられている番号。

R2014b で導入