Транспонирование матрицы в Excel
При работе с матрицами иногда бывает необходимо их транспонировать, то есть простыми словами переворачивать их вверх ногами. Конечно, вы можете удалить данные вручную, но Excel предлагает несколько способов сделать это проще и быстрее. Давайте рассмотрим их подробнее.
Процесс транспонирования
Транспонирование матрицы — это процесс обмена столбцами и строками. В Excel есть два варианта транспонирования: используйте функцию ТРАНСПОРТИРОВАНИЕ и используйте инструмент «Специальная вставка». Рассмотрим подробнее каждый из этих вариантов.
Способ 1: оператор ТРАНСП
Функция TRANSPOSE относится к категории операторов «Ссылки и массивы». Особенность в том, что, как и другие функции, работающие с массивами, результатом вывода является не содержимое ячейки, а целый массив данных. Синтаксис функции довольно прост и выглядит так:
= ПЕРЕДАЧА (массив)
То есть единственным аргументом этого оператора является ссылка на массив, в нашем случае матрицу, которую нужно преобразовать.
Давайте посмотрим, как можно применить эту функцию на примере с реальной матрицей.
- Выделите пустую ячейку на листе, которая должна быть самой левой ячейкой преобразованной матрицы. Затем щелкните значок «Вставить функцию», расположенный рядом со строкой формул.
- Мастер запускается. Открываем в нем категорию «Ссылки и массивы» или «Полный алфавитный список». Как только вы нашли название «ТРАНСПОРТИРОВКА», выберите его и нажмите кнопку «ОК».
- Откроется окно аргументов функции TRANSPOSE. Поле «Массив» соответствует единственному аргументу этого оператора. В нее необходимо ввести координаты матрицы, которую следует перевернуть. Для этого поместите курсор в поле и, удерживая левую кнопку мыши, выделите весь диапазон матрицы на листе. После того, как адрес области отобразится в окне темы, нажмите кнопку «ОК».
- Но, как видите, в ячейке, которая предназначена для отображения результата, отображается неверное значение в виде ошибки «# ЗНАЧ!». Это связано с тем, как работают матричные операторы. Чтобы исправить эту ошибку, выберите диапазон ячеек, в котором количество строк должно быть равно количеству столбцов в исходной матрице, а количество столбцов должно быть равно количеству строк. Это соответствие очень важно для правильного отображения результата. В данном случае ячейка, содержащая выражение «#VALUE!» должна быть левой верхней ячейкой выбранного массива, и именно с этой ячейки должна запускаться процедура выбора, удерживая левую кнопку мыши. Сделав выбор, поместите курсор в строку формул сразу после выражения оператора TRANSPOSE, которое вы хотите отобразить в нем. Далее для выполнения расчета нужно нажимать не кнопку Enter, как это принято в обычных формулах, а набирать комбинацию Ctrl + Shift + Enter.
- После этих действий матрица отображалась тогда, когда она нам нужна, то есть в транспонированном виде. Но есть еще одна проблема. Дело в том, что новый массив теперь представляет собой массив, связанный с формулой, который нельзя изменить. При попытке внести изменения в содержимое массива будет отображаться ошибка. Некоторых пользователей вполне устраивает такое положение дел, поскольку они не будут вносить никаких изменений в массив, но другим нужен массив, с которым они могут полностью работать.
Чтобы решить эту проблему, выберите весь транспонированный диапазон. Перейдя на вкладку «Главная», щелкните значок «Копировать», который находится на ленте в группе «Буфер обмена». Вместо указанного действия после выбора можно создать стандартный набор сочетаний клавиш для копирования Ctrl + C.
- Затем, не удаляя выделение из транспонированного диапазона, щелкните по нему правой кнопкой мыши. В контекстном меню в группе «Параметры вставки» щелкните значок «Значения», который выглядит как значок с изображением чисел.
После этого формула массива TRANSPOSE будет удалена, а в ячейках останется только одно значение, с которым можно работать так же, как и с исходным массивом.
Способ 2: транспонирование матрицы с помощью специальной вставки
Кроме того, матрицу можно транспонировать с помощью единственного пункта контекстного меню, который называется «Специальная вставка».
- Выберите исходную матрицу курсором, удерживая левую кнопку мыши. Затем, перейдя на вкладку «Главная», щелкните значок «Копировать», расположенный в блоке настроек «Буфер обмена».
Вместо этого вы можете сделать это по-другому. После выбора области щелкните по ней правой кнопкой мыши. Активируется контекстное меню, в котором нужно выбрать пункт «Копировать».
В качестве альтернативы двум предыдущим вариантам копирования после выбора вы можете создать набор сочетания горячих клавиш Ctrl + C.
- Выделите пустую ячейку на листе, которая должна стать верхним левым элементом транспонированной матрицы. Щелкните по нему правой кнопкой мыши. После этого активируется контекстное меню. В нем мы перемещаемся по элементу «Специальная вставка». Появится еще одно небольшое меню. В нем также есть пункт под названием «Специальная вставка…». Щелкаем по нему. Вы также можете после выбора, вместо вызова контекстного меню, набрать на клавиатуре комбинацию Ctrl + Alt + V.
- Активизируется окно Специальная вставка. Существует множество вариантов выбора способа вставки ранее скопированных данных. В нашем случае придется оставить практически все настройки по умолчанию. Его следует выбирать только рядом с параметром «Транспонировать». Затем вам нужно нажать на кнопку «ОК», которая находится внизу этого окна.
- После этих действий транспонированная матрица отобразится в предварительно выбранной части листа. В отличие от предыдущего способа, мы уже получили полноценную матрицу, которую можно редактировать, как и исходник. Никаких дополнительных доработок или преобразований не требуется.
- Но при желании, если исходная матрица не нужна, ее можно удалить. Для этого выделите его курсором, удерживая левую кнопку мыши. Затем выполняем щелчок правой кнопкой мыши по выбранному элементу. В контекстном меню, которое откроется позже, выберите пункт «Удалить содержимое».
После этих действий на листе останется только преобразованная матрица.
Такими же двумя способами, о которых говорилось выше, вы можете транспонировать в Excel не только матрицы, но и полноценные таблицы. Порядок действий будет практически идентичным.
Итак, мы обнаружили, что в Excel матрицу можно транспонировать, то есть переворачивать, изменяя столбцы и строки двумя способами. Первый вариант использует функцию TRANSPOSE, а второй — специальные инструменты вставки. В общем, конечный результат использования обоих этих методов ничем не отличается. Оба метода работают практически в любой ситуации. Поэтому при выборе варианта конвертации на первый план выходят личные предпочтения конкретного пользователя. То есть какой из этих способов вам лично удобнее, воспользуйтесь тем.