issortedrows

Определите, сортируются ли матрица или строки таблицы

Синтаксис

TF = issortedrows(A)
TF = issortedrows(A,column)
TF = issortedrows(___,direction)
TF = issortedrows(___,Name,Value)
TF = issortedrows(tblA)
TF = issortedrows(tblA,'RowNames')
TF = issortedrows(tblA,rowDimName)
TF = issortedrows(tblA,vars)
TF = issortedrows(___,direction)
TF = issortedrows(___,Name,Value)

Описание

пример

TF = issortedrows(A) возвращает логический скаляр 1 (true), когда элементы первого столбца матричного A перечислены в порядке возрастания. В противном случае issortedrows возвращается 0 (false). Когда первый столбец имеет последовательные повторные элементы, issortedrows определяет, в порядке возрастания ли следующий столбец, и повторяет это поведение для следования за равными значениями.

пример

TF = issortedrows(A,column) возвращается 1, когда A сортируется на основе столбцов, заданных в векторном column. Например, issortedrows(A,[4 6]) сначала проверяет, в порядке возрастания ли четвертый столбец A, то проверки, если шестой столбец в порядке возрастания, чтобы повредить связи.

пример

TF = issortedrows(___,direction) возвращается 1, когда первый столбец A находится в порядке, заданном direction для любого из предыдущих синтаксисов. Например, issortedrows(A,'monotonic') проверяет, ли первый столбец A в порядке возрастания или убывания. direction может также быть массивом ячеек из символьных векторов, представляющим несколько направлений для каждого проверяемого столбца. Например, issortedrows(A,[2 3],{'ascend' 'descend'}) проверяет, в порядке возрастания ли второй столбец A, то проверки, если третий столбец должен в порядке убывания повредить связи.

пример

TF = issortedrows(___,Name,Value) задает дополнительные параметры для проверки порядка сортировки. Например, issortedrows(A,'ComparisonMethod','abs') проверяет, сортируются ли элементы в первом столбце A по значению.

пример

TF = issortedrows(tblA) проверяет, основаны ли строки таблицы в порядке возрастания на элементах в первой переменной. Если элементы в первой переменной повторяются, то issortedrows проверяет элементы во вторую переменную и так далее.

Если tblA является расписанием, то issortedrows проверяет, основаны ли строки tblA в порядке возрастания на его временах строки. Времена строки расписания маркируют строки по первому измерению расписания.

пример

TF = issortedrows(tblA,'RowNames') проверяет, основаны ли строки таблицы в порядке возрастания на ее именах строки. Имена строки таблицы маркируют строки по первому измерению таблицы.

Этот синтаксис не поддержан, когда tblA является расписанием.

пример

TF = issortedrows(tblA,rowDimName) проверяет, сортируются ли строки таблицы по строке, маркирует rowDimName по первому измерению.

  • Если tblA является таблицей, то метки являются именами строки.

  • Если tblA является расписанием, то метки являются временами строки.

пример

TF = issortedrows(tblA,vars) проверяет, основаны ли строки таблицы в порядке возрастания на элементах в переменных vars. Например, если Age и Weight являются переменными tblA, то issortedrows(tblA,{'Age','Weight'}) проверяет, в порядке возрастания ли строки возрастом, то в развес повредить связи.

  • Если tblA является таблицей с именами строки, то vars может включать имена строки.

  • Если tblA является расписанием, то vars может включать времена строки.

пример

TF = issortedrows(___,direction) проверяет, сортируется ли таблица в порядке, заданном direction для какого-либо из предыдущих табличных синтаксисов. direction может быть единственным порядком сортировки, таким как 'descend' или 'monotonic', который применяется к каждой заданной переменной, имени строки, или время строки. direction может также быть массивом ячеек, элементы которого содержат различные порядки сортировки для каждой заданной переменной, имени строки, или время строки, когда issortedrows работает с.

пример

TF = issortedrows(___,Name,Value) задает дополнительные параметры для сортировки таблиц. Например, issortedrows(tblA,'Var1','MissingPlacement','first') проверяет, что недостающие элементы в Var1, такие как NaN или NaT, помещаются в начале таблицы.

Примеры

свернуть все

Создайте матрицу и определите, основаны ли ее строки в порядке возрастания на значениях в первом столбце. Поскольку первый столбец имеет повторный элемент, sortrows смотрит на второй столбец, чтобы определить, сортируются ли матричные строки.

