Найти локальные максимумы
задает дополнительные параметры для поиска локальных максимумов с помощью одного или нескольких аргументов пары имя-значение. Например, TF = islocalmax(___,Name,Value)islocalmax(A,'SamplePoints',t) находит локальные максимумы A относительно временных отметок, содержащихся в векторе времени t.
Вычислите и постройте график локальных максимумов вектора данных.
x = 1:100;
A = (1-cos(2*pi*0.01*x)).*sin(2*pi*0.15*x);
TF = islocalmax(A);
plot(x,A,x(TF),A(TF),'r*')
Создайте матрицу данных и вычислите локальные максимумы для каждой строки.
A = 25*diag(ones(5,1)) + rand(5,5); TF = islocalmax(A,2)
TF = 5x5 logical array
0 0 1 0 0
0 1 0 0 0
0 0 1 0 0
0 1 0 1 0
0 1 0 0 0
Вычисление локальных максимумов вектора данных относительно временных отметок в векторе t. Используйте 'MinSeparation' параметр для вычисления максимумов с интервалом не менее 45 минут.
t = hours(linspace(0,3,15)); A = [2 4 6 4 3 7 5 6 5 10 4 -1 -3 -2 0]; TF = islocalmax(A,'MinSeparation',minutes(45),'SamplePoints',t); plot(t,A,t(TF),A(TF),'r*')

Укажите метод указания последовательных максимальных значений.
Вычислите локальные максимумы данных, которые содержат последовательные максимумы. Укажите максимум для каждой плоской области на основе первого вхождения этого значения.
x = 0:0.1:5; A = min(0.75, sin(pi*x)); TF1 = islocalmax(A, 'FlatSelection', 'first'); plot(x,A,x(TF1),A(TF1),'r*')

Укажите максимум для каждой плоской области со всеми вхождениями этого значения.
TF2 = islocalmax(A, 'FlatSelection', 'all'); plot(x,A,x(TF2),A(TF2),'r*')

Выберите максимумы в зависимости от их видности.
Вычислите локальные максимумы вектора данных и их видность, а затем постройте их график вместе с данными.
x = 1:100; A = peaks(100); A = A(50,:); [TF1,P] = islocalmax(A); P(TF1)
ans = 1×2
1.7703 3.5548
plot(x,A,x(TF1),A(TF1),'r*') axis tight

Вычислите только наиболее заметный максимум в данных, указав требование к минимальной заметности.
TF2 = islocalmax(A,'MinProminence',2); plot(x,A,x(TF2),A(TF2),'r*') axis tight

A - Входные данныеВходные данные, указанные как вектор, матрица, многомерный массив, таблица или расписание.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | table | timetable
dim - Рабочий размерОперационная размерность, заданная как положительный целочисленный скаляр. По умолчанию islocalmax работает вдоль первого размера, размер которого не равен 1.
Например, если A является матрицей, то islocalmax(A,1) работает вдоль рядов Aвычисление локальных максимумов для каждого столбца.

islocalmax(A,2) работает вдоль колонн Aвычисление локальных максимумов для каждой строки.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
TF = islocalmax(A,'MinProminence',2)'SamplePoints' - Выборочные точкиТочки выборки, указанные как пара, разделенная запятыми, состоящая из 'SamplePoints' и вектор. Точки выборки представляют расположение данных по оси X в A, и должны быть отсортированы и содержать уникальные элементы. Выборочные точки не нуждаются в равномерной выборке. Вектором точек выборки по умолчанию является [1 2 3 ...].
Примечание
Эта пара имя-значение не поддерживается, если входными данными являются timetable. В расписаниях всегда используется вектор времени строки в качестве точек выборки. Чтобы использовать различные точки выборки, необходимо отредактировать расписание так, чтобы время строки содержало нужные точки выборки.
Пример: islocalmax(T,'SamplePoints',0:0.1:10)
Типы данных: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | datetime | duration
'DataVariables' - Табличные переменные для работыvartype нижний индексПеременные таблицы для работы, указанные как пара, разделенная запятыми, состоящая из 'DataVariables' и один из вариантов в этой таблице. 'DataVariables' значение указывает, какие переменные входной таблицы необходимо проверить на наличие локальных максимумов. Тип данных, связанный с указанными переменными, должен быть числовым или logical. Другие переменные в таблице, не указанные 'DataVariables' не обрабатываются, поэтому выходные данные содержат false значения для этих переменных.
| Выбор | Описание | Примеры |
|---|---|---|
| Имя переменной | Вектор символов или скалярная строка, задающая имя переменной одной таблицы |
|
| Вектор имен переменных | Массив ячеек символьных векторов или строковый массив, где каждый элемент является именем переменной таблицы |
|
| Скаляр или вектор переменных индексов | Скаляр или вектор индексов табличных переменных |
|
| Логический вектор | Логический вектор, элементы которого соответствуют переменной таблицы, где |
|
| Дескриптор функции | Дескриптор функции, принимающий переменную таблицы в качестве входного значения и возвращающий логический скаляр |
|
vartype нижний индекс | Подстрочный индекс таблицы, созданный |
|
Пример: islocalmax(T,'DataVariables',["Var1" "Var2" "Var4"])
'MinProminence' - Минимальное значениеМинимальная заметность, указанная как пара, разделенная запятыми, состоящая из 'MinProminence' и неотрицательный скаляр. islocalmax возвращает только локальные максимумы, степень заметности которых равна, по крайней мере, указанному значению.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'ProminenceWindow' - Окно «Заметность»Окно выделения, указанное как пара, разделенная запятыми, состоящая из 'ProminenceWindow' и положительный целочисленный скаляр, двухэлементный вектор положительных целых чисел, скаляр положительной длительности или двухэлементный вектор положительных длительностей. Значение определяет окно соседних точек, для которого вычисляется степень выделения для каждого локального максимума.
Если значение окна является положительным целым скаляром k, то окно центрируется относительно каждого локального максимума и содержит k-1 соседних элементов. Если k равно четному, то окно центрируется относительно текущего и предыдущего элементов. Если локальный максимум находится в пределах плоской области, то islocalmax обрабатывает всю плоскую область как центральную точку окна.
Если значение является двухэлементным вектором [b f] положительных целых чисел, то окно содержит локальный максимум, b элементы назад, и f элементы вперед. Если локальный максимум находится в пределах плоской области, то окно запускается b элементы перед первой точкой области и заканчиваются f элементы после последней точки региона.
Когда входные данные являются расписанием или когда 'SamplePoints' указан как datetime или duration вектор, значение окна должно иметь тип durationи окно вычисляется относительно точек выборки.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | duration
'FlatSelection' - Индикатор плоской области'center' (по умолчанию) | 'first' | 'last' | 'all'Индикатор плоской области при последовательном повторении локального максимального значения, определяемого как разделенная запятыми пара, состоящая из 'FlatSelection' и одно из следующих:
'center' - в качестве локального максимума указывается только центральный элемент плоской области. Элемент TF соответствующий центру плоского элемента равен 1 и равен 0 для остальных плоских элементов.
'first' - в качестве локального максимума указывается только первый элемент плоской области. Элемент TF соответствует началу плоского элемента 1 и равен 0 для остальных плоских элементов.
'last' - в качестве локального максимума указывается только последний элемент плоской области. Элемент TF соответствующий конец плоского элемента равен 1 и равен 0 для остальных плоских элементов.
'all' - Укажите все элементы плоской области в качестве локальных максимумов. Элементы TF соответствующие всем частям плоскости равны 1.
При использовании 'MinSeparation' или 'MaxNumExtrema' пары имя-значение, точки плоской области совместно считаются одной точкой максимума.
'MinSeparation' - Минимальное разделениеМинимальное разделение между локальными максимумами, определяемое как разделенная запятыми пара, состоящая из 'MinSeparation' и неотрицательный скаляр. Значение разделения определяется в тех же единицах, что и вектор точек выборки, который равен [1 2 3 ...] по умолчанию. Если значение разделения больше 0, islocalmax выбирает наибольший локальный максимум и игнорирует все остальные локальные максимумы в пределах указанного разделения. Этот процесс повторяется до тех пор, пока не будут обнаружены локальные максимумы.
Если вектор точек выборки имеет тип datetime, значение разделения должно иметь тип duration.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | duration
'MaxNumExtrema' - Максимальное количество максимумовМаксимальное количество обнаруженных максимумов, указанное как пара, разделенная запятыми, состоящая из 'MaxNumExtrema' и положительный целочисленный скаляр. islocalmax находит не более указанного числа наиболее заметных максимумов, которое является длиной рабочего размера по умолчанию.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
TF - Индикатор локальных максимумовИндикатор локальных максимумов, возвращаемый как вектор, матрица или многомерный массив. TF имеет тот же размер, что и A.
Типы данных: logical
P - ВидностьВидность, возвращаемая как вектор, матрица или многомерный массив. P имеет тот же размер, что и A.
Если входные данные имеют целочисленный тип со знаком или без знака, то P - целое число без знака.
Заметность локального максимума (или пика) измеряет то, как пик выделяется по высоте и расположению относительно других пиков.
Чтобы измерить заметность пика, сначала протяните горизонтальную линию от пика влево и вправо от пика. Найдите, где линия пересекает данные слева и справа, которые будут либо другим пиком, либо концом данных. Отметьте эти расположения как внешние конечные точки левого и правого интервалов. Затем найдите самую нижнюю долину в обоих интервалах. Возьмите большую из этих двух долин и измерьте расстояние по вертикали от долины до вершины. Это расстояние является выдающимся.
Для вектора x, самое большое значение самое большое max(x)-min(x).
Примечания и ограничения по использованию:
Высокое расписание не поддерживается.
Необходимо указать значение для 'ProminenceWindow' пара имя-значение.
'MaxNumExtrema', 'MinSeparation', и 'SamplePoints' пары имя-значение не поддерживаются.
Значение 'DataVariables' не может быть дескриптором функции.
Дополнительные сведения см. в разделе Массивы Tall.
Примечания и ограничения по использованию:
Необходимо включить поддержку массивов переменного размера.
'ProminenceWindow' пара имя-значение не поддерживается.
Найти местные экстремумы | ischange | islocalmin | isoutlier | max
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.