Книгу можно рассматривать как современное практическое введение в разработку научных приложений на Python, ориентированных на обработку данных. Описаны те части языка Python и библиотеки для него, которые необходимы для эффективного решения широкого круга аналитических задач: интерактивная оболочка IPython, библиотеки NumPy и pandas, библиотека для визуализации данных matplotlib и др.
Издание идеально подойдет как аналитикам, только начинающим осваивать обработку данных, так и опытным программистам на Python, еще не знакомым с научными приложениями.

Python как клей.
Своим успехом в качестве платформы для научных расчетов Python отчасти обязан простоте интеграции с кодом на С, C++ и FORTRAN. Во многих современных вычислительных средах применяется общий набор унаследованных библиотек, написанных на FORTRAN и С, содержащих реализации алгоритмов линейной алгебры, оптимизации, интегрирования, быстрого преобразования Фурье и других. Поэтому многочисленные компании и национальные лаборатории используют Python как «клей» для объединения написанных за 30 лет программ.
Многие программы содержат небольшие участки кода, на выполнение которых уходит большая часть времени, и большие куски «склеивающего кода», который выполняется нечасто. Во многих случаях время выполнения склеивающего кода несущественно, реальную отдачу дает оптимизация узких мест, которые иногда имеет смысл переписать на низкоуровневом языке типа С.
ОГЛАВЛЕНИЕ.
Предисловие.
Графические выделения.
Глава 1. Предварительные сведения.
О чем эта книга?.
Почему именно Python?.
Python как клей.
Решение проблемы «двух языков».
Недостатки Python.
Необходимые библиотеки для Python.
NumPy.
pandas.
matplotlib.
IPython.
SciPy.
Установка и настройка.
Windows.
Apple OS X.
GNU/Linux.
Python 2 и Python 3.
Интегрированные среды разработки (IDE).
Сообщество и конференции.
Структура книги.
Примеры кода.
Данные для примеров.
Соглашения об импорте.
Жаргон.
Благодарности.
Глава 2. Первые примеры.
Набор данных 1.usa.gov с сайта bit.ly.
Подсчет часовых поясов на чистом Python.
Подсчет часовых поясов с помощью pandas.
Набор данных MovieLens 1M.
Измерение несогласия в оценках.
Имена, которые давали детям в США за период с 1880 по 2010 год.
Анализ тенденций в выборе имен.
Выводы и перспективы.
Глава 3. IPython: интерактивные вычисления и среда разработки.
Основы IPython.
Завершение по нажатию клавиши Tab.
Интроспекция.
Команда %run.
Исполнение кода из буфера обмена.
Комбинации клавиш.
Исключения и обратная трассировка.
Магические команды.
Графическая консоль на базе Qt.
Интеграция с matplotlib и режим pylab.
История команд.
Поиск в истории команд и повторное выполнение.
Входные и выходные переменные.
Протоколирование ввода-вывода.
Взаимодействие с операционной системой.
Команды оболочки и псевдонимы.
Система закладок на каталоги.
Средства разработки программ.
Интерактивный отладчик.
Хронометраж программы: %time и %timeit.
Простейшее профилирование: %prun и %run -p.
Построчное профилирование функции.
HTML-блокнот в IPython.
Советы по продуктивной разработке кода с использованием IPython.
Перезагрузка зависимостей модуля.
Советы по проектированию программ.
Дополнительные возможности IPython.
Делайте классы дружественными к IPython.
Профили и конфигурирование.
Благодарности.
Глава 4. Основы NumPy: массивы и векторные вычисления.
NumPy ndarray: объект многомерного массива.
Создание ndarray.
Тип данных для ndarray.
Операции между массивами и скалярами.
Индексирование и вырезание.
Булево индексирование.
Прихотливое индексирование.
Транспонирование массивов и перестановка осей.
Универсальные функции: быстрые поэлементные операции над массивами.
Обработка данных с применением массивов.
Запись логических условий в виде операций с массивами.
Математические и статистические операции.
Методы булевых массивов.
Сортировка.
Устранение дубликатов и другие теоретико-множественные операции.
Файловый ввод-вывод массивов.
Хранение массивов на диске в двоичном формате.
Сохранение и загрузка текстовых файлов.
Линейная алгебра.
Генерация случайных чисел.
Пример: случайное блуждание.
Моделирование сразу нескольких случайных блужданий.
Глава 5. Первое знакомство с pandas.
Введение в структуры данных pandas.
Объект Series.
Объект DataFrame.
Индексные объекты.
Базовая функциональность.
Переиндексация.
Удаление элементов из оси.
Доступ по индексу, выборка и фильтрация.
Арифметические операции и выравнивание данных.
Применение функций и отображение.
Сортировка и ранжирование.
Индексы по осям с повторяющимися значениями.
Редукция и вычисление описательных статистик.
Корреляция и ковариация.
Уникальные значения, счетчики значений и членство.
Обработка отсутствующих данных.
Фильтрация отсутствующих данных.
Иерархическое индексирование.
Уровни переупорядочения и сортировки.
Сводная статистика по уровню.
Работа со столбцами DataFrame.
Другие возможности pandas.
Доступ по целочисленному индексу.
Структура данных Panel.
Глава 6. Чтение и запись данных, форматы файлов.
Чтение и запись данных в текстовом формате.
Чтение текстовых файлов порциями.
Вывод данных в текстовом формате.
Ручная обработка данных в формате с разделителями.
Данные в формате JSON.
XML и HTML: разбор веб-страниц.
Разбор XML с помощью lxml.objectify.
Двоичные форматы данных.
Взаимодействие с HTML и Web API.
Взаимодействие с базами данных.
Чтение и сохранение данных в MongoDB.
Глава 7. Переформатирование данных: очистка, преобразование, слияние, изменение формы.
Комбинирование и слияние наборов данных.
Слияние объектов DataFrame как в базах данных.
Слияние по индексу.
Конкатенация вдоль оси.
Комбинирование перекрывающихся данных.
Изменение формы и поворот.
Изменение формы с помощью иерархического индексирования.
Поворот из «длинного» в «широкий» формат.
Преобразование данных.
Устранение дубликатов.
Преобразование данных с помощью функции или отображения.
Замена значений.
Переименование индексов осей.
Дискретизация и раскладывание.
Обнаружение и фильтрация выбросов.
Перестановки и случайная выборка.
Вычисление индикаторных переменных.
Манипуляции со строками.
Методы строковых объектов.
Регулярные выражения.
Векторные строковые функции в pandas.
Пример: база данных о продуктах питания министерства сельского хозяйства США.
Глава 8. Построение графиков и визуализация.
Краткое введение в API библиотеки matplotlib.
Рисунки и подграфики.
Цвета, маркеры и стили линий.
Риски, метки и надписи.
Аннотации и рисование в подграфике.
Сохранение графиков в файле.
Конфигурирование matplotlib.
Функции построения графиков в pandas.
Линейные графики.
Столбчатые диаграммы.
Гистограммы и графики плотности.
Диаграммы рассеяния.
Нанесение данных на карту: визуализация данных о землетрясении на Гаити.
Инструментальная экосистема визуализации для Python.
Chaco.
mayavi.
Прочие пакеты.
Будущее средств визуализации.
Глава 9. Агрегирование данных и групповые операции.
Механизм GroupBy.
Обход групп.
Выборка столбца или подмножества столбцов.
Группировка с помощью словарей и объектов Series.
Группировка с помощью функций.
Группировка по уровням индекса.
Агрегирование данных.
Применение функций, зависящих от столбца, и нескольких функций.
Возврат агрегированных данных в «неиндексированном» виде.
Групповые операции и преобразования.
Метод apply: часть общего принципа разделения–применения–объединения.
Квантильный и интервальный анализ.
Пример: подстановка зависящих от группы значений вместо отсутствующих.
Пример: случайная выборка и перестановка.
Пример: групповое взвешенное среднее и корреляция.
Пример: групповая линейная регрессия.
Сводные таблицы и кросс-табуляция.
Таблицы сопряженности.
Пример: база данных федеральной избирательной комиссии за 2012 год.
Статистика пожертвований по роду занятий и месту работы.
Распределение суммы пожертвований по интервалам.
Статистика пожертвований по штатам.
Глава 10. Временные ряды.
Типы данных и инструменты, относящиеся к дате и времени.
Преобразование между строкой и datetime.
Основы работы с временными рядами.
Индексирование, выборка, подмножества.
Временные ряды с неуникальными индексами.
Диапазоны дат, частоты и сдвиг.
Генерация диапазонов дат.
Частоты и смещения дат.
Сдвиг данных (с опережением и с запаздыванием).
Часовые пояса.
Локализация и преобразование.
Операции над объектами Timestamp с учетом часового пояса.
Операции между датами из разных часовых поясов.
Периоды и арифметика периодов.
Преобразование частоты периода.
Квартальная частота периода.
Преобразование временных меток в периоды и обратно.
Создание PeriodIndex из массивов.
Передискретизация и преобразование частоты.
Понижающая передискретизация.
Повышающая передискретизация и интерполяция.
Передискретизация периодов.
Графики временных рядов.
Скользящие оконные функции.
Экспоненциально взвешенные функции.
Бинарные скользящие оконные функции.
Скользящие оконные функции, определенные пользователем.
Замечания о быстродействии и потреблении памяти.
Глава 11. Финансовые и экономические приложения.
О переформатировании данных.
Временные ряды и выравнивание срезов.
Операции над временными рядами с различной частотой.
Время суток и выборка данных «по состоянию на».
Сращивание источников данных.
Индексы доходности и кумулятивная доходность.
Групповые преобразования и анализ.
Оценка воздействия групповых факторов.
Децильный и квартильный анализ.
Другие примеры приложений.
Стохастический граничный анализ.
Роллинг фьючерсных контрактов.
Скользящая корреляция и линейная регрессия.
Глава 12. Дополнительные сведения о библиотеке NumPy.
Иерархия типов данных в NumPy.
Дополнительные манипуляции с массивами.
Изменение формы массива.
Упорядочение элементов массива в C и в Fortran.
Конкатенация и разбиение массива.
Повторение элементов: функции tile и repeat.
Эквиваленты прихотливого индексирования: функции take и put.
Укладывание.
Укладывание по другим осям.
Установка элементов массива с помощью укладывания.
Дополнительные способы использования универсальных функций.
Методы экземпляра u-функций.
Пользовательские u-функции.
Структурные массивы.
Вложенные типы данных и многомерные поля.
Зачем нужны структурные массивы?.
Манипуляции со структурными массивами: numpy.lib.recfunctions.
Еще о сортировке.
Косвенная сортировка: методы argsort и lexsort.
Альтернативные алгоритмы сортировки.
Метод numpy.searchsorted: поиск элементов в отсортированном массиве.
Класс matrix в NumPy.
Дополнительные сведения о вводе-выводе массивов.
Файлы, спроецированные на память.
HDF5 и другие варианты хранения массива.
Замечание о производительности.
Важность непрерывной памяти.
Другие возможности ускорения: Cython, f2py, C.
приложение. Основы языка Python.
Интерпретатор Python.
Основы.
Семантика языка.
Скалярные типы.
Поток управления.
Структуры данных и последовательности.
Список.
Встроенные функции последовательностей.
Словарь.
Множество.
Списковое, словарное и множественное включение.
Функции.
Пространства имен, области видимости и локальные функции.
Возврат нескольких значений.
Функции являются объектами.
Анонимные (лямбда) функции.
Замыкания: функции, возвращающие функции.
Расширенный синтаксис вызова с помощью *args и **kwargs.
Каррирование: частичное фиксирование аргументов.
Генераторы.
Генераторные выражения.
Модуль itertools.
Файлы и операционная система.
Предметный указатель.
Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Python и анализ данных, Маккинли У., 2024 - fileskachat.com, быстрое и бесплатное скачивание.
Скачать pdf
Ниже можно купить эту книгу, если она есть в продаже, и похожие книги по лучшей цене со скидкой с доставкой по всей России.Купить книги
Скачать - pdf - Яндекс.Диск.
Дата публикации:
Теги: учебник по программированию :: программирование :: Маккинли
Смотрите также учебники, книги и учебные материалы:
Предыдущие статьи:








