Транспонирование матрицы и таблицы в Excel

Транспонирование матрицы и таблицы в Excel

Зачастую у нас в работе возникает необходимость перевернуть данные — из строк сделать столбцы и наоборот.
Рассмотрим различные способы транспонирования матрицы или таблицы в Excel.

Предположим, что у нас имеется следующая матрица, которую мы хотим транспонировать:


Разберем 2 способа транспонирования матрицы в Excel: с помощью специальной вставки и с помощью функции ТРАНСП.

Способ 1. Транспонирование с помощью специальной вставки

Чтобы транспонировать матрицу выделяем диапазон ячеек A2:C5, в котором находится матрица.
Нажимаем правой кнопкой мыши на выделенный диапазон и в всплывающем окне выбираем Копировать (или нажимаем комбинацию клавиш Ctrl + C).
Переходим в ячейку, куда хотим вставить транспонированную матрицу, нажимаем правую кнопку мыши и выбираем Специальная вставка -> Транспонировать (или нажимаем комбинацию клавиш Ctrl + Alt + V и выбираем Транспонировать):


На выходе мы получаем транспонированную матрицу:


Элементы транспонированной матрицы представляют собой вставленные значения, другими словами полученная транспонированная матрица не является динамической и при изменении элементов исходной матрицы элементы транспонированной меняться не будут.
Чтобы этого избежать воспользуемся другим инструментом Excel — функцией ТРАНСП.

Способ 2. Транспонирование с помощью функции ТРАНСП

Синтаксис и описании функции транспонирования:

ТРАНСП(массив)
Преобразует вертикальный диапазон ячеек в горизонтальный, или наоборот.

  • Массив(обязательный аргумент) — массив (диапазон ячеек), для которого применяется транспонирование.

Выделим диапазон пустых ячеек E2:H4, в которых будет находиться транспонированная матрица.
Не снимая выделения с пустых ячеек вводим формулу ТРАНСП и в качестве аргумента функции выбираем диапазон ячеек A2:C5, который нужно транспонировать:


После ввода формулы =ТРАНСП(A2:C5) нажмите Ctrl + Shift + Ввод, чтобы применить формулу массива ко всем выделенным ячейкам.
В результате получаем транспонированную матрицу:


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

Транспонирование матрицы в программе Microsoft Excel

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

Процесс транспонирования

Транспонирование матрицы – это процесс смены столбцов и строк местами. В программе Excel имеется две возможности проведения транспонирования: используя функцию ТРАНСП и при помощи инструмента специальной вставки. Рассмотрим каждый из этих вариантов более подробно.

Способ 1: оператор ТРАНСП

Функция ТРАНСП относится к категории операторов «Ссылки и массивы». Особенностью является то, что у неё, как и у других функций, работающих с массивами, результатом выдачи является не содержимое ячейки, а целый массив данных. Синтаксис функции довольно простой и выглядит следующим образом:

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

Посмотрим, как эту функцию можно применить на примере с реальной матрицей.

  1. Выделяем незаполненную ячейку на листе, планируемую сделать крайней верхней левой ячейкой преобразованной матрицы. Далее жмем на значок «Вставить функцию», который расположен вблизи строки формул.

Производится запуск Мастера функций. Открываем в нем категорию «Ссылки и массивы» или «Полный алфавитный перечень». После того, как отыскали наименование «ТРАНСП», производим его выделение и жмем на кнопку «OK».

Происходит запуск окна аргументов функции ТРАНСП. Единственному аргументу данного оператора соответствует поле «Массив». В него нужно внести координаты матрицы, которую следует перевернуть. Для этого устанавливаем курсор в поле и, зажав левую кнопку мыши, выделяем весь диапазон матрицы на листе. После того, как адрес области отобразился в окне аргументов, щелкаем по кнопке «OK».

Но, как видим, в ячейке, которая предназначена для вывода результата, отображается некорректное значение в виде ошибки «#ЗНАЧ!». Это связано с особенностями работы операторов массивов. Чтобы исправить эту ошибку, выделяем диапазон ячеек, в котором число строк должно быть равным количеству столбцов первоначальной матрицы, а число столбцов – количеству строк. Подобное соответствие очень важно для того, чтобы результат отобразился корректно. При этом, ячейка, в которой содержится выражение «#ЗНАЧ!» должна быть верхней левой ячейкой выделяемого массива и именно с неё следует начинать процедуру выделения, зажав левую кнопку мыши. После того, как вы провели выделение, установите курсор в строку формул сразу же после выражения оператора ТРАНСП, которое должно отобразиться в ней. После этого, чтобы произвести вычисление, нужно нажать не на кнопку Enter, как принято в обычных формулах, а набрать комбинацию Ctrl+Shift+Enter.

