Как транспонировать матрицу в матлабе
Документация
Много функций в MATLAB® могут взять элементы существующего массива и поместить их в различную форму или последовательность. Это может быть полезно для предварительной обработки ваших данных для последующих расчетов или анализа данных.
Изменение
reshape функционируйте изменяет размер и форму массива. Например, измените форму матрицы 3 на 4 к матрице 2 на 6.
Транспонирование и зеркальное отражение
Создайте 3х3 матрицу и вычислите транспонировать.
Подобный оператор ‘ вычисляет сопряженное транспонирование для комплексных матриц. Эта операция вычисляет сопряженное комплексное число каждого элемента и транспонирует его. Создайте комплексную матрицу 2 на 2 и вычислите ее сопряженное транспонирование.
flipud инвертирует строки матрицы в направлении «сверху вниз» и fliplr инвертирует столбцы в направлении «слева направо».
Перемена и вращение
Можно переключить элементы массива определенным числом положений с помощью circshift функция. Например, создайте матрицу 3 на 4 и переключите ее столбцы направо 2. Второй аргумент [0 2] говорит circshift переключать строки 0 мест и переключать столбцы 2 места направо.
rot90 функция может вращать матрицу против часовой стрелки 90 градусами.
Сортировка
Сортировка данных в массиве является также ценным инструментом, и MATLAB предлагает много подходов. Например, sort функциональные виды элементы каждой строки или столбца матрицы отдельно в порядке возрастания или убывания. Создайте матричный A и вид каждый столбец A в порядке возрастания.
Сортировка каждой строки в порядке убывания. Второе значение аргумента 2 указывает, что вы хотите отсортировать построчный.
Чтобы отсортировать целые строки или столбцы друг относительно друга, используйте sortrows функция. Например, отсортируйте строки A в порядке возрастания согласно элементам в первом столбце. Положения изменения строк, но порядок элементов в каждой строке сохраняются.
Похожие темы
Открытый пример
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
Документация MATLAB
Поддержка
© 1994-2021 The MathWorks, Inc.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.
Документация
Матрицы в среде MATLAB
Создание матриц
MATLAB имеет много функций, которые создают различные виды матриц. Например, можно создать симметрическую матрицу с записями на основе треугольника Паскаля:
Другим примером является 3 2 прямоугольная матрица случайных целых чисел. В этом случае первый вход к randi описывает область значений возможных значений для целых чисел, и вторые два входных параметров описывают количество строк и столбцов.
Для получения дополнительной информации о создании и работе с матрицами, смотрите Создание, конкатенацию и расширение матрицы.
Добавление и вычитание матриц
Сложение и вычитание требуют, чтобы обе матрицы имели совместимые размерности. Если размерности несовместимы, ошибка заканчивается:
Для получения дополнительной информации см. Массив по сравнению Матричные операции.
Векторные произведения и транспонируют
Если x и y являются оба действительными вектор-столбцами, то продукт x*y не задан, но эти два продукта
Комплексное сопряженное транспонирование z :
Неспрягаемый комплекс транспонирует, где комплексная часть каждого элемента сохраняет свой знак, обозначается z.’ :
Умножение матриц
Прямоугольные умножения матриц должны удовлетворить условия совместимости размерности. Поскольку A имеет размер 3х3, и C 3 2, можно умножить их, чтобы добраться 3 2 результат (общие внутренние отмены размерности):
Однако умножение не работает в обратном порядке:
Можно умножить что-либо со скаляром:
Единичная матрица
Общепринятое математическое обозначение использует прописную букву I, чтобы обозначить единичные матрицы, матрицы различных размеров с единицами на основной диагонали и нулях в другом месте. Эти матрицы имеют свойство, что A I = A и I A = A каждый раз, когда размерности совместимы.
Исходная версия MATLAB не могла использовать I с этой целью, потому что это не различало прописные и строчные буквы, и i уже служил индексом и как комплексной единицей. Таким образом, английская игра слов языка была введена. Функция
возвращает m-by- n прямоугольная единичная матрица, и eye(n) возвращает n-by- n квадратная единичная матрица.
Матричная инверсия
Продукт тензора Кронекера
Кронекеров продукт часто используется с матрицами нулей и единиц, чтобы создать повторенные копии маленьких матриц. Например, если X является матрицей 2 на 2
и I = eye(2,2) является единичной матрицей 2 на 2, затем:
Векторные и матричные нормы
В случаях, где вы хотите вычислить норму каждой строки или столбец матрицы, можно использовать vecnorm :
Используя многопоточное вычисление с функциями линейной алгебры
MATLAB поддерживает многопоточное вычисление во многой линейной алгебре и поэлементных числовых функциях. Эти функции автоматически выполняются на нескольких потоках. Для функции или выражения, чтобы выполниться быстрее на нескольких центральных процессорах, много условий должны быть верными:
Функция выполняет операции, что легко раздел в разделы, которые выполняются одновременно. Эти разделы должны смочь выполниться с небольшой связью между процессами. Они должны потребовать немногих последовательных операций.
Размер данных является достаточно большим так, чтобы любые преимущества параллельного выполнения перевесили время, требуемое разделить данные и управлять отдельными потоками выполнения. Например, большинство функций убыстряется только, когда массив содержит несколько тысяч элементов или больше.
Операция не ограничена памятью; время вычислений не во власти времени доступа к памяти. Как правило сложные функции ускоряют больше, чем простые функции.
Документация
Транспонируйте вектор или матрицу
Синтаксис
Описание
B = transpose( A ) альтернативный путь состоит в том, чтобы выполнить A.’ и включает перегрузку операторов для классов.
Примеры
Действительная матрица
Комплексная матрица
Входные параметры
A — Входной массив
вектор | матрица
Входной массив в виде вектора или матрицы.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | cell | categorical | datetime | duration | calendarDuration
Поддержка комплексного числа: Да
Советы
Расширенные возможности
Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.
Генерация кода графического процессора
Сгенерируйте код CUDA® для NVIDIA® графические процессоры с помощью GPU Coder™.
Генерация HDL-кода
Сгенерируйте Verilog и код VHDL для FPGA и проекты ASIC с помощью HDL Coder™.
Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.
Массивы графического процессора
Ускорьте код путем работы графического процессора (GPU) с помощью Parallel Computing Toolbox™.
Распределенные массивы
Большие массивы раздела через объединенную память о вашем кластере с помощью Parallel Computing Toolbox™.
Смотрите также
Открытый пример
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
Документация MATLAB
Поддержка
© 1994-2021 The MathWorks, Inc.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.
Документация
Матрицы в среде MATLAB
Создание матриц
MATLAB имеет много функций, которые создают различные виды матриц. Например, можно создать симметрическую матрицу с записями на основе треугольника Паскаля:
Другим примером является 3 2 прямоугольная матрица случайных целых чисел. В этом случае первый вход к randi описывает область значений возможных значений для целых чисел, и вторые два входных параметров описывают количество строк и столбцов.
Вектор-столбцом является m-by-1 матрица, вектор-строка является 1 n матрицей, и скаляр является матрицей 1 на 1. Чтобы задать матрицу вручную, используйте квадратные скобки [ ] обозначить начало и конец массива. В скобках используйте точку с запятой ; обозначить конец строки. В случае скаляра (матрица 1 на 1), не требуются скобки. Например, эти операторы производят вектор-столбец, вектор-строку и скаляр:
Для получения дополнительной информации о создании и работе с матрицами, смотрите Создание, конкатенацию и расширение матрицы.
Сложение и вычитание матриц
Сложение и вычитание требуют, чтобы обе матрицы имели совместимые размерности. Если размерности несовместимы, ошибка заканчивается:
Для получения дополнительной информации см. Массив по сравнению Матричные операции.
Векторные произведения и транспонирование
Для векторов перемещение превращает вектор-строку в вектор-столбец (и наоборот):
Если x и y оба действительные вектор-столбцы, затем продукт x*y не задан, но эти два продукта
Комплексное сопряженное транспонирование z :
Неспрягаемый комплекс транспонирует, где комплексная часть каждого элемента сохраняет свой знак, обозначается z.’ :
Для комплексных векторов, эти два скалярных произведения x’*y и y’*x сопряженные комплексные числа друг друга и скалярное произведение x’*x из комплексного вектора с собой действительно.
Умножение матриц
Матрица A может быть умножена справа вектор-столбцом и слева вектором-строкой:
Прямоугольные умножения матриц должны удовлетворить условиям совместимости размерности. Начиная с A имеет размер 3х3 и C 3 2, можно умножить их, чтобы добраться 3 2 результат (общие внутренние отмены размерности):
Однако умножение не работает в обратном порядке:
Можно умножить что-либо со скаляром:
Единичная матрица
Общепринятое математическое обозначение использует прописную букву I, чтобы обозначить единичные матрицы, матрицы различных размеров с единицами на основной диагонали и нулях в другом месте. Эти матрицы имеют свойство, что A I = A и I A = A каждый раз, когда размерности совместимы.
Исходная версия MATLAB не могла использовать I с этой целью, потому что это не различало прописные и строчные буквы, и i уже служил индексом и как комплексной единицей. Таким образом, английская игра слов языка была введена. Функция
возвращает m-by- n прямоугольная единичная матрица и eye(n) возвращает n-by- n квадратная единичная матрица.
Обращение матриц
Продукт тензора Кронекера
Кронекеров продукт часто используется с матрицами нулей и единиц, чтобы создать повторенные копии маленьких матриц. Например, если X матрица 2 на 2
и I = eye(2,2) единичная матрица 2 на 2, затем:
Векторные и матричные нормы
В случаях, где вы хотите вычислить норму каждой строки или столбца матрицы, можно использовать vecnorm :
Используя многопоточное вычисление с функциями линейной алгебры
MATLAB поддерживает многопоточный расчет во многой линейной алгебре и поэлементных числовых функциях. Эти функции автоматически выполняются на нескольких потоках. Для функции или выражения, чтобы выполниться быстрее на нескольких центральных процессорах, много условий должны быть верными:
Функция выполняет операции, что легко раздел в разделы, которые выполняются одновременно. Эти разделы должны смочь выполниться с небольшой связью между процессами. Они должны потребовать немногих последовательных операций.
Размер данных является достаточно большим так, чтобы любые преимущества параллельного выполнения перевесили время, требуемое разделить данные и управлять отдельными потоками выполнения. Например, большинство функций убыстряется только, когда массив содержит несколько тысяч элементов или больше.
Операция не ограничена памятью; время вычислений не во власти времени доступа к памяти. Как правило сложные функции ускоряют больше, чем простые функции.
Документация
Матрицы в среде MATLAB
Создание матриц
MATLAB имеет много функций, которые создают различные виды матриц. Например, можно создать симметрическую матрицу с записями на основе треугольника Паскаля:
Другим примером является 3 2 прямоугольная матрица случайных целых чисел. В этом случае первый вход к randi описывает область значений возможных значений для целых чисел, и вторые два входных параметров описывают количество строк и столбцов.
Вектор-столбцом является m-by-1 матрица, вектор-строка является 1 n матрицей, и скаляр является матрицей 1 на 1. Чтобы задать матрицу вручную, используйте квадратные скобки [ ] обозначить начало и конец массива. В скобках используйте точку с запятой ; обозначить конец строки. В случае скаляра (матрица 1 на 1), не требуются скобки. Например, эти операторы производят вектор-столбец, вектор-строку и скаляр:
Для получения дополнительной информации о создании и работе с матрицами, смотрите Создание, конкатенацию и расширение матрицы.
Сложение и вычитание матриц
Сложение и вычитание требуют, чтобы обе матрицы имели совместимые размерности. Если размерности несовместимы, ошибка заканчивается:
Для получения дополнительной информации см. Массив по сравнению Матричные операции.
Векторные произведения и транспонирование
Для векторов перемещение превращает вектор-строку в вектор-столбец (и наоборот):
Если x и y оба действительные вектор-столбцы, затем продукт x*y не задан, но эти два продукта
Комплексное сопряженное транспонирование z :
Неспрягаемый комплекс транспонирует, где комплексная часть каждого элемента сохраняет свой знак, обозначается z.’ :
Для комплексных векторов, эти два скалярных произведения x’*y и y’*x сопряженные комплексные числа друг друга и скалярное произведение x’*x из комплексного вектора с собой действительно.
Умножение матриц
Матрица A может быть умножена справа вектор-столбцом и слева вектором-строкой:
Прямоугольные умножения матриц должны удовлетворить условиям совместимости размерности. Начиная с A имеет размер 3х3 и C 3 2, можно умножить их, чтобы добраться 3 2 результат (общие внутренние отмены размерности):
Однако умножение не работает в обратном порядке:
Можно умножить что-либо со скаляром:
Единичная матрица
Общепринятое математическое обозначение использует прописную букву I, чтобы обозначить единичные матрицы, матрицы различных размеров с единицами на основной диагонали и нулях в другом месте. Эти матрицы имеют свойство, что A I = A и I A = A каждый раз, когда размерности совместимы.
Исходная версия MATLAB не могла использовать I с этой целью, потому что это не различало прописные и строчные буквы, и i уже служил индексом и как комплексной единицей. Таким образом, английская игра слов языка была введена. Функция
возвращает m-by- n прямоугольная единичная матрица и eye(n) возвращает n-by- n квадратная единичная матрица.
Обращение матриц
Продукт тензора Кронекера
Кронекеров продукт часто используется с матрицами нулей и единиц, чтобы создать повторенные копии маленьких матриц. Например, если X матрица 2 на 2
и I = eye(2,2) единичная матрица 2 на 2, затем:
Векторные и матричные нормы
В случаях, где вы хотите вычислить норму каждой строки или столбца матрицы, можно использовать vecnorm :
Используя многопоточное вычисление с функциями линейной алгебры
MATLAB поддерживает многопоточный расчет во многой линейной алгебре и поэлементных числовых функциях. Эти функции автоматически выполняются на нескольких потоках. Для функции или выражения, чтобы выполниться быстрее на нескольких центральных процессорах, много условий должны быть верными:
Функция выполняет операции, что легко раздел в разделы, которые выполняются одновременно. Эти разделы должны смочь выполниться с небольшой связью между процессами. Они должны потребовать немногих последовательных операций.
Размер данных является достаточно большим так, чтобы любые преимущества параллельного выполнения перевесили время, требуемое разделить данные и управлять отдельными потоками выполнения. Например, большинство функций убыстряется только, когда массив содержит несколько тысяч элементов или больше.
Операция не ограничена памятью; время вычислений не во власти времени доступа к памяти. Как правило сложные функции ускоряют больше, чем простые функции.