getIndexByKey

Класс: BioIndexedFile

Извлечение индексов из исходного файла, сопоставленного с объектом BioIndexedFile, с помощью алфавитно-цифрового ключа

Синтаксис

Indices = getIndexByKey(BioIFobj, Key)
[Indices, LogicalVals] = getIndexByKey(BioIFobj, Key)

Описание

Indices = getIndexByKey(BioIFobj, Key) возвращает индексы записей в исходном файле, сопоставленном с BioIFobj, объект BioIndexedFile. Он возвращает индексы записей, ключи которых заданы Keyмассив вектора символов или ячеек векторов символов, задающий один или несколько алфавитно-цифровых ключей. Возвращается Indices, числовой вектор индексов записей, которые имеют алфавитно-цифровые ключи, заданные как Key. Если ключи в исходном файле не уникальны, это возвращает все индексы записей, которые соответствуют указанному ключу, все в положении ключа в Key массив ячеек. Если ключи в исходном файле уникальны, существует отношение «один к одному» между количеством и порядком элементов в Key и выходные Indices.

[Indices, LogicalVals] = getIndexByKey(BioIFobj, Key) возвращает логический вектор, который указывает только последнее соответствие для каждой клавиши, так что существует отношение «один к одному» между количеством и порядком элементов в Key и Indices(LogicalVals).

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

BioIFobj

Объект BioIndexedFile класс.

Key

Вектор символов или массив ячеек из векторов символов, задающих один или несколько ключей в исходном файле, сопоставленном с BioIFobj, объект BioIndexedFile.

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

Indices

Числовой вектор индексов записей в исходном файле, которые имеют алфавитно-цифровые ключи, заданные как Key.

LogicalVals

Логический вектор, содержащий то же количество элементов, что и Indices. Вектор указывает только последнее соответствие для каждого ключа, заданного в Key, таким образом, существует взаимосвязь один к одному между количеством и порядком элементов в Key и Indices(LogicalVals).

Совет

Некоторые файлы содержат повторные ключи. Для примера форматированные в SAM файлы используют тот же ключ для записей, которые являются парными считываниями. Используйте Indices(LogicalVals) синтаксис для возврата только последнего индекса повторяемого ключа. Для получения дополнительной информации см. Примеры.

Примеры

Создайте объект BioIndexedFile для доступа к таблице, содержащей перекрестные ссылки между именами генов и терминами онтологии генов (GO):

% Create variable containing full absolute path of source file
sourcefile = which('yeastgenes.sgd');
% Create a BioIndexedFile object from the source file. Indicate
% the source file is a tab-delimited file where contiguous rows
% with the same key are considered a single entry. Store the
% index file in the Current Folder. Indicate that keys are
% located in column 3 and that header lines are prefaced with !
gene2goObj = BioIndexedFile('mrtab', sourcefile, '.', ...
                            'KeyColumn', 3, 'HeaderPrefix','!')

Возвращает индексы для записей в исходном файле, которые заданы ключами AAC1 и AAD10.

% Access indices for entries that have the keys AAC1 and AAD10
indices = getIndexByKey(gene2goObj, {'AAC1' 'AAD10'})
indices =

           3
				 5

Создайте объект BioIndexedFile для доступа к форматированному в SAM файлу с повторяющимися ключами.

% Create variable containing full absolute path of source file
samsourcefile = which('ex1.sam');
% Create a BioIndexedFile object from the source file. Store the
% index file in the Current Folder. 
samObj = BioIndexedFile('sam', samsourcefile, '.')

Возвращает только последние индексы для записей в исходном файле, которые заданы двумя ключами, 'B7 _ 593:7:15:244:876 и EAS56_65:4:296:78:421, оба из которых являются повторяющимися ключами.

% Return all indices for entries that have two specific keys
[Indices, LogicalVal] = getIndexByKey(samObj, ...
                  {'B7_593:7:15:244:876', 'EAS56_65:4:296:78:421'})
Indices =

        3058
        3238
        3292
        3293

LogicalVal =

     0
     1
     0
     1
% Return only the last index for each key
LastIndices = Indices(LogicalVal)
LastIndices =

        3238
        3293

Совет

Этот метод используется для определения индексов определенных записей с известными ключами.