msbackadj

Исправьте базовую линию сигнала с пиками

Описание

пример

yOut = msbackadj(X,Intensities) настраивает переменную базовую линию необработанного сигнала с peaks путем выполнения следующих шагов.

  1. Оцените базовую линию в нескольких переключенных окнах ширины 200 разделительных модулей.

  2. Регресс различная базовая линия к точкам окна с помощью приближения сплайна.

  3. Настройте базовую линию пиковых сигналов, предоставленных входом Intensities.

  4. Возвратите настроенные значения интенсивности в выходной матрице yOut.

пример

yOut = msbackadj(X,Intensities,Name,Value) дополнительные опции наборов заданы одним или несколькими аргументами пары "имя-значение". Например, msbackadj(X,Intensities,'WindowSize',300) устанавливает ширину окна перемены к 300 разделительным модулям.

Примеры

свернуть все

Загрузите демонстрационные массовые данные о спецификации включая MZ_lo_res, вектор из m/z значений и Y_lo_res, матрица значений интенсивности.

load sample_lo_res

Настройте базовую линию группы спектрограмм и покажите только третий спектр и его предполагаемое образование.

YB = msbackadj(MZ_lo_res,Y_lo_res,'ShowPlot',3);

Figure contains an axes. The axes with title Signal ID: 3 contains 3 objects of type line. These objects represent Original Signal, Regressed baseline, Estimated baseline points.

Оцените базовую линию для каждого спектра в Y_lo_res использование анонимной функции, чтобы описать m/z зависимый параметр. Затем постройте предполагаемый фон для четвертого спектра.

wf = @(mz) 200 + .001 .* mz;
msbackadj(MZ_lo_res,Y_lo_res,'StepSize',wf,'ShowPlot',4);

Figure contains an axes. The axes with title Signal ID: 4 contains 3 objects of type line. These objects represent Original Signal, Regressed baseline, Estimated baseline points.

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

свернуть все

Разделительные стоимости единицы для набора сигналов с peaks в виде вектора.

Число элементов в векторе равняется количеству строк в Intensities. Разделительный модуль может определить количество длины волны, частоты, расстояния, время или m/z отношение в зависимости от инструмента, который генерирует данные сигнала.

Типы данных: double

Значения интенсивности для набора peaks, который совместно использует область значений разделительного модуля в виде числовой матрицы.

Каждая строка соответствует разделительной стоимости единицы, и каждый столбец соответствует или набору сигналов с peaks или время задержания. Количество строк равняется числу элементов в X. Данные сигнала могут прибыть из любого разделительного метода, такого как спектроскопия, NMR, электрофорез, хроматография или масс-спектрометрия.

Типы данных: double

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример:

Сдвиг размера окна в виде положительной скалярной величины или указателя на функцию. По умолчанию, msbackadj оценочная базовая линия указывает для окон с шириной 200 разделительных модулей.

Если вы задаете указатель на функцию, функция выполнена в соответствующем X значения и возвращают переменную ширину для окна. Определение указателя на функцию полезно, когда разрешение сигнала отличается в различных областях.

Результат msbackadj зависит от размера шага и размера окна. Задайте параметры на основе ширины вашего peaks в сигнале и присутствии возможных дрейфов. Если вы имеете более широкий peaks к концу сигнала, рассматриваете использование переменных размеров окна и/или размеров шага.

Пример: 'WindowSize',300

Типы данных: double | function_handle

Размер шага для окна перемены в виде положительной скалярной величины или указателя на функцию. По умолчанию, msbackadj оценочные базовые точки для окон поместили каждые 200 разделительных модулей.

Если вы задаете указатель на функцию, функция выполнена по соответствующим разделительным стоимостям единицы и возвращает расстояние между смежными окнами.

Пример: 'StepSize',150

Типы данных: double | function_handle

Метод, чтобы регрессировать окно оценил точки к мягкой кривой в виде одного из следующего:

  • 'pchip' Сохраняющая форму кусочная кубичная интерполяция. Интерполированное значение в точке запроса основано на сохраняющей форму кусочной кубичной интерполяции значений в соседних узлах решетки.

  • 'linear' — Линейная интерполяция. Интерполированное значение в точке запроса основано на линейной интерполяции значений в соседних узлах решетки в каждой соответствующей размерности.

  • 'spline' — Интерполяция сплайна. Интерполированное значение в точке запроса основано на кубичной интерполяции значений в соседних узлах решетки в каждой соответствующей размерности.

Пример: 'RegressionMethod','linear'

Типы данных: char | string

Метод, чтобы найти вероятную базовую линию (фон) значение в каждом окне в виде одного из следующего:

  • 'quantile' — Значение квантиля установлено к 10%.

  • 'em' — Каждая выборка является независимым политиком, и тождественно распределенный (i.i.d) чертят любого из двух нормальных распределенных классов (фон или peaks). Поскольку метка класса скрыта, распределения оцениваются с алгоритмом Максимизации Ожидания. Окончательное базовое значение является средним значением фонового класса.

Пример: 'EstimationMethod','em'

Типы данных: char | string

Метод, чтобы сглаживать кривую предполагаемых точек в виде одного из следующего:

  • 'none' — Никакое сглаживание.

  • 'lowess' — Линейная подгонка.

  • 'loess' — Квадратичная подгонка.

  • 'rlowess' — Устойчивая линейная подгонка.

  • 'rloess' — Устойчивая квадратичная подгонка.

Пример: 'SmoothMethod','lowess'

Типы данных: char | string

Значение квантиля в виде положительной скалярной величины между 0 и 1.

Пример: 'QuantileValue',0.2

Типы данных: double

Отметьте, чтобы сохранить высоту самого высокого пика в сигнале в виде true или false. По умолчанию пиковые высоты не сохраняются.

Пример: 'PreserveHeights',true

Типы данных: логический

Отметьте, чтобы построить регрессировавшую базовую линию, исходный сигнал, и оценил базовые точки в виде trueложь, или положительное целое число.

Поведение по умолчанию следующие:

  • Когда вы вызываете msbackadj без выходного аргумента показывают график. Только первый сигнал от входа Intensities построен.

  • Когда вы вызываете msbackadj с выходным аргументом не показывают график. Но можно получить график также установки 'ShowPlot' к true.

Можно также задать индекс к одному из сигналов (столбцы) в Intensities показать соответствующий график того сигнала.

Пример: 'ShowPlot',5

Типы данных: double | logical

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

свернуть все

Настроенные значения интенсивности, возвращенные как матрица.

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