Курс «Основы эффективной работы с технологиями Wolfram». Занятие 2.2: Задание функций, работа со списками, шаблонными выражениями и ассоциациями

5e5e347ed80e44c18c9777fc167c8fd1.png


Содержание


Списки
⋅⋅⋅ Список {...} и функция List[...]
⋅⋅⋅ «Естественное» отображение списков
⋅⋅⋅ Способы генерирования списков
⋅⋅⋅ Индексация элементов и некоторые числовые характеристики списка. Функции Length и Depth
⋅⋅⋅ Вычленение элементов, занимающих определенные места в списке, с помощью функции Part ([[...]])
⋅⋅⋅ Переобозначение элементов списка
⋅⋅⋅ Генерирование списка с помощью функции Table
⋅⋅⋅ Генерирование списка чисел с помощью функции Range
Ассоциации
⋅⋅⋅ Задание ассоциации и работа с ней
⋅⋅⋅ Dataset — формат баз данных в Wolfram Language
Шаблонные выражения
⋅⋅⋅ Введение в шаблоны
⋅⋅⋅ Базовые шаблоны объектов: Blank (_), BlankSequence (__), BlankNullSequence (___)
⋅⋅⋅ Что можно сделать с помощью шаблонов? Функция Cases
⋅⋅⋅ Определение типа выражения в шаблоне
⋅⋅⋅ Наложение ограничений на шаблоны с помощью функций Condition (/;), PatternTest (?), Except, а также применение тестовых функций
⋅⋅⋅ Создание шаблонов, имеющих возможность альтернативного выбора с помощью функции Alternatives (|)
Функции
⋅⋅⋅ Применение отсроченного присваивания SetDelayed (:=)
⋅⋅⋅ Применение абсолютного присваивания Set (=)
⋅⋅⋅ Задание функции, которая помнит значения, которые она уже находила и рекуррентной функции
⋅⋅⋅ Атрибуты функций и функции Attributes, SetAttributes, ClearAttributes​, Protect​, Unprotect​для работы с ними
Чистые функции
⋅⋅⋅ Применение функции Function (&)
⋅⋅⋅ Где используются чистые функции?

Видео-лекция


Презентация


Скачать презентацию в формате документа Wolfram Mathematica (1,3 МБ).

(Если у вас нет Wolfram Mathematica, вы можете скачать полнофункциональную триал-версию. Также вы можете завести бесплатный аккаунт в Wolfram Programming Cloud).

Несколько примеров слайдов:

116d90eb8bf5484596cb3b32117bc615.png

0e7a2782398141e3b252727773786eca.png

1f4669ad78f1428480e843ee09e6a491.png

93cbf96ec9a44f83a19288354cdb9dcb.png

37be5902dd7c41fdbf76838fbd43adfd.png

Дополнительные материалы к занятию


Видео


3 | Присваивание значений переменным и определение функций:

4 | Очистка переменных и функций:

5 | Применение функции к каждому элементу списка (вектора, матрицы и т. п.):

6 | Работа с чистыми функциями:

7 | Опции функций:

8 | Списки и их создание:

9 | Выделение элементов из списка или выражения:

10 | Объединение списков:

11 | Изменение, добавление и удаление элементов списка:

12 | Группировка элементов списка:

13 | Списки как множества:

14 | Списки как векторы и матрицы, элементы линейной алгебры:

Шаблонные объекты в Wolfram Mathematica:

Статьи на русском языке


Статьи, напрямую связанные с уроком:
Интересные статьи, которые позволят вам составить первый взгляд на возможности Wolfram Language:

Содержание курса


1. Обзор систем Wolfram Mathematica и Wolfram Cloud.

2. Язык программирования Wolfram Language (работа в Mathematica 10):

2.1. Введение в язык Wolfram Language, его особенности. Основные сложности начинающих пользователей. Работа с интерфейсом Mathematica и его возможностями — предсказательным интерфейсом, свободной формой ввода и другими.

2.2. Задание функций, работа со списками, шаблонными выражениями и ассоциациями.

2.3. Создание визуализаций.

2.4. Создание интерактивных объектов, работа с элементами управления, создание пользовательских интерфейсов.

2.5. Импорт, экспорт, обработка данных, файлов, изображений, звука, веб-страниц. Работа с API веб-ресурсов на примере API ВКонтакте, а также работа со встроенными способами работы с API Facebook, Twitter, Instagram и др.

2.6. Работа со встроенными курируемыми базами данных Wolfram, интеграция с Wolfram|Alpha.

3. Работа с Wolfram Cloud: создание прямого API, форм ввода, CloudCDF и др.

4. Технология CDF — мгновенное встраивание интерактивных объектов, созданных в Mathematica в веб-страницы, тонкости. Использование готовых интерактивных объектов с сайта Wolfram Demonstrations Project в своих проектах и их изменение. Реальные примеры и бизнес-приложения.

5. Работа с Wolfram Language и Mathematica, предустановленных и бесплатных на Raspberry Pi (с операционной системой Raspbian).

© Habrahabr.ru