A = [1 2 9; 1 5 8; 4 0 7]
A = 3×3

     1     2     9
     1     5     8
     4     0     7

TF = issortedrows(A)
TF = logical
   1

Определите, основаны ли строки A в порядке возрастания на значениях в третьем столбце.

TF = issortedrows(A,3)
TF = logical
   0

Определите, основаны ли строки A в порядке убывания на значениях в третьем столбце.

TF = issortedrows(A,3,'descend')
TF = logical
   1

Создайте матрицу, содержащую комплексные числа, и определите, основаны ли ее строки в порядке возрастания на действительных частях элементов в первом столбце. Поскольку элементы в первом столбце имеют равные действительные части, issortedrows затем проверяет мнимые части, чтобы повредить связь.

A = [1+i 2i; 1+2i 3+4i]
A = 2×2 complex

   1.0000 + 1.0000i   0.0000 + 2.0000i
   1.0000 + 2.0000i   3.0000 + 4.0000i

TF = issortedrows(A,'ComparisonMethod','real')
TF = logical
   1

Для таблицы, которая описывает терпеливую информацию для пяти человек, определите, как строки таблицы сортируются.

Составьте таблицу с четырьмя переменными и определите, основаны ли строки таблицы в порядке возрастания на возрасте. Поскольку переменная возраста содержит повторный элемент, issortedrows затем проверяет следующий столбец (Height), чтобы повредить связь.

LastName = {'Sweet';'Jacobson';'Wang';'Joiner';'Berger'};
Age = [38;38;40;43;49];
Height = [69;71;64;67;64];
Weight = [176;163;131;133;119];
BloodPressure = [124 93; 109 77; 125 83; 117 75; 122 80];

tblA = table(Age,Height,Weight,BloodPressure,'RowNames',LastName)
tblA=5×4 table
                Age    Height    Weight    BloodPressure
                ___    ______    ______    _____________

    Sweet       38       69       176       124     93  
    Jacobson    38       71       163       109     77  
    Wang        40       64       131       125     83  
    Joiner      43       67       133       117     75  
    Berger      49       64       119       122     80  

TF = issortedrows(tblA)
TF = logical
   1

Проверьте, сортируются ли строки таблицы по фамилии, которые являются именами строки для tblA.

TF = issortedrows(tblA,'RowNames')
TF = logical
   0

Проверьте, в порядке возрастания ли строки таблицы возрастом, то в порядке убывания в развес.

TF = issortedrows(tblA,{'Age','Weight'},{'ascend','descend'})
TF = logical
   1

Создайте расписание и проверьте, что строки расписания в порядке возрастания основаны на временах строки. Также проверьте, что недостающие элементы помещаются в последний раз.

Time = [seconds(1:3) NaN NaN]';
TT = timetable(Time,[98;97.5;97.9;98.1;99.9],[120;111;119;117;112],...
               'VariableNames',{'Temperature','Distance'})
TT=5×2 timetable
     Time      Temperature    Distance
    _______    ___________    ________

    1 sec           98          120   
    2 sec         97.5          111   
    3 sec         97.9          119   
    NaN sec       98.1          117   
    NaN sec       99.9          112   

TF = issortedrows(TT,'Time','MissingPlacement','last')
TF = logical
   1

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

свернуть все

Входной массив, заданный как вектор - столбец или матрица.

Типы данных: удвойтесь | единственный | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический | char | строка | ячейка | категориальный | datetime | длительность
Поддержка комплексного числа: Да

Столбец, сортирующий вектор, заданный как ненулевой целочисленный скаляр или вектор ненулевых целых чисел. Каждое заданное целочисленное значение указывает на столбец, чтобы проверить на порядок сортировки. Отрицательные целые числа указывают, что порядок сортировки убывает.

Сортировка направления, заданного как одно из следующего:

  • 'ascend' (значение по умолчанию) — Проверки, если данные в порядке возрастания. Данные могут содержать последовательные повторные элементы.

  • 'descend' — Проверки, если данные в порядке убывания. Данные могут содержать последовательные повторные элементы.

  • 'monotonic' — Проверки, если данные находится в порядке убывания или порядке по возрастанию. Данные могут содержать последовательные повторные элементы.

  • 'strictascend' — Проверки, если данные находится в строго порядке по возрастанию. Данные не могут содержать копию или недостающие элементы.

  • 'strictdescend' — Проверки, если данные находится в строго порядке убывания. Данные не могут содержать копию или недостающие элементы.

  • 'strictmonotonic' — Проверки, если данные находится в строгом убывании или строго порядке по возрастанию. Данные не могут содержать копию или недостающие элементы.

