В этом примере показано, как создать datastore для данных о паре "ключ-значение" в MAT-файле, который является выходом mapreduce
. Затем пример показывает, как считать все данные в datastore и отсортировать его. Этот пример принимает, что данные в MAT-файле умещаются в памяти.
Создайте datastore из файла примера, mapredout.mat
, использование datastore
функция. Файл примера содержит коды поставщика услуг авиакомпании представления уникальных ключей и соответствующие значения, которые представляют количество рейсов, выполненных тем поставщиком услуг.
ds = datastore('mapredout.mat');
datastore
возвращает KeyValueDatastore
. datastore
функция автоматически определяет соответствующий тип datastore, чтобы создать.
Предварительно просмотрите данные с помощью preview
функция. Эта функция не влияет на состояние datastore.
preview(ds)
ans=1×2 table
Key Value
______ _________
{'AA'} {[14930]}
Считайте все данные в ds
использование readall
функция. readall
функция возвращает таблицу с двумя столбцами, Key
и Value
.
T = readall(ds)
T=29×2 table
Key Value
__________ _________
{'AA' } {[14930]}
{'AS' } {[ 2910]}
{'CO' } {[ 8138]}
{'DL' } {[16578]}
{'EA' } {[ 920]}
{'HP' } {[ 3660]}
{'ML (1)'} {[ 69]}
{'NW' } {[10349]}
{'PA (1)'} {[ 318]}
{'PI' } {[ 871]}
{'PS' } {[ 83]}
{'TW' } {[ 3805]}
{'UA' } {[13286]}
{'US' } {[13997]}
{'WN' } {[15931]}
{'AQ' } {[ 154]}
⋮
T
содержит всю авиакомпанию и полетные данные от datastore в том же порядке, в котором были считаны данные. Табличные переменные, Key
и Value
, массивы ячеек.
Преобразуйте Value
к числовому массиву.
T.Value = cell2mat(T.Value)
T=29×2 table
Key Value
__________ _____
{'AA' } 14930
{'AS' } 2910
{'CO' } 8138
{'DL' } 16578
{'EA' } 920
{'HP' } 3660
{'ML (1)'} 69
{'NW' } 10349
{'PA (1)'} 318
{'PI' } 871
{'PS' } 83
{'TW' } 3805
{'UA' } 13286
{'US' } 13997
{'WN' } 15931
{'AQ' } 154
⋮
Присвойте новые имена к табличным переменным.
T.Properties.VariableNames = {'Airline','NumFlights'};
Сортировка данных в T
количеством рейсов.
T = sortrows(T,'NumFlights','descend')
T=29×2 table
Airline NumFlights
_______ __________
{'DL'} 16578
{'WN'} 15931
{'AA'} 14930
{'US'} 13997
{'UA'} 13286
{'NW'} 10349
{'CO'} 8138
{'MQ'} 3962
{'TW'} 3805
{'HP'} 3660
{'OO'} 3090
{'AS'} 2910
{'XE'} 2357
{'EV'} 1699
{'OH'} 1457
{'FL'} 1263
⋮
Просмотрите сводные данные отсортированной таблицы.
summary(T)
Variables: Airline: 29x1 cell array of character vectors NumFlights: 29x1 double Values: Min 69 Median 1457 Max 16578
Сбросьте datastore, чтобы позволить перечитывать данных.
reset(ds)
KeyValueDatastore
| datastore
| mapreduce
| tall