Чтобы решить данную проблему, выделяем весь транспонированный диапазон. Переместившись во вкладку «Главная» щелкаем по пиктограмме «Копировать», которая расположена на ленте в группе «Буфер обмена». Вместо указанного действия можно после выделения произвести набор стандартного сочетания клавиш для копирования Ctrl+C.

Затем, не снимая выделения с транспонированного диапазона, производим клик по нему правой кнопкой мыши. В контекстном меню в группе «Параметры вставки» щелкаем по иконке «Значения», которая имеет вид пиктограммы с изображением чисел.

Читайте также:  Импорт настроек в браузер Mozilla Firefox

Вслед за этим формула массива ТРАНСП будет удалена, а в ячейках останутся только одни значения, с которыми можно работать так же, как и с исходной матрицей.

Способ 2: транспонирование матрицы с помощью специальной вставки

Кроме того, матрицу можно транспонировать с помощью одного элемента контекстного меню, который носит название «Специальная вставка».

    Выделяем исходную матрицу курсором, зажав левую кнопку мыши. Далее, перейдя во вкладку «Главная», щелкаем по пиктограмме «Копировать», размещенной в блоке настроек «Буфер обмена».

Вместо этого можно сделать и по-другому. Выделив область, кликаем по ней правой кнопкой мыши. Активируется контекстное меню, в котором следует выбрать пункт «Копировать».

В виде альтернативы двум предыдущим вариантам копирования, можно после выделения произвести набор комбинации горячих клавиш Ctrl+C.
Выбираем на листе незаполненную ячейку, которая должна стать крайним верхним левым элементом транспонированной матрицы. Производим щелчок по ней правой кнопкой мыши. Вслед за этим активируется контекстное меню. В нем выполняем перемещение по пункту «Специальная вставка». Появляется ещё одно небольшое меню. В нем также имеется пункт под названием «Специальная вставка…». Кликаем по нему. Также можно, совершив выделение, вместо вызова контекстного меню набрать на клавиатуре комбинацию Ctrl+Alt+V.

