разработки, тестирования и сравнения алгоритмов
чные вычисления и статистика
NumPy (Numerical Python) — в Python н
Для визуализации будут использоваться Matplotlib, Seaborn и Folium
В окне командной строки своей системы выполните следующие команды, чтобы обновить установленные пакеты Anaconda до последних версий:
conda update conda
conda update --all
Выход из интерактивного режима
Чтобы выйти из интерактивного режима, можно воспользоваться одним из нескольких способов:
• Ввести команду exit в приглашении In [] и нажать Enter для немедленного выхода.
• Нажать клавиши +d (или +d). На экране появляется предложение подтвердить выход "Do you really want to exit ([y]/n)?". Квадратные скобки вокруг y означают, что этот ответ выбирается по умолчанию — нажатие клавиши Enter отправляет ответ по умолчанию и завершает интерактивный режим.
• Нажать +d (или +d) дважды (только в macOS и Linux).
Запуск IPython в интерактивном режиме
Сначала откройте окно командной строки в своей системе:
• В macOS откройте Терминал из папки Utilities в папке Applications.
• В Windows запустите командную строку Anaconda из меню Пуск.
• В Linux откройте Терминал или командный интерпретатор своей системы (зависит от дистрибутива Linux).
В окне командной строки введите команду ipython и нажмите Enter (или Return). На экране появится сообщение вроде (зависит от платформы и версии IPython):
Python 3.7.0 | packaged by conda-forge | (default, Jan 20 2019, 17:24:52)
Type 'copyright', 'credits' or 'license' for more information
IPython 6.5.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]:
Текст "In [1]:" — приглашение, означающее, что IPython ожидает вашего ввода. Вы можете ввести ? для получения справки или перейти непосредственно к вводу фрагментов, чем мы сейчас и займемся.
Научные вычисления и статистика
NumPy (Numerical Python) — в Python нет встроенной структуры данных массива. В нем используются списки — удобные, но относительно медленные. NumPy предоставляет высокопроизводительную структуру данных ndarray для представления списков и матриц, а также функции для обработки таких структур данных.
SciPy (Scientific Python) — библиотека SciPy, встроенная в NumPy, добавляет функции для научных вычислений: интегралы, дифференциальные уравнения, расширенная обработка матриц и т.д. Сайт scipy.org обеспечивает поддержку SciPy и NumPy.
StatsModels — библиотека, предоставляющая функциональность оценки статистических моделей, статистических критериев и статистического анализа данных.
Анализ и управление данными
pandas — чрезвычайно популярная библиотека для управления данными. В pandas широко используется структура ndarray из NumPy. Ее две ключевые структуры данных — Series (одномерная) и DataFrames (двумерная).
Визуализация
Matplotlib — библиотека визуализации и построения диаграмм с широкими возможностями настройки. Среди прочего в ней поддерживаются обычные графики, точечные диаграммы, гистограммы, контурные и секторные диаграммы, графики поля направлений, полярные системы координат, трехмерные диаграммы и текст.
Seaborn — высокоуровневая библиотека визуализации, построенная на базе Matplotlib. Seaborn добавляет более качественное оформление и дополнительные средства визуализации, а также позволяет строить визуализации с меньшим объемом кода.
Машинное обучение, глубокое обучение и обучение с подкреплением
scikit-learn — ведущая библиотека машинного обучения. Машинное обучение является подмножеством области искусственного интеллекта, а глубокое обучение — подмножеством машинного обучения, ориентированным на нейронные сети.
Keras — одна из самых простых библиотек глубокого обучения. Keras работает на базе TensorFlow (Google), CNTK (когнитивный инструментарий Microsoft для глубокого обучения) или Theano (Монреальский университет).
TensorFlow — самая популярная библиотека глубокого обучения от Google. TensorFlow использует графические процессоры или тензорные процессоры Google для повышения быстродействия. TensorFlow играет важную роль в областях искусственного интеллекта и аналитики больших данных с их огромными требованиями к вычислительным мощностям. Мы будем использовать версию Keras, встроенную
csv — обработка файлов с данными, разделенными запятыми.
datetime, time — операции с датой и временем.
decimal — вычисления с фиксированной и плавающей точкой, включая финансовые вычисления.
doctest — простое модульное тестирование с использованием проверочных тестов и ожидаемых результатов, закодированных в doc-строках.
json — обработка формата JSON (JavaScript Object Notation) для использования с веб-сервисами и базами данных документов NoSQL.
math — распространенные математические константы и операции.
os — взаимодействие с операционной системой.
queue — структура данных, работающая по принципу «первым зашел, первым вышел» (FIFO).
random — псевдослучайные числа.
re — регулярные выражения для поиска по шаблону.
sqlite3 — работа с реляционной базой данных SQLite.
statistics — функции математической статистики (среднее, медиана, дисперсия, мода и т.д.).
string — обработка строк.
sys — обработка аргументов командной строки; потоки стандартного ввода, стандартного вывода; стандартный поток ошибок.
timeit — анализ быстродействия.
Стандартная библиотека Python предоставляет богатую функциональность обработки текстовых/двоичных данных, математических вычислений, программирования в функциональном стиле, работы с файлами/каталогами, хранения данных, сжатия/архивирования данных, криптографии, сервисных функций операционной системы, параллельного программирования, межпро цессных взаимодействий, сетевых протоколов, работы с JSON/XML/другими форматами данных в интернете, мультимедиа, интернационализации, построения графического интерфейса, отладки, профилирования и т.д. В таблице выше перечислены некоторые модули стандартной библиотеки Python, которые будут использоваться в примерах.
Получение ответов на вопросы
На форумах в интернете вы сможете общаться с другими программистами Python и получать ответы на свои вопросы. Некоторые популярные форумы по тематике Python и программирования в целом:
• python-forum.io
• StackOverflow.com
•
https://www.dreamincode.net/forums/forum/29-python/Кроме того, многие фирмы-разработчики предоставляют форумы, посвященные их инструментам и библиотекам. Управление большинством упоминаемых в книге библиотек и их сопровождение осуществляется на github.com. Некоторые разработчики, занимающиеся сопровождением библиотек, предоставляют поддержку на вкладке Issues страницы GitHub библиотеки. Если вам не удастся найти ответ на свой вопрос в интернете, обращайтесь к веб-странице книги на сайте20
http://www.deitel.comТеперь все готово к чтению книги. Надеемся, она вам понравится!
19https://github.com/matplotlib/jupyter-matplotlib.
20 В настоящее время наш сайт проходит глобальную реконструкцию. Если вы не найдете какую-то необходимую информацию, напишите нам по адресу
deitel@deitel.com