Три способа умножения матриц в excel — fastai part-2, lesson-8

Использование сборной формулы для решения

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

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

  1. Открывается окно с набором функций, выбираем категорию «Математические», где в нижнем списке находим значение «СУММПРОИЗВ». Нажимаем кнопку ОК.

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

  1. Именно со вторым полем могут возникнуть сложности. Поэтому дочитайте инструкцию до конца. Активируйте поле «Массива 2», затем перейдите к группе функций.

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

  1. Затем выделите фоном указанные адреса, после чего нажмите два раза клавишу F4. Это поможет проставить знак доллара к цифровым символам, что делает их привязанными. Затем также нажмите комбинацию клавиш Ctrl+Shift+Enter, как в предыдущем способе.

  1. Как видим у нас заполнилась только одна ячейка, чтобы изменить это и увидеть расчеты для оставшихся чисел, необходимо активировать маркер автозаполнения. Для этого наведите на правый нижний угол ячейки и протяните на количество строчек и количество столбцов. В нашем случае 3х3.

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

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

Под массивом обычно понимают набор данных, объединенных в группу. Массивы бывают одномерные (элементы массива образуют строку или столбец) или двумерные (матрица). Легко сообразить, что почти в любой таблице Excel при желании можно найти один или несколько таких массивов:

Формулы массива в Excel – это специальные формулы для обработки данных из таких массивов. Формулы массива делятся на две категории – те, что возвращают одно значение и те, что дают на выходе целый набор (массив) значений. Рассмотрим их на простых примерах…

Пример 1. Классика жанра – товарный чек

