msresample

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

Синтаксис

[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) max(X)]. X может быть линейным или квадратичной функцией его индекса. Когда вы устанавливаете входные параметры, таким образом, что субдискретизация происходит, msresample применяет фильтр lowpass прежде, чем передискретизировать, чтобы минимизировать искажение.

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

Совет

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

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

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

msresample(..., 'Range', RangeValue, ...) задает 1-by-2 вектор с областью значений разделительного модуля для выходного сигнала, Intensitiesout. RangeValue должен быть в [min(X) max(X)]. Значение по умолчанию является полным спектром [min(X) max(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, '.')

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

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

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

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