readall
データストアのすべてのデータの読み取り
説明
例
4 つのイメージを含む ImageDatastore オブジェクトを作成します。
imds = imageDatastore({'street1.jpg','street2.jpg','peppers.png','corn.tif'});データストアのすべてのデータを読み取ります。
T = readall(imds);
出力を調べます。
imout = imtile(T); imshow(imout)

表形式データが格納されたサンプル ファイル airlinesmall_subset.csv からデータストアを作成します。
ds = tabularTextDatastore("airlinesmall_subset.csv",TreatAsMissing="NA");
SelectedVariableNames プロパティを使用して対象の変数を指定します。
ds.SelectedVariableNames = ["DepTime","ArrTime","ActualElapsedTime"];
データストアのすべてのデータを並列で読み取ります。
T = readall(ds,UseParallel=true);
readall により、すべてのデータが table に返されます。
テーブルに関する情報を表示します。選択した変数のみが出力に含まれます。
T.Properties
ans =
TableProperties with properties:
Description: ''
UserData: []
DimensionNames: {'Row' 'Variables'}
VariableNames: {'DepTime' 'ArrTime' 'ActualElapsedTime'}
VariableTypes: ["double" "double" "double"]
VariableDescriptions: {}
VariableUnits: {}
VariableContinuity: []
RowNames: {}
CustomProperties: No custom properties are set.
Use addprop and rmprop to modify CustomProperties.
基となるデータストアのイメージ ペア間のパリティを維持するデータストアを作成します。たとえば、2 つのイメージ データストアを個別に作成してから、基となる 2 つのデータストアを表す統合データストアを作成します。
3 つのイメージの集合を表すイメージ データストア imds1 を作成します。
imds1 = imageDatastore({'street1.jpg','street2.jpg','peppers.png'}); imds1 のイメージをグレースケールに変換してから縮小して、2 番目のデータストア imds2 を作成します。
imds2 = transform(imds1,@(x) imresize(im2gray(x),0.5));
imds1 と imds2 から統合データストアを作成します。
imdsCombined = combine(imds1,imds2);
統合データストアからすべてのデータを読み取ります。出力は 3 行 2 列の cell 配列です。2 つの列は、それぞれ基となる 2 つのデータストア imds1 および imds2 から読み取ったすべてのデータを表します。
dataOut = readall(imdsCombined)
dataOut=3×2 cell array
{480×640×3 uint8} {240×320 uint8}
{480×640×3 uint8} {240×320 uint8}
{384×512×3 uint8} {192×256 uint8}
入力引数
入力データストア。次のデータストアを readall メソッドの入力として使用できます。
MATLAB® データストア — MATLAB
datastore関数を使用して作成されたデータストア。たとえば、ImageDatastoreを使用して、イメージの集合用のデータストアを作成します。データストアの完全な一覧については、ファイル形式またはアプリケーション用のデータストアの選択を参照してください。統合および変換を行ったデータストア — 関数
combineおよびtransformを使用して作成したデータストア。カスタム データストア — カスタム データストア フレームワークを使用して作成したデータストア。カスタム データストアの開発を参照してください。
並列での読み取り。true または false として指定します。true を指定すると、readall はデータストアからすべてのデータを並列で読み取ります (Parallel Computing Toolbox が必要です)。並列読み取りにより、特にリモート データについて、データを読み取る際のパフォーマンスが向上する場合があります。
UseParallelプロパティと Parallel Computing Toolbox により、データストアの処理を改善できます。readallは、スレッドベースの並列プールなどのオーバーヘッドが少ない計算環境を使用して、サポートされるデータストアをローカル マシンで高速に読み取ります。スレッドベースの並列プールの詳細については、parpool(Parallel Computing Toolbox) を参照してください。MATLAB ワーカーに基づく並列処理を使用しない場合は、特定のデータストア (
imageDatastoreなど) について、MATLAB の組み込みのマルチスレッド機能によってローカル マシンで高速に処理されます。詳細については、MATLAB Multicore を参照してください。
例: readall(ds,UseParallel=true)
出力引数
データストア内のすべてのデータ。ds のタイプに応じて table または cell 配列として返されます。
| データストアの種類 | data のデータ型 | 説明 |
|---|---|---|
TabularTextDatastore と SpreadsheetDatastore | table | テーブル変数は SelectedVariableNames プロパティにより決定されます。 |
ImageDatastore | cell 配列 | cell 配列の各要素には、1 つのイメージのイメージ データが格納されます。関数 readall は、関数 imread でサポートされるすべてのイメージ タイプをサポートします。サポートされるイメージ タイプの詳細については、imread を参照してください。 |
KeyValueDatastore | table | テーブル変数名は Key と Value です。 |
FileDatastore | cell 配列 | cell 配列の各要素には、ReadFcn プロパティで指定されたカスタム読み取り関数を使用して 1 つのファイルから読み取られたデータが格納されます。 |
TransformedDatastore | 入力データストアと変換関数に依存 | TransformedDatastore は、基となるデータストアから読み取り、関連する変換関数を呼び出して、データを垂直方向に連結します。データストアが一様でなく、基となるデータストアのデータを垂直方向に連結する場合は、変換関数の出力を中かっこで囲みます。 |
CombinedDatastore | 入力データストアに依存 | 基となるデータストアが一様の場合、そのデータは変更されることなく他のすべてのデータストアのデータと統合 (水平連結) されます。 基となるデータストアが一様でない場合、そのデータは他のすべてのデータストアのデータと統合 (水平連結) される前に cell にラップされます。 |
SequentialDatastore | 入力データストアに依存 | 基となるデータストアのすべてのデータを垂直方向に連結した結果が出力されます。 基となるデータストアがすべて空である場合、最初の基となるデータストアに基づき、空の型が出力されます。基となるデータストアがない場合、空の double が出力されます。 基となるデータストアが一様の場合、そのデータは変更されることなく他のすべてのデータストアのデータと統合されます。 基となるデータストアが一様でない場合、そのデータは他のすべてのデータストアのデータと統合される前に cell にラップされます。 |
拡張機能
使用上の注意および制限:
並列で実行するには、
UseParallelオプションをtrueに設定します。
詳細については、自動並列サポートを使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
使用上の注意および制限:
スレッドベースの環境では、次のデータストアでのみ
readallを使用できます。ImageDatastoreオブジェクトcombineまたはtransformを使用してImageDatastoreオブジェクトから作成するCombinedDatastore、SequentialDatastore、またはTransformedDatastoreオブジェクト
Parallel Computing Toolbox がある場合は、他のデータストアで
readallを使用できます。これを行うには、backgroundPoolまたはThreadPoolを使用する代わりに、プロセスベースの並列プールを使用して関数を実行します (ProcessPoolまたはClusterPoolを使用します)。readallは、スレッドベースの環境では次のイメージ形式をサポートしません。階層データ形式 (HDF)
SVS
TIFF
詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
バージョン履歴
R2014b で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)