Задача: рассчитать общую сумму заказа. Если идти классическим путем, то нужно будет добавить столбец, где перемножить цену и количество, а потом взять сумму по этому столбцу. Если же применить формулу массива, то все будет гораздо красивее:

  1. выделяем ячейку С7
  2. вводим с клавиатуры =СУММ(
  3. выделяем диапазон B2:B5
  4. вводим знак умножения (звездочка)
  5. выделяем диапазон C2:C5 и закрываем скобку функции СУММ – в итоге должно получиться так:
  6. чтобы Excel воспринял нашу формулу как формулу массива жмем не Enter, как обычно, а Ctrl + Shift + Enter

Вуаля!

Т.е. Excel произвел попарное умножение элементов массивов B2:B5 и C2:C5 и образовал новый массив стоимостей (в памяти компьютера), а затем сложил все элементы этого нового массива.

Обратите внимание на фигурные скобки, появившиеся в формуле – отличительный признак формулы массива. Вводить их вручную с клавиатуры бесполезно – они автоматически появляются при нажатии Ctrl + Shift + Enter

Пример 2. Разрешите Вас… транспонировать?

При работе с таблицами часто возникает необходимость поменять местами строки и столбцы, т.е. развернуть таблицу на бок, чтобы данные, которые раньше шли по строке, теперь располагались в столбцах и наоборот. В математике такая операция называется транспонированием. При помощи формулы массива и функции ТРАНСП (TRANSPOSE) это делается на раз.

Допустим, имеем двумерный массив ячеек, который хотим транспонировать.

  • Выделяем диапазон ячеек для размещения транспонированной таблицы. Поскольку исходный массив ячеек был 8 строк на 2 столбца, то надо выделить диапазон пустых ячеек размером 2 строки на 8 столбцов.
  • вводим функцию транспонирования =ТРАНСП(   
  • в качестве аргумента функции выделяем наш массив ячеек A1:B8

жмем Ctrl + Shift + Enter и получаем “перевернутый массив” в качестве результата:

Редактирование формулы массива

Если формула массива расположена не в одной ячейке (как в Примере 1), а в нескольких ячейках (как в Примере 2), то Excel не позволит редактировать или удалить одну отдельно взятую формулу (например в ячейке D10) и выдаст предупреждающее сообщение Невозможно изменить часть массива.

Для редактирования формулы массива необходимо выделить весь диапазон (A10:H11 в нашем случае) и изменить формулу в строке формул (или нажав F2). Затем необходимо повторить ввод измененной формулы массива, нажав сочетание клавиш Ctrl + Shift + Enter.

Excel также не позволит свободно перемещать ячейки, входящие в формулу массива или добавлять новые строки-столбцы-ячейки в диапазон формулы массива (т.е. в диапазон A10:H11 в нашем случае)

Пример 3. Таблица умножения

Вспомните детство, школу, свою тетрадку по математике… На обороте тетради на обложке было что? Таблица умножения вот такого вида:

При помощи формул массива она вся делается в одно движение:

  1. выделяем диапазон B2:K11
  2. вводим формулу =A2:A11*B1:K1
  3. жмем Ctrl + Shift + Enter, чтобы Excel воспринял ее как формулу массива

и получаем результат:

Пример 4. Выборочное суммирование

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

 В данном случае формула массива синхронно пробегает по всем элементам диапазонов C3:C21 и B3:B21, проверяя, совпадают ли они с заданными значениями из ячеек G4 и G5. Если совпадения нет, то результат равенства ноль, если совпадение есть, то единица. Таким образом суммы всех сделок, где заказчик не ANTON и товар не Boston Crab Meat умножаются на ноль и суммируются только нужные заказы.

2.2. Создание и изменение формул массива

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

Если выделить слишком большую область, то при вычислении
избыточные ячейки будут заполнены символами ошибки
#N/A. Если область вывода будет меньше, чем нужно, то часть
результатов пропадет. После выделения области, в
Formula Bar  записывается
формула и нажимается CTRL+SHIFT+ENTER.

Альтернативно, сначала можно ввести формулу в одну
ячейку, затем отметить область вывода, начиная с этой ячейки (право и
вниз), потом перейти в Formula Bar и нажать
CTRL+SHIFT+ENTER. 

Для того, чтобы изменить формулу массива нужно выделить
область содержащую результат. Затем нужно перейти
Formula Bar. При этом фигурные скобки вокруг формулы
{ } исчезнут. После этого формулу можно
изменить и нажать CTRL+SHIFT+ENTER.

Для того чтобы расширить область, которую занимает
формула массива, достаточно выделить для нее новую область, перейти в
Formula Bar и нажать CTRL+SHIFT+ENTER. А вот для того, чтобы уменьшить эту область
(например, чтобы избавиться от символов #N/A)
придется потратить больше сил. Сначала нужно встать на любую ячейку
области, перейти в Formula Bar и скопировать
строку формулы. Затем нужно стереть содержимое старой области и отметить
новую, меньшую область. После этого опять перейти в
Formula Bar, вставить формулу и нажать CTRL+SHIFT+ENTER.

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


Рис.27 Предупреждение о недопустимой операции с формулой массива

Множественный коэффициент корреляции в Excel (Эксель)

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

Коэффициент корреляции определяется некоторыми данными. Если уровень показателя составляет от 0 до 0.3, то в таком случае связи нет. Если показатель составляет от 0.3 до 0.5 — это слабая связь. Если показатель доходит до 0.7, то связь средняя. Высокой можно назвать когда показатель достигает отметки 0.7-0.9. Если показатель составляет 1 — это наиболее сильная связь.

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

Далее откроется новое окно. В нём нужно выбрать «Надстройки» и в поле управления параметрами выбрать среди элементов списка «Надстройки Excel»После запуска окна параметров посредством его левого вертикального меню переходим в раздел «Надстройки». После этого нажимаем «Перейти».

Далее откроется новое окно надстроек. Находим в списке «Пакет анализа» и ставим галочку. После этого подтверждаем действие. И пакет анализа данных будет подключён для документа Excel.

После этих действий можно начать работу. Создана таблица с данными и на её примере сделаем нахождение множественного коэффициента корреляции.Для начала откроем раздел «Данные» и среди инструментария выбираем «Анализ данных».

Откроется специальное окно с инструментами для анализа. Выбираем «Корреляция» и подтверждаем действие.

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

Результатом будет отображение корреляционной матрицы с данными с различными значениями. Все взаимосвязи имеют высокий уровень.

Примеры использование корреляционного анализа

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

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

Другие примеры использования коэффициента корреляции:

Редактор электронных таблиц Microsoft Excel является удобным инструментом для вычисления и наглядного представления результатов вычисления коэффициента корреляции.

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

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

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

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

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

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

Учимся программировать

Задание 1. Транспонировать данную матрицу

  1. Заполните ячейки таблицы значениями элементов матрицы (рис.1).

Рисунок 1.

Выделите диапазон ячеек (рис.2) – здесь будет располагаться транспонированная матрица.

Рисунок 2.

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

Рисунок 3.

В появившемся окне введите диапазон значений исходной матрицы.

Рисунок 4.

Для получения результата одновременно нажмите клавиши «Ctrl»+«Shift»+«Enter».

Рисунок 5.

2. Умножение матрицы на числоЗадание 2. Дана матрица А (рис.6). Получить матрицу B=3*А. Ход работы:

  1. Введите матрицу (рис.6).
  2. Выделите ячейку E1 и введите формулу =3*A1.
  3. Скопируйте введенную формулу в остальные ячейки результирующей матрицы: для этого наведите курсор на точку в правом нижнем углу ячейки, так, чтобы курсор изменился на тонкий крестик, нажмите на левую кнопку мыши и протяните до ячейки G1. Таким же образом протяните указатель до ячейки G2.
  4. В результате должна получиться матрица B (рис.7):

Рисунок 6. Матрица A

Рисунок 7. Матрица B

3. Сложение матрицЗадание 3. Сложить две матрицы A и B (даны на рис.8).

Рисунок 8.

Ход работы:

  1. Введите две матрицы A и B (рис.8).
  2. Выделите первую ячейку результирующей матрицы D5 и внесите формулу =B1+F1.
  3. Скопируйте формулу на оставшиеся ячейки матрицы C.

Рисунок 9. Результат

Уровень 2

4.Умножение матрицЗадание 4.Даны матрицы А и В (рис.10). Найти их произведение С=А*В.

Рисунок 10.

Ход работы:

  1. Выделяем мышкой при нажатой левой кнопке соответствующий диапазон ячеек D5:E7 (строк такое же количество как в матрице А, а столбцов такое же количество как в матрице В).
  2. Вызываем мастер функций и в категории «Полный алфавитный перечень находим функцию «МУМНОЖ» и нажимаем ОК.
  1. В появившемся окне вводим диапазон значений исходных матриц А и В (рис.11).

Рисунок 11.

  1. Для получения результата нажимаем сочетание клавиш «Shift»+«Ctrl»+«Enter».

Рисунок 12

Задание 5. Самостоятельно с помощью функции ТРАНС транспонировать следующую матрицу.

Рисунок 13.

Уровень 3

Задание 6. Самостоятельно выполнить с помощью Excel умножение матриц А и В. Даны А и В. В результате вычислений должна получиться матрица C (рис.14)

Рисунок 14.

Задание 7.  Даны матрицы А, В, С и число a=2. Найти

Подсказка: Все вычисления выполнять на одном листе. Сначала вычислить, затем умножить матрицы , далее умножить матрицу С на число a, затем сложить  матрицы  и aС.Тест: результат Задание 8. Даны матрицы А, В, С и число a=2. Найти

Тест: результат

Вопросы на повторение:

  1. Какая функция в Excel используется для транспонирования матрицы?
  2. Какая функция в Excel используется для умножения матриц?

Уровень 1

Задание 1: найти произведение матриц AB, где

Задание 2: найти произведение матриц BA, где

Задание 3:  Даны матрицы А, В. Найти

Тест:

1.2. Книга, лист и ячейка

Файл Excel с расширением XLS (XLSX в версии 2007) называется
(рабочей) книгой. Если запустить программу Excel, например, щелкнуть на
рабочем столе иконку
,
то откроется новая пустая книга. . 

Рис. 2 Новая книга Excel

Если рабочая книга уже существует, то ее проще открыть через проводник. Для
этого достаточно щелкнуть по иконке файла.  

Рис. 3
Открытие книги Excel через проводник

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

Рис.
4 Операции с листами

Стандартное имя листа – Sheet1, но ему можно дать любое имя, например
Data. На лист можно вставлять рисунки, графики и другие необходимые
объекты.

Каждый лист состоит из ячеек, образующих таблицу, размером 256
столбцов и 65536 строк (В версии 2007 – 16384 столбцов и1048576 строк).
Строки на листе обозначены числами: 1,2, 3…, а столбцы имеют буквенную
кодировку: A, B, …,Z,
AA, AB .., и т.д. до последнего столбца
IV (в 2007
– до XFD). Этот стиль адресации называется A1. Реже применяется
альтернативный стиль R1C1, в котором столбцы также нумеруются. Мы не
будем использовать этот стиль, а прочитать об этом можно

здесь

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

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

здесь.

Векторизуем внутренний цикл (2-й шаг)

  1. Компиляторы нынче умные пошли (не все!), и вполне справляются с задачей автовекторизации простых циклов. Уже в 1-м варианте компилятор фактически задействовал инструкции AVX2/FMA, потому ручная оптимизация не дала нам практически никаких преимуществ.
  2. Скорость расчетов в данном случае упирается не в вычислителные возможности процессора, а в скорость загрузки и выгрузки данных. В данном случае процессору для задействования 2 256-bit FMA блоков требуется загрузить 4 и выгрузить 2 256-bit вектора за такт. Это в два раза превышает даже пропускную способность L1 кеша процессора (512/256 bit), не говоря уже о пропускной способности памяти, которая еще на порядок меньше (64-bit на канал)).

3.5. Надстройки

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

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

Стандартная версия Excel включает несколько надстроек,
среди которых для нас примечательны две: Solver Add-In и Analysis
Toolpak.

Надстройка

Solver Add-In предназначена для оптимизации значения в целевой
ячейке
. Решение находится с помощью поиска величин в других ячейках,
функционально связанных с целевой.

Надстройка

Analysis Toolpak содержит набор статистических инструментов
для анализа данных

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

J-Walk Chart Tools Add-In – бесплатная утилита для
управление диаграммами: добавление подписей, ярлыков, и т.п. – все то,
что отсутствует в стандартной версии.

XLStat
– большой (и дорогой) пакет статистического анализа, включающий, в
частности, и PLS регрессию.

Multivariate Analysis Add-in – условно бесплатный пакет для
анализа многомерных данных, созданный в Бристольском университете

Fitter – надстройка для нелинейного регрессионного анализа.

Chemometrics – пакет функций листа, выполняющий анализ
многомерных данных.

Подробнее о надстройках можно прочитать

здесь. 

Использование сборной формулы для решения

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

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

  1. Открывается окно с набором функций, выбираем категорию «Математические», где в нижнем списке находим значение «СУММПРОИЗВ». Нажимаем кнопку ОК.

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

  1. Именно со вторым полем могут возникнуть сложности. Поэтому дочитайте инструкцию до конца. Активируйте поле «Массива 2», затем перейдите к группе функций.

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

  1. Затем выделите фоном указанные адреса, после чего нажмите два раза клавишу F4. Это поможет проставить знак доллара к цифровым символам, что делает их привязанными. Затем также нажмите комбинацию клавиш Ctrl+Shift+Enter, как в предыдущем способе.

  1. Как видим у нас заполнилась только одна ячейка, чтобы изменить это и увидеть расчеты для оставшихся чисел, необходимо активировать маркер автозаполнения. Для этого наведите на правый нижний угол ячейки и протяните на количество строчек и количество столбцов. В нашем случае 3х3.

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

Что можно делать с матрицами

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

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

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

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

Далее есть несколько методов, как можно осуществить транспонирование. 

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

Там есть множество операций, но нам нужно найти радиокнопку «Транспонировать». После совершения этого действия нужно подтвердить его нажатием клавиши ОК.

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

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

  1. Выделить набор ячеек, отведенных под транспонированную матрицу.
  2. Нажать клавишу F2.
  3. Нажать на горячие клавиши Ctrl + Shift + Enter.

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

Видеоурок

Учитель физики, информатики и ИКТ, МКОУ «СОШ», с. Саволенка Юхновского района Калужской области. Автор и преподаватель дистанционных курсов по основам компьютерной грамотности, офисным программам. Автор статей, видеоуроков и разработок.

В разделе на вопрос Как создать матрицу в Excel???? заданный автором Masha Kalganova
лучший ответ это Что конкретно нужно сделать?Документ эксель — безразмерная (всеразмерная) матрица, каждый элемент которой может быть числом, текстом или любым другим значением. Да хоть формулой.Если напечатать 3 циферки в ряд, под ними еще 3 в ряд, под ними еще 3 в ряд, получим квадратную матрицу 3х3.Вопрос в чем?Умножение матрицы на число в ExcelФормулы написать?В верхней левой клетке новой матрицы=левая верхняя клетка старой матрицы * клетка с числом (ткнуть мышкой) , нажать F4 дабы стало $x$y, где x,y — координаты клетки. Это зафиксирует клетку при копировании. Далее жмем Enter и копируем содержимое клетки в 2 соседние клетки в ряд. Далее копируем эти 3 клетки в следующие 3 ряда и получаем тот же результат, что у меня на картинке. То есть умножение матрицы на число.Блин, математику не знают, а в интернете лазают!

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

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

1.6. Функции

Функции – это стандартные формулы, проводящие вычисления по заданным
величинам, называемым аргументами. Некоторые примеры функций показаны на
Рис. 8.

Рис.8
Простейшие функции

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

Например,
функция, показанная на Рис. 9 вычисляет
значение кумулятивного (cumulative=TRUE),
стандартного (mean=0,
standard_dev =1)
для величины, находящейся в ячейке
A1 .

Рис.9
Ввод функции через Formula Bar

Задать функцию можно по-разному. Проще всего ввести ее в окно
Formula Bar 
(см. ). Только предварительно нужно открыть
это окно через меню View-Formula Bar. Такой
способ удобен, когда вы хорошо помните синтаксис функции. Формулу можно
задать быстро, т.к. аргументы вводятся простым кликаньем по ячейкам, в
которых находятся аргументы.

Другой способ спасает тогда, когда мы плохо помним вид
функции, которая нам нужна. Тогда удобно воспользоваться кнопкой
Insert Function
(). После этого появится диалоговое окно (Рис. 10), из которого
можно выбрать нужную функцию .

 

Рис.1
Ввод функции через Insert Function

Как только функция выбрана, появляется  второе окно, специфическое для выбранной функции,
в котором устанавливаются ссылки на аргументы функции

Рис.11
Задание значений аргументов

Подробнее изучить эту тему можно
здесь.

Метод 2: Использование поэлементного умножения

Так что до сих пор мы разбираем каждую позицию в результирующей матрицеC,найти отдельные элементы, а затем суммировать их вместе. Если вы помните, что-то вроде, Конечно, должен быть другой путь? Что если вместо того, чтобы делать отдельные продукты, а затем суммировать их, мы умножаем векторы за один раз, чтобы получить результирующий вектор, и суммируем полученный вектор, чтобы получить конечный элемент?

m = tensor()n = tensor()m*n>>tensor()

До сих пор мы находили отдельные продуктыи сложить их вместе, Но, действительно, все это можно заменить на:

m = tensor()n = tensor()(m*n).sum()>>tensor(60)

Если вы помните, самый внутренний цикл внаходил отдельные продукты и добавлял их. Ну, мы можем заменить этот цикл, чтобы выполнить векторное поэлементное произведение и положитьв конце концов, и PyTorch / NumPy имеют возможность выполнять поэлементные операции для нас!

Вот как это выглядит в Excel:


C = сумма (A * B )

Точно так же мы получаемпутем умножения вектора в строке 0с вектором на цв 3Ви суммируя полученный вектор.


C = сумма (A * B )

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


C = сумма (A * B )

Обратите внимание, как это отличается отМетод-1? На этот раз мы просто говорим Excel или PyTorch: умножьте строку 0с col 0 изВи суммируем полученный вектор, чтобы дать нам ответ. Вместо того чтобы делать, Например, дляэтот метод умножает Vector на строку 0с вектором в столбце 0 изВчтобы получить промежуточный продукт Вектори суммирует это, чтобы дать результат в положениикак,. В коде это выглядит так:

В коде это выглядит так:

def matmul2(a,b):    ar,ac = a.shape    br,bc = b.shape    assert ac==br    c = torch.zeros(ar,bc)    for i in range(ar):        for j in range(bc):            c = (a*b).sum()    return c

Таким образом, мы просто анализируем каждую позициюC,используя две петли FOR и введите соответствующий результат в этой позиции. Еслипредставляют строки и столбцы вСэто выглядит примерно так …

i:0,j:0a:tensor(),b:tensor()tensor(,        ,        ,        ])---i:0,j:1a:tensor(),b:tensor()tensor(,        ,        ,        ])---i:0,j:2a:tensor(),b:tensor()tensor(,        ,        ,        ])---i:0,j:3a:tensor(),b:tensor()tensor(,        ,        ,        ])---i:1,j:0a:tensor(),b:tensor()tensor(,        ,        ,        ])

И так далее .. пока мы не получим полную матрицуС,

tensor(,        ,        ,        ])

3.2. Пример

Рассмотрим вопрос о применении средств VBA на примере.

При моделировании неизотермической кинетики (ДСК, ТГА, и
т.п.) необходима
интегральная показательная функция (integral
exponential) E1(x). По определению,

Для вычисления E1(x) можно
использовать бесконечный ряд  

На листе рабочей книги Excel каждый член этого ряда
можно поместить в отдельную ячейку и затем просуммировать их. Этот
способ показан на Рис. 41.  


Рис.41 Вычисление функции E1(x)
на листе

Нельзя признать такой способ вычисления удачным.
Во-первых, вычисления занимают на листе много места. Но главное, не
понятно, сколько членов в ряду нужно суммировать – иногда хватит и 10, а
иногда и 50 будет мало.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector