Найдите локальные максимумы
TF = islocalmax(A)
TF = islocalmax(A,dim)
TF = islocalmax(___,Name,Value)
[TF,P] = islocalmax(___)
задает дополнительные параметры для нахождения локальных максимумов с помощью одного или нескольких аргументов пары "имя-значение". Например, TF
= islocalmax(___,Name,Value
)islocalmax(A,'SamplePoints',t)
находит локальные максимумы A
относительно меток времени содержавшимися во временном векторе t
.
[
также возвращает выдающееся положение, соответствующее каждому элементу TF
,P
] = islocalmax(___)A
для любого из предыдущих синтаксисов.
Вычислите и постройте локальные максимумы вектора данных.
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
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
TF = islocalmax(A,'MinProminence',2)
'MinProminence'
Минимальное выдающееся положениеМинимальное выдающееся положение, заданное как пара, разделенная запятой, состоящая из 'MinProminence'
и неотрицательного скаляра. islocalmax
возвращает только локальные максимумы, выдающееся положение которых является, по крайней мере, заданным значением.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
'ProminenceWindow'
— ProminenceОкно Prominence, заданное как пара, разделенная запятой, состоящая из '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'
и одно из следующего:
центр
Укажите только на центральный элемент плоской области как локальный максимум. Элемент TF
, соответствующего центру плоского, равняется 1 и 0 для остающихся плоских элементов.
'first'
— Укажите только на первый элемент плоской области как локальный максимум. Элемент TF
, соответствующего запуску плоского, равняется 1 и 0 для остающихся плоских элементов.
'last'
— Укажите только на последний элемент плоской области как локальный максимум. Элемент TF
, соответствующего в конец плоского, равняется 1 и 0 для остающихся плоских элементов.
все
Укажите на все элементы плоской области как локальные максимумы. Элементы 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
'SamplePoints'
'SamplePoints' Точки выборки, заданные как пара, разделенная запятой, состоящая из 'SamplePoints'
и вектора. Точки выборки представляют местоположение данных в A
. Точки выборки не должны быть однородно выбраны, но должны быть отсортированы с уникальными элементами. По умолчанию вектором точек выборки является [1 2 3 ...]
.
islocalmax
не поддерживает эту пару "имя-значение", когда входные данные являются расписанием.
Типы данных: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| datetime
| duration
'DataVariables'
Табличные переменныеТабличные переменные, заданные как пара, разделенная запятой, состоящая из 'DataVariables'
и имени переменной, массива ячеек имен переменных, числового вектора, логического вектора или указателя на функцию. Значение 'DataVariables'
указывает который столбцы входной таблицы или расписания, чтобы работать с. Это значение может быть одним из следующего:
Вектор символов, задающий одно имя табличной переменной
Массив ячеек из символьных векторов, где каждый элемент является именем табличной переменной
Вектор индексов табличной переменной
Логический вектор, элементы которого каждый соответствует табличной переменной, где true
включает соответствующую переменную и false
, исключает его
Указатель на функцию, который берет табличную переменную в качестве входа и возвращает логический скаляр
Заданные табличные переменные должны иметь числовой или тип logical
.
Пример: 'Age'
Пример: {'Height','Weight'}
Пример: @isnumeric
Типы данных: char
| cell
| double
| single
| logical
| function_handle
Tf
Локальный индикатор максимумовЛокальный индикатор максимумов, возвращенный как вектор, матрица или многомерный массив. TF
одного размера как A
.
Типы данных: логический
P
Выдающееся положениеВыдающееся положение, возвращенное как вектор, матрица или многомерный массив. P
одного размера как A
.
Если входные данные имеют целое число со знаком или тип беззнаковых целых чисел, то P
является беззнаковым целым.
Выдающееся положение локального максимума (или пик) измеряется, как пик выделяется относительно своей высоты и местоположения относительно другого peaks.
Чтобы измерить выдающееся положение пика, сначала расширьте горизонтальную строку от пика налево и справа от пика. Найдите, где строка пересекает данные слева и справа, который или будет другим пиком или концом данных. Отметьте эти местоположения как внешние конечные точки левых и правых интервалов. Затем, найдите самую низкую долину в обоих интервалах. Возьмите большие из этих двух долин и измерьте вертикальное расстояние от той долины до пика. Это расстояние является выдающимся положением.
Для векторного x
самое большое выдающееся положение в большей части max(x)-min(x)
.
Указания и ограничения по применению:
Длинные расписания не поддержаны.
Необходимо задать значение для пары "имя-значение" 'ProminenceWindow'
.
'MaxNumExtrema'
, 'MinSeparation'
и пары "имя-значение" 'SamplePoints'
не поддержаны.
Значение 'DataVariables'
не может быть указателем на функцию.
Для получения дополнительной информации см. Раздел "Высокие массивы".
ischange
| islocalmin
| isoutlier
| max
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.