Активируется окно специальной вставки. Тут представлено много вариантов выбора, как именно можно вставить ранее скопированные данные. В нашем случае нужно оставить практически все настройки по умолчанию. Только около параметра «Транспонировать» следует установить галочку. Затем требуется нажать на кнопку «OK», которая размещена в нижней части данного окошка.

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

  • Но при желании, если первоначальная матрица вам не нужна, её можно удалить. Для этого выделяем её курсором, зажав левую кнопку мыши. Затем выполняем щелчок по выделенному элементу правой кнопкой. В контекстном меню, которое откроется вслед за этим, выбираем пункт «Очистить содержимое».
  • После указанных действий на листе останется только преобразованная матрица.

    Этими же двумя способами, о которых шла речь выше, можно транспонировать в Excel не только матрицы, но и полноценные таблицы. Процедура при этом будет практически идентичной.

    Итак, мы выяснили, что в программе Excel матрицу можно транспонировать, то есть, перевернуть, поменяв столбцы и строчки местами, двумя способами. Первый вариант предполагает использование функции ТРАНСП, а второй – инструменты специальной вставки. По большому счету конечный результат, который получается при использовании обоих этих способов, ничем не отличается. Оба метода работают практически в любой ситуации. Так что при выборе варианта преобразования, на первый план выходят личные предпочтения конкретного пользователя. То есть, какой из данных способов для вас лично удобнее, тот и используйте.

    Функции для работы с матрицами в Excel

    В программе Excel с матрицей можно работать как с диапазоном. То есть совокупностью смежных ячеек, занимающих прямоугольную область.

    Адрес матрицы – левая верхняя и правая нижняя ячейка диапазона, указанные черед двоеточие.

    Формулы массива

    Построение матрицы средствами Excel в большинстве случаев требует использование формулы массива. Основное их отличие – результатом становится не одно значение, а массив данных (диапазон чисел).

    Порядок применения формулы массива:

    1. Выделить диапазон, где должен появиться результат действия формулы.
    2. Ввести формулу (как и положено, со знака «=»).
    3. Нажать сочетание кнопок Ctrl + Shift + Ввод.

    В строке формул отобразится формула массива в фигурных скобках.

    Чтобы изменить или удалить формулу массива, нужно выделить весь диапазон и выполнить соответствующие действия. Для введения изменений применяется та же комбинация (Ctrl + Shift + Enter). Часть массива изменить невозможно.

    Решение матриц в Excel

    С матрицами в Excel выполняются такие операции, как: транспонирование, сложение, умножение на число / матрицу; нахождение обратной матрицы и ее определителя.

    Транспонирование

    Транспонировать матрицу – поменять строки и столбцы местами.

    Сначала отметим пустой диапазон, куда будем транспонировать матрицу. В исходной матрице 4 строки – в диапазоне для транспонирования должно быть 4 столбца. 5 колонок – это пять строк в пустой области.

    Читайте также:  Как удалить AutoCAD с компьютера

    • 1 способ. Выделить исходную матрицу. Нажать «копировать». Выделить пустой диапазон. «Развернуть» клавишу «Вставить». Открыть меню «Специальной вставки». Отметить операцию «Транспонировать». Закрыть диалоговое окно нажатием кнопки ОК.
    • 2 способ. Выделить ячейку в левом верхнем углу пустого диапазона. Вызвать «Мастер функций». Функция ТРАНСП. Аргумент – диапазон с исходной матрицей.

    Нажимаем ОК. Пока функция выдает ошибку. Выделяем весь диапазон, куда нужно транспонировать матрицу. Нажимаем кнопку F2 (переходим в режим редактирования формулы). Нажимаем сочетание клавиш Ctrl + Shift + Enter.

    Преимущество второго способа: при внесении изменений в исходную матрицу автоматически меняется транспонированная матрица.

    Сложение

    Складывать можно матрицы с одинаковым количеством элементов. Число строк и столбцов первого диапазона должно равняться числу строк и столбцов второго диапазона.

    В первой ячейке результирующей матрицы нужно ввести формулу вида: = первый элемент первой матрицы + первый элемент второй: (=B2+H2). Нажать Enter и растянуть формулу на весь диапазон.

    Умножение матриц в Excel

    Чтобы умножить матрицу на число, нужно каждый ее элемент умножить на это число. Формула в Excel: =A1*$E$3 (ссылка на ячейку с числом должна быть абсолютной).

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

    В результирующей матрице количество строк равняется числу строк первой матрицы, а количество колонок – числу столбцов второй.

    Для удобства выделяем диапазон, куда будут помещены результаты умножения. Делаем активной первую ячейку результирующего поля. Вводим формулу: =МУМНОЖ(A9:C13;E9:H11). Вводим как формулу массива.

    Обратная матрица в Excel

    Ее имеет смысл находить, если мы имеем дело с квадратной матрицей (количество строк и столбцов одинаковое).

    Размерность обратной матрицы соответствует размеру исходной. Функция Excel – МОБР.

    Выделяем первую ячейку пока пустого диапазона для обратной матрицы. Вводим формулу «=МОБР(A1:D4)» как функцию массива. Единственный аргумент – диапазон с исходной матрицей. Мы получили обратную матрицу в Excel:

    Нахождение определителя матрицы

    Это одно единственное число, которое находится для квадратной матрицы. Используемая функция – МОПРЕД.

    Ставим курсор в любой ячейке открытого листа. Вводим формулу: =МОПРЕД(A1:D4).

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

    ТРАНСП (функция ТРАНСП)

    Иногда требуется изменить направление, в котором располагаются ячейки. Это можно сделать путем копирования и вставки и применения команды “Транспонировать”. Но в этом случае образуются повторяющиеся данные. Чтобы такого не происходило, можно вместо этого ввести формулу с функцией ТРАНСП. Например, на следующем изображении показано, как расположить горизонтально ячейки с A1 по B4 с помощью формулы =ТРАНСП(A1:B4).

    Примечание: Если у вас установлена текущая версия Microsoft 365 , вы можете ввести формулу в левую верхнюю ячейку диапазона вывода, а затем нажмите клавишу Ввод , чтобы подтвердить формулу как формулу динамических массивов. Иначе формулу необходимо вводить с использованием прежней версии массива, выбрав диапазон вывода, введя формулу в левой верхней ячейке диапазона и нажав клавиши CTRL+SHIFT+ВВОД для подтверждения. Excel автоматически вставляет фигурные скобки в начале и конце формулы. Дополнительные сведения о формулах массива см. в статье Использование формул массива: рекомендации и примеры.

    Шаг 1. Выделите пустые ячейки

    Сначала выделите пустые ячейки. Их число должно совпадать с числом исходных ячеек, но располагаться они должны в другом направлении. Например, имеется 8 ячеек, расположенных по вертикали:

    Нам нужно выделить 8 ячеек по горизонтали:

    Так будут располагаться новые ячейки после транспонирования.

    Шаг 2. Введите =ТРАНСП(

    Не снимая выделение с пустых ячеек, введите =ТРАНСП(

    Лист Excel будет выглядеть так:

    Обратите внимание на то, что восемь ячеек по-прежнему выделены даже несмотря на то, что мы начали вводить формулу.

    Шаг 3. Введите исходный диапазон ячеек

    Затем введите диапазон ячеек, которые нужно транспонировать. В этом примере требуется поменять местами ячейки с a1 на B4. Поэтому формула для этого примера будет выглядеть следующим образом: = транспонировать (a1: B4) , но пока не нажимайте клавишу ВВОД. Просто отмените ввод и перейдите к следующему шагу.

    Лист Excel будет выглядеть так:

    Шаг 4. Нажмите клавиши CTRL+SHIFT+ВВОД

    Теперь нажмите клавиши CTRL+SHIFT+ВВОД. Зачем это нужно? Дело в том, что функция ТРАНСП используется только в формулах массивов, которые завершаются именно так. Если говорить кратко, формула массива — это формула, которая применяется сразу к нескольким ячейкам. Так как в шаге 1 вы выделили более одной ячейки, формула будет применена к нескольким ячейкам. Результат после нажатия клавиш CTRL+SHIFT+ВВОД будет выглядеть так:

    Читайте также:  Узнаём тайного отправителя подарка в ОК

    Советы

    Вводить диапазон вручную не обязательно. Введя =ТРАНСП(, вы можете выделить диапазон с помощью мыши. Простой щелкните первую ячейку диапазона и перетащите указатель к последней. Но не забывайте: по завершении нужно нажать клавиши CTRL+SHIFT+ВВОД, а не просто клавишу ВВОД.

    Нужно также перенести форматирование текста и ячеек? Вы можете копировать ячейки, вставить их и применить команду “Транспонировать”. Но помните, что при этом образуются повторяющиеся данные. При изменении исходных ячеек их копии не обновляются.

    Вы можете узнать больше о формулах массивов. Вы можете создать формулу массива или ознакомиться с подробными рекомендациями и примерами.

    Технические подробности

    Функция ТРАНСП возвращает вертикальный диапазон ячеек в виде горизонтального и наоборот. Функцию ТРАНСП необходимо вводить как формула массива в диапазон, содержащий столько же строк и столбцов, что и аргумент диапазон. Функция ТРАНСП используется для изменения ориентации массива или диапазона на листе с вертикальной на горизонтальную и наоборот.

    Синтаксис

    Аргументы функции ТРАНСП описаны ниже.

    Массив. Обязательный аргумент. Массив (диапазон ячеек) на листе, который нужно транспонировать. Транспонирование массива заключается в том, что первая строка массива становится первым столбцом нового массива, вторая — вторым столбцом и т. д. Если вы не знаете, как вводить формулу массива, ознакомьтесь со сведениями Создание формулы массива.

    См. также

    Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

    Транспонирование матрицы в Excel (Эксель)

    Когда работаешь с большими диапазонами данных могут возникать разные трудности. Иногда может возникнуть потребность транспонировать матрицу, или просто перевернуть ее – поменять столбцы со строками местами.

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

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

    · Способ 1: использование оператора ТРАНСП

    Оператор «ТРАНСП» является матричным оператором, поэтому результат работы оператора – массив данных, а не ячейка с результатом.
    Оператор имеет довольно простой синтаксис: «=ТРАНСП(массив)» с одним аргументом – самой исходной матрицей.

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

    Создадим новый документ и занесем в его ячейки матрицу со значениями 4Х3. В другой произвольной ячейке создадим такой же диапазон, размером 4Х3, так как мы работаем уже с матричным оператором, и вставим функцию через «Мастер функций» – «Ссылки и массивы» – оператор «ТРАНСП».

    В диалоговом окне укажем массив введенных данных и применяем оператор путем нажатия клавиш «Ctrl+Shift+Enter».

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

    · Способ 2: транспонирование путем специальной вставки

    Транспонирование матрицы можно произвести и без использования Мастера функций. Для начала скопируем исходную матрицу в буфер обмена либо через контекстное меню, либо сочетанием клавиш «Ctrl+C».

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

    В появившемся диалоговом окне есть масса вариантов, что можно и как вставить в выбранную ячейку. В нашем случае нас интересует пункт «Транспонировать». Ставим напротив него указатель и применяем специальную вставку.

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

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

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