readall

Считывайте все данные в datastore

Описание

пример

data = readall(ds) возвращает все данные в datastore, заданном ds. Если все данные в datastore не умещаются в памяти, то readall возвращает ошибку.

пример

data = readall(ds,'UseParallel',tf) считывает данные параллельно (требует Parallel Computing Toolbox™).

Примеры

свернуть все

Создайте ImageDatastore объект, содержащий четыре изображения.

imds = imageDatastore({'street1.jpg','street2.jpg','peppers.png','corn.tif'});

Считайте все данные в datastore.

T = readall(imds);

Исследуйте выход.

imout = imtile(T);
imshow(imout)

Figure contains an axes. The axes contains an object of type image.

Создайте datastore из файла примера airlinesmall.csv, который содержит табличные данные.

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

Задайте переменные интереса с помощью SelectedVariableNames свойство.

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

Считайте все данные в datastore параллельно.

T = readall(ds,'UseParallel',true);

readall возвращает все данные в таблице.

Просмотрите информацию о таблице. Только выбранные переменные включены в выход.

T.Properties
ans = 
  TableProperties with properties:

             Description: ''
                UserData: []
          DimensionNames: {'Row'  'Variables'}
           VariableNames: {'DepTime'  'ArrTime'  'ActualElapsedTime'}
    VariableDescriptions: {}
           VariableUnits: {}
      VariableContinuity: []
                RowNames: {}
        CustomProperties: No custom properties are set.
      Use addprop and rmprop to modify CustomProperties.

Создайте datastore, который обеспечивает четность между парой изображений базовых хранилищ данных. Например, создайте два отдельных хранилища данных изображений, и затем создайте объединенный datastore, представляющий два базовых хранилища данных.

Создайте datastore изображений imds1 представление набора трех изображений.

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

Создайте второй datastore imds2 путем преобразования изображений imds1 к шкале полутонов и затем уменьшению изображений.

imds2 = transform(imds1,@(x) imresize(rgb2gray(x),0.5));

Создайте объединенный datastore из imds1 и imds2.

imdsCombined = combine(imds1,imds2);

Считайте все данные из объединенного datastore. Выход является 3 2 массивом ячеек. Эти два столбца представляют все данные о чтении из двух базовых хранилищ данных imds1 и imds2, соответственно.

dataOut = readall(imdsCombined)
dataOut=3×2 cell array
    {480x640x3 uint8}    {240x320 uint8}
    {480x640x3 uint8}    {240x320 uint8}
    {384x512x3 uint8}    {192x256 uint8}

Входные параметры

свернуть все

Введите datastore. Можно использовать эти хранилища данных в качестве входа к readall метод.

  • Хранилища данных MATLAB® — Хранилища данных, созданные с помощью MATLAB datastore функции. Например, создайте datastore для набора использования изображений ImageDatastore. Для полного списка хранилищ данных смотрите, Выбирают Datastore for File Format или Application.

  • Объединенные и преобразованные хранилища данных — Хранилища данных создали использование combine и transform функции.

  • Пользовательские хранилища данных — Хранилища данных создали использование пользовательской среды хранилища данных. Смотрите Разрабатывают Пользовательский Datastore.

Читайте параллельно в виде true или false. Если вы задаете truereadall Считывает все данные от datastore параллельно (требует Parallel Computing Toolbox). Параллельное чтение может привести к улучшенной производительности при чтении данных, особенно с удаленными данными.

  • Обработка datastore может быть улучшена с UseParallel свойство и theParallel Вычисление Тулбокса. readall чтения поддержали хранилища данных быстрее на локальной машине при помощи низких служебных вычислительных сред, таких как основанные на потоке параллельные пулы. Для получения дополнительной информации об основанных на потоке параллельных пулах смотрите parpool (Parallel Computing Toolbox).

  • В результате встроенной многопоточности MATLAB, определенные хранилища данных (например, imageDatastore) выполните быстрее на локальной машине если не с помощью параллелизма на основе работников MATLAB. Для получения дополнительной информации смотрите Многожильный MATLAB.

Пример: readall(ds,'UseParallel',true)

Выходные аргументы

свернуть все

Все данные в datastore, возвращенном как таблица или массив ячеек в зависимости от типа ds.

Тип DatastoreТип данных dataОписание
TabularTextDatastore и SpreadsheetDatastoreТаблицаSelectedVariableNames свойство определяет табличные переменные.
ImageDatastoreCellArray Каждый элемент в массиве ячеек содержит данные изображения для одного изображения. readall функционируйте поддерживает все типы изображения, поддержанные imread функция. Для получения дополнительной информации о поддерживаемых типах изображения смотрите imread.
KeyValueDatastoreТаблицаИменами табличной переменной является Key и Value.
FileDatastoreCellArrayКаждый элемент в массиве ячеек содержит данные, считанные из одного файла с помощью пользовательской функции чтения, заданной ReadFcn свойство.
TransformedDatastoreВарьируетсяВыход совпадает с выходным параметром, возвращенным базовым datastore, заданным UnderlyingDatastores свойство. Например, если базовый datastore является datastore изображений, то data возвращен как массив ячеек, где каждый элемент в массиве ячеек содержит данные изображения для одного изображения.
CombinedDatastoreCellArray

Каждый столбец массива ячеек содержит результат вызова readall на соответствующем базовом datastore, заданном UnderlyingDatastores свойство.

Если количество подмножеств данных в базовых хранилищах данных отличается, то readall только возвращает данные, в то время как все базовые хранилища данных имеют данные. Например, предположите, что объединенный datastore имеет два базовых хранилища данных, один с подмножествами m данных и один с подмножествами n данных, где m> n. Выход является массивом ячеек с двумя столбцами и строками n.

Расширенные возможности

Смотрите также

| |

Введенный в R2014b
Для просмотра документации необходимо авторизоваться на сайте