msresample

Передискретизируйте сигнал с пиками

Синтаксис

[Xout, Intensitiesout] = msresample(X, Intensities, N)
msresample(..., 'Uniform', UniformValue, ...)
msresample(..., 'Range', RangeValue, ...)
msresample(..., 'RangeWarnOff', RangeWarnOffValue, ...)
msresample(..., 'Missing', MissingValue, ...)
msresample(..., 'Window', WindowValue, ...)
msresample(..., 'Cutoff', CutoffValue, ...)
msresample(..., 'ShowPlot', ShowPlotValue, ...)

Аргументы

X Вектор из разделительных стоимостей единицы для набора сигналов с peaks. Число элементов в векторе равняется количеству строк в матричном Intensities. Разделительный модуль может определить количество длины волны, частоты, расстояния, время или m/z в зависимости от инструмента, который генерирует данные сигнала.
Intensities Матрица значений интенсивности для набора peaks, который совместно использует ту же область значений разделительного модуля. Каждая строка соответствует разделительной стоимости единицы, и каждый столбец соответствует или набору сигналов с peaks или время задержания. Количество строк равняется числу элементов в векторном X.
NПоложительное целое число, задающее общее количество выборок.

Описание

Совет

Используйте следующие синтаксисы с данными из любого разделительного метода, который производит данные сигнала, такие как спектроскопия, NMR, электрофорез, хроматография или масс-спектрометрия.

[Xout, Intensitiesout] = msresample(X, Intensities, N) передискретизирует необработанные данные о сигнале с шумом, Intensities. Выходной сигнал имеет N выборки с интервалом, который увеличивает линейно в области значений [min (X) макс. (X)]X может быть линейное или квадратичная функция его индекса. Когда вы устанавливаете входные параметры, таким образом, что субдискретизация происходит, msresample применяет фильтр lowpass прежде, чем передискретизировать, чтобы минимизировать искажение.

Для фильтра сглаживания, msresample использует КИХ-фильтр линейной фазы с ошибочной минимизацией наименьших квадратов. Частота среза установлена самым большим отношением субдискретизации при сравнении тех же областей в X и Xout векторы.

Совет

msresample особенно полезно, когда у вас есть сигналы с различными разделительными единичными векторами, и вы хотите совпадать со шкалами.

msresample (..., 'PropertyName', PropertyValue, ...) вызовы msresample с дополнительными свойствами, которые используют имя свойства / пары значения свойства. Можно задать одно или несколько свойств в любом порядке. Каждый PropertyName должен быть заключен в одинарные кавычки и нечувствительный к регистру. Это имя свойства / пары значения свойства следующие:

msresample(..., 'Uniform', UniformValue, ...), когда UniformValue true, это обеспечивает векторный X быть расположенными равными интервалами. Значением по умолчанию является false.

msresample(..., 'Range', RangeValue, ...) задает 1- 2 вектор с разделительным модулем располагается для выходного сигнала, Intensitiesout. RangeValue должен быть в [min (X) макс. (X)]. Значением по умолчанию является полный спектр [min (X) макс. (X)]. Когда RangeValue значения превышают значения в X, msresample экстраполирует сигнал с нулями и возвращает предупреждающее сообщение.

msresample(..., 'RangeWarnOff', RangeWarnOffValue, ...) управляет возвратом предупреждающего сообщения когда RangeValue значения превышают значения в X. RangeWarnOffValue может быть true или false (значение по умолчанию).

msresample(..., 'Missing', MissingValue, ...), когда MissingValue true, анализирует входной вектор, X, для пропущенных выборок. Значением по умолчанию является false. Если прореживать фактор является большим, проверение на пропущенные выборки не может стоить дополнительного вычислительного времени. Пропущенные выборки могут только быть восстановлены, если исходные разделительные стоимости единицы следуют за линейным или квадратичной функцией X векторный индекс.

msresample(..., 'Window', WindowValue, ...) задает окно, используемое при вычислении параметров для фильтра lowpass. Введите 'Flattop', 'Blackman', 'Hamming', или 'Hanning'. Значением по умолчанию является 'Flattop'.

msresample(..., 'Cutoff', CutoffValue, ...) задает частоту среза. Введите скалярное значение от 0 к 1 (Частота Найквиста или половина частоты дискретизации). По умолчанию, msresample оценивает значение сокращения путем осмотра разделительных единичных векторов, X и XOut. Однако частота среза может быть недооценена если X имеет аномалии.

msresample(..., 'ShowPlot', ShowPlotValue, ...) строит оригинал и передискретизируемый сигнал. Когда msresample называется без выходных аргументов, сигналы построены если ShowPlotValue false. Когда ShowPlotValue true, только первый сигнал в Intensities построен. ShowPlotValue может также содержать индекс к одному из сигналов в Intensities.

Совет

Анализ данных LC/MS требует расширенных объемов памяти от операционной системы.

  • Если вы получаете ошибки, связанные с памятью, попробуйте следующее:

  • Если вы получаете ошибки, связанные с пространством "кучи" Java®, увеличиваете ваше пространство "кучи" Java:

Примеры

свернуть все

В этом примере показано, как передискретизировать массовые данные о спецификации.

Загрузите MAT-файл, включенный с Bioinformatics Toolbox™, который содержит данные о масс-спектрометрии, и затем извлеките m/z и векторы значения интенсивности.

load sample_hi_res;
mz = MZ_hi_res;
y = Y_hi_res;

Отобразите исходные данные на графике.

plot(mz, y, '.')

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

Передискретизируйте спектрограмму, чтобы иметь 10 000 выборок между 2 000 и максимум m/z значение в наборе данных и показать и передискретизируемые и исходные данные.

[mz1,y1] = msresample(mz, y, 10000, 'range',[2000 max(mz)],'SHOWPLOT',true);

Figure contains an axes. The axes with title Signal ID: 1 Cutoff Freq: 0.030859 contains 2 objects of type line. These objects represent Original samples, Up/down-sampled signal.

Представлено до R2006a