direction может также быть массивом ячеек, содержащим список этих векторов символов, где каждый элемент в списке соответствует столбцу A. Например, issortedrows(A,[2 4],{'ascend' 'descend'}) сначала проверяет, основаны ли строки A в порядке возрастания на втором столбце. Затем чтобы повредить связи, issortedrows проверяет, основаны ли строки в порядке убывания на четвертом столбце.

Если column задан, то число элементов в массиве ячеек должно совпадать с длиной column. Когда column не задан, массив ячеек должен содержать элемент для каждого столбца A или единственный элемент, который применяется ко всем столбцам.

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

Входная таблица, заданная как таблица или расписание. Каждая переменная в tblA должна быть допустимым входным параметром к sort или sortrows.

Таблица Типы данных: | расписание

Имя первой размерности входной таблицы или расписания, заданного как вектор символа.

  • Если tblA является таблицей с именами строки, то rowDimName является именем первой размерности таблицы. По умолчанию именем первой размерности является 'Row'. Имена размерности являются свойством таблиц. Можно получить доступ к именам размерности tblA с помощью tblA.Properties.DimensionNames .

  • Если tblA является расписанием, то rowDimName является именем вектора времен строки. Можно задать его имя, когда вы создаете расписание, такое как Time или Date. Можно также получить доступ к именам размерности с помощью tblA.Properties.DimensionNames .

Пример: Если таблица T имеет имена строки, и вы поменяли имя первой размерности с помощью T.Properties.DimensionName {1} = 'Имя', то issortedrows (T, 'Имя') проверки, если таблица сортируется по именам строки.

Пример: Если TT расписания имеет временной вектор под названием Дата, то issortedrows (TT, 'Дата') проверки, если расписание сортируется по датам и временам, которые содержит Дата.

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

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

Если элемент vars является положительным целым числом, то issortedrows проверяет, в порядке возрастания ли строки в соответствующей переменной в tblA. Если элемент vars является отрицательным целым числом, то issortedrows проверяет, ли строки в соответствующей переменной в tblA в порядке убывания.

Пример: issortedrows (tblA, {'Высота', 'Вес'}) проверяет, в порядке возрастания ли строки tblA, сначала переменной Высотой, то переменным Весом, чтобы повредить связи.

Пример: issortedrows (tblA, [1 4]) сначала проверяет, основаны ли строки таблицы в порядке возрастания на первой переменной, то связи пропусков путем проверки, основаны ли строки в порядке возрастания на четвертой переменной.

Пример: issortedrows (TT, {'Время', 'X'}) проверяет, в порядке возрастания ли времена строки расписания, то связи пропусков путем проверки, основаны ли строки в порядке возрастания на табличной переменной 'X'.

Типы данных: удвойтесь | единственный | char | ячейка | логический

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

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

Пример: issortedrows (A, 'MissingPlacement', 'в последний раз')

Размещение отсутствующих значений (NaN, NaT, <undefined> и missing) заданный как пара, разделенная запятой, состоящая из 'MissingPlacement' и одно из следующего:

  • 'auto' Недостающие элементы требуются, чтобы быть помещенными в последний раз для порядка по возрастанию и сначала для порядка убывания, чтобы возвратиться 1.

  • 'first' — Недостающие элементы требуются, чтобы занять первое место, чтобы возвратиться 1.

  • 'last' — Недостающие элементы требуются, чтобы быть помещенными в последний раз, чтобы возвратиться 1.

Метод сравнения элемента, заданный как пара, разделенная запятой, состоящая из 'ComparisonMethod' и одно из следующего:

  • 'auto' Проверьте, сортируются ли строки A по real(A), когда A действителен, и проверьте, сортируются ли строки A по abs(A), когда A является комплексным.

  • действительный Проверьте, сортируются ли строки A по real(A), когда A является действительным или комплексным. Если столбец имеет элементы с последовательными равными действительными частями, то проверьте imag(A), чтобы повредить связи.

  • abs Проверьте, сортируются ли строки A по abs(A), когда A является действительным или комплексным. Если столбец имеет элементы с последовательным равным значением, то проверьте angle(A) в интервал (-π,π], чтобы повредить связи.

Расширенные возможности

Смотрите также

| |

Введенный в R2017a

Была ли эта тема полезной?