Опубликовано

Новинка: “Современная аналитика данных в Excel: Использование Power Query, Power Pivot и других инструментов для расширенного анализа данных”

Современная аналитика данных в Excel: Использование Power Query, Power Pivot и других инструментов для расширенного анализа данных

Рассмотрены современные методы очистки, анализа и визуализации данных в Microsoft Excel. Описаны инструменты Power Query для создания воспроизводимых процессов подготовки данных, средства Power Pivot для построения реляционных моделей и настройки аналитических показателей. Приведены практические примеры использования динамических массивов, функций на базе искусственного интеллекта и интеграции с языком Python. Показано, как создавать отчеты и аналитические материалы, ранее считавшиеся трудновыполнимыми в Excel. Книга ориентирована на специалистов по данным, бизнес-аналитиков и пользователей Excel, заинтересованных в расширении своих возможностей.

Для аналитиков данных

Электронный архив к книге  можно скачать по ссылке https://github.com/stringfestdata/modern-analytics-excel-book

Если вы все еще не модернизировали процессы очистки данных и создания отчетов в Microsoft Excel, вы, возможно, упускаете шанс существенно повысить эффективность своей работы. А если ваша цель — глубокий и детальный анализ данных, стоит знать: возможности Excel гораздо шире, чем принято думать. Это практическое руководство открывает читателю доступ к современному арсеналу функций Excel и демонстрирует другие мощные инструменты аналитики.

Автор показывает бизнес-аналитикам, специалистам по данным и всем, кто работает с цифрами, как извлечь максимум пользы из привычных таблиц, используя новейшие возможности Excel. Вы научитесь создавать воспроизводимые сценарии очистки данных с помощью Power Query и строить реляционные модели прямо внутри рабочей книги, используя Power Pivot. Кроме того, вы познакомитесь с современными инструментами анализа — от динамических массивов и функций на базе искусственного интеллекта до интеграции с языком Python.

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

• Создавайте воспроизводимые и надежные процессы очистки данных в Excel с помощью Power Query
• Проектируйте реляционные модели и настраивайте аналитические показатели, используя Power Pivot
• Быстро извлекайте и трансформируйте данные благодаря функциям динамических массивов
• Применяйте возможности искусственного интеллекта для выявления скрытых закономерностей и трендов
• Интегрируйте Python в работу с Excel для автоматизации анализа и отчётности

Книгу “Современная аналитика данных в Excel: Использование Power Query, Power Pivot и других инструментов для расширенного анализа данных” можно купить в нашем интенет-магазине.

Предисловие…………………………………………………………………………………………… 11

Цель обучения……………………………………………………………………………………………………………………………. 11

Предварительные требования………………………………………………………………………………………………….. 11

Технические требования………………………………………………………………………………………………… 11

Необходимые навыки…………………………………………………………………………………………………….. 12

Как я к этому пришел?………………………………………………………………………………………………………………. 12

Что такое «современная аналитика»? Почему именно Excel?……………………………………………….. 13

Структура книги………………………………………………………………………………………………………………………… 14

Упражнения в конце глав………………………………………………………………………………………………………….. 14

Отбор тем……………………………………………………………………………………………………………………………………. 15

Условные обозначения……………………………………………………………………………………………………………… 15

Использование примеров кода…………………………………………………………………………………………………. 16

Контакты…………………………………………………………………………………………………………………………………….. 16

Благодарности…………………………………………………………………………………………………………………………… 16

Часть I. Очистка и преобразование данных
в Power Query………………………………………………………………………………….. 19

Глава 1. Таблицы — проводники в современный Excel…………………………. 21

Создание заголовков таблицы и ссылки на них……………………………………………………………………… 21

Добавление строки итогов к таблице………………………………………………………………………………………. 23

Именование таблиц Excel………………………………………………………………………………………………………….. 25

Форматирование таблиц Excel…………………………………………………………………………………………………. 25

Изменение диапазона таблицы………………………………………………………………………………………………… 26

Упорядочивание данных для анализа…………………………………………………………………………………….. 26

Заключение………………………………………………………………………………………………………………………………… 27

Упражнения………………………………………………………………………………………………………………………………… 28

Глава 2. Первые шаги в Power Query…………………………………………………….. 29

Что такое Power Query?……………………………………………………………………………………………………………… 29

Power Query как «разрушитель мифов» об Excel……………………………………………………………………… 29

«Excel не воспроизводит результаты»………………………………………………………………………….. 29

«В Excel нет настоящего null»………………………………………………………………………………………… 30

«Excel не может обработать более 1 048 576 строк»………………………………………………….. 31

Power Query как инструмент ETL в Excel…………………………………………………………………………………. 31

Extract (Извлечение)……………………………………………………………………………………………………….. 31

Transform (Преобразование)…………………………………………………………………………………………. 33

Load (Загрузка)……………………………………………………………………………………………………………….. 33

Обзор редактора Power Query…………………………………………………………………………………………………… 34

Лента……………………………………………………………………………………………………………………………….. 34

Запросы…………………………………………………………………………………………………………………………… 36

Импортированные данные…………………………………………………………………………………………….. 37

Выход из редактора Power Query………………………………………………………………………………….. 40

Возвращение в редактор Power Query…………………………………………………………………………… 41

Профилирование данных в Power Query………………………………………………………………………………….. 41

Что такое профилирование данных?……………………………………………………………………………. 42

Опции предварительного просмотра данных……………………………………………………………… 42

Monospaced и Show whitespace……………………………………………………………………………… 42

Column quality и Column distribution…………………………………………………………………….. 43

Что такое «допустимое» значение?…………………………………………………………………. 43

Отсутствующие значения………………………………………………………………………………… 43

Ошибки в ячейках……………………………………………………………………………………………… 44

Column profile (Профиль столбца)………………………………………………………………………… 45

Как убрать ограничение на тысячу строк?………………………………………………………………….. 46

Окончание профилирования данных……………………………………………………………………………. 47

Заключение………………………………………………………………………………………………………………………………… 47

Упражнения………………………………………………………………………………………………………………………………… 47

Глава 3. Преобразование строк в Power Query……………………………………….. 48

Удаление пропущенных значений…………………………………………………………………………………………… 48

Обновление запроса………………………………………………………………………………………………………………….. 50

Разделение данных на строки…………………………………………………………………………………………………… 52

Заполнение заголовков и пустых ячеек…………………………………………………………………………………… 55

Замена заголовков столбцов…………………………………………………………………………………………. 55

Заполнение пропущенных значений…………………………………………………………………………….. 55

Заключение………………………………………………………………………………………………………………………………… 56

Упражнения………………………………………………………………………………………………………………………………… 56

Глава 4. Преобразование столбцов в Power Query………………………………….. 57

Изменение регистра столбца…………………………………………………………………………………………………….. 57

Разделение на столбцы……………………………………………………………………………………………………………… 58

Изменение типов данных…………………………………………………………………………………………………………… 59

Удаление столбцов……………………………………………………………………………………………………………………. 59

Работа с датами…………………………………………………………………………………………………………………………. 60

Создание пользовательских столбцов…………………………………………………………………………………….. 61

Загрузка и проверка данных…………………………………………………………………………………………. 62

Вычисляемые столбцы и собственные расчеты………………………………………………………….. 62

Изменение структуры данных………………………………………………………………………………………………….. 63

Заключение………………………………………………………………………………………………………………………………… 65

Упражнения………………………………………………………………………………………………………………………………… 65

Глава 5. Объединение и добавление данных в Power Query…………………… 66

Добавление нескольких источников………………………………………………………………………………………… 66

Подключение к внешним рабочим книгам Excel………………………………………………………….. 66

Добавление запросов……………………………………………………………………………………………………… 69

Реляционные соединения………………………………………………………………………………………………………….. 70

Левое внешнее соединение: почти то же, что и VLOOKUP()………………………………………. 72

Внутреннее соединение: только точное соответствие………………………………………………… 75

Управление вашими запросами……………………………………………………………………………………………….. 76

Группировка запросов…………………………………………………………………………………………………… 76

Просмотр зависимостей запросов…………………………………………………………………………………. 77

Заключение………………………………………………………………………………………………………………………………… 78

Упражнения………………………………………………………………………………………………………………………………… 79

Часть II. Моделирование и анализ данных
с помощью Power Pivot……………………………………………………………… 81

Глава 6. Знакомство с Power Pivot………………………………………………………….. 83

Что такое Power Pivot?……………………………………………………………………………………………………………….. 83

Зачем нужен Power Pivot?………………………………………………………………………………………………………….. 83

Power Pivot и модель данных…………………………………………………………………………………………………….. 86

Подключение надстройки Power Pivot……………………………………………………………………………………… 87

Краткий обзор надстройки Power Pivot……………………………………………………………………………………. 88

Заключение………………………………………………………………………………………………………………………………… 89

Упражнения………………………………………………………………………………………………………………………………… 90

Глава 7. Создание реляционной модели данных в Power Pivot………………. 91

Подключение данных к Power Pivot…………………………………………………………………………………………. 91

Создание взаимосвязей между таблицами………………………………………………………………………………. 92

Таблицы фактов и таблицы измерений……………………………………………………………………………………. 95

Упорядочивание диаграммы…………………………………………………………………………………………. 95

Редактирование связей…………………………………………………………………………………………………… 96

Загрузка результатов в Excel……………………………………………………………………………………………………. 97

Понятие кардинальности………………………………………………………………………………………………………… 100

Связь «один к одному»…………………………………………………………………………………………………. 100

Связь «один ко многим»……………………………………………………………………………………………….. 101

Связь «многие ко многим»……………………………………………………………………………………………. 102

Почему так важна кардинальность?…………………………………………………………………………… 102

Направление фильтрации……………………………………………………………………………………………………….. 103

Фильтрация orders через users…………………………………………………………………………………….. 104

Фильтрация users через orders…………………………………………………………………………………….. 105

Направление фильтрации и кардинальность…………………………………………………………….. 105

От теории к практике……………………………………………………………………………………………………. 106

Создание вычисляемых столбцов в Power Pivot……………………………………………………………………. 106

Вычисления в Power Query или в Power Pivot?……………………………………………………………. 106

Пример: расчет нормы прибыли…………………………………………………………………………………. 107

Замена значений в столбце с помощью SWITCH()…………………………………………………….. 108

Создание иерархий и работа с ними……………………………………………………………………………………… 110

Создание иерархии в Power Pivot………………………………………………………………………………… 110

Использование иерархии в сводной таблице…………………………………………………………….. 111

Загрузка модели данных в Power BI………………………………………………………………………………………. 112

Power BI как третий инструмент «современного Excel»……………………………………………. 112

Импорт модели данных в Power BI……………………………………………………………………………… 113

Просмотр данных в Power BI………………………………………………………………………………………. 115

Заключение………………………………………………………………………………………………………………………………. 116

Упражнения……………………………………………………………………………………………………………………………… 116

Глава 8. Создание мер DAX и показателей KPI в Power Pivot………………. 118

Создание мер DAX…………………………………………………………………………………………………………………… 118

Создание неявных мер…………………………………………………………………………………………………. 118

Создание явных мер……………………………………………………………………………………………………… 120

Создание показателей KPI……………………………………………………………………………………………………… 124

Настройка стилей значков…………………………………………………………………………………………… 127

Добавление показателя KPI в сводную таблицу……………………………………………………….. 127

Заключение………………………………………………………………………………………………………………………………. 128

Упражнения……………………………………………………………………………………………………………………………… 128

Глава 9. Функции DAX в Power Pivot…………………………………………………… 130

Функция CALCULATE()……………………………………………………………………………………………………………. 130

Контекст фильтра…………………………………………………………………………………………………………. 130

Функция CALCULATE() с одним условием…………………………………………………………………. 131

Функция CALCULATE() с несколькими условиями…………………………………………………….. 132

Условие И……………………………………………………………………………………………………………… 132

Условие ИЛИ………………………………………………………………………………………………………… 132

Функция CALCULATE() с условием ALL()…………………………………………………………………… 132

Функции аналитики времени………………………………………………………………………………………………….. 135

Добавление таблицы дат…………………………………………………………………………………………….. 136

Создание базовых мер для аналитики времени…………………………………………………………. 137

Заключение………………………………………………………………………………………………………………………………. 141

Упражнения……………………………………………………………………………………………………………………………… 141

Часть III. Инструменты аналитики в Excel……………………….. 143

Глава 10. Введение в функции динамических массивов………………………. 145

Функции динамических массивов………………………………………………………………………………………….. 145

Что такое массив в Excel?…………………………………………………………………………………………….. 145

Ссылки на массивы………………………………………………………………………………………………………. 146

Ссылки на статические массивы………………………………………………………………………… 146

Ссылки на динамические массивы……………………………………………………………………… 147

Формулы массива…………………………………………………………………………………………………………. 147

Формулы статического массива…………………………………………………………………………. 147

Функции динамического массива……………………………………………………………………….. 149

Использование функций динамического массива………………………………………………………………… 149

Поиск уникальных и неповторяющихся значений
с помощью функции UNIQUE()……………………………………………………………………………………. 150

Разница между уникальными и отличающимися значениями…………………………………. 150

Использование оператора динамического диапазона……………………………………………… 151

Фильтрация записей с помощью функции FILTER()……………………………………………………………… 152

Добавление заголовков столбцов……………………………………………………………………………….. 153

Фильтрация по нескольким условиям…………………………………………………………………………. 154

Условие И……………………………………………………………………………………………………………… 154

Условие ИЛИ………………………………………………………………………………………………………… 154

Вложенные условия И/ИЛИ………………………………………………………………………………… 154

Сортировка с помощью функции SORTBY()…………………………………………………………………………… 154

Сортировка по нескольким диапазонам…………………………………………………………………….. 155

Сортировка без включения столбца сортировки в результат………………………………….. 156

Современный поиск с помощью функции XLOOKUP()…………………………………………………………. 156

Сравнение функций XLOOKUP() и VLOOKUP()…………………………………………………………. 157

Базовые возможности функции XLOOKUP()……………………………………………………………… 158

Обработка ошибок с помощью функции XLOOKUP()………………………………………………. 158

Функция XLOOKUP() и столбцы слева………………………………………………………………………. 159

Другие функции динамического массива………………………………………………………………………………. 159

Динамические массивы и современный Excel……………………………………………………………………….. 160

Заключение………………………………………………………………………………………………………………………………. 161

Упражнения……………………………………………………………………………………………………………………………… 161

Глава 11. Дополненная аналитика и будущее Excel……………………………… 162

Растущая сложность данных и аналитики……………………………………………………………………………. 162

Excel и self-service BI-системы………………………………………………………………………………………………… 163

Excel для дополненной аналитики…………………………………………………………………………………………. 164

Использование Analyze Data для получения результатов, сгенерированных ИИ…………….. 164

Построение статистических моделей с помощью XLMiner…………………………………………………. 168

Чтение данных с изображения……………………………………………………………………………………………….. 171

Анализ настроений с помощью Azure Machine Learning……………………………………………………… 173

Заключение………………………………………………………………………………………………………………………………. 177

Упражнения……………………………………………………………………………………………………………………………… 177

Глава 12. Python и Excel……………………………………………………………………….. 178

Предварительные требования………………………………………………………………………………………………… 178

Роль Python в современном Excel…………………………………………………………………………………………… 179

«Клей» для огромного набора инструментов…………………………………………………………….. 179

Сетевой эффект сокращает время разработки…………………………………………………………… 180

Добавьте современные технологии к Excel………………………………………………………………… 180

Модульное тестирование……………………………………………………………………………………. 180

Системы контроля версий……………………………………………………………………………………. 181

Разработка пакетов и их распространение……………………………………………………….. 181

Совмещение Python и Excel с помощью пакетов pandas и openpyxl………………………… 182

Зачем нужен pandas для работы с Excel?………………………………………………………….. 182

Ограничения при работе с pandas………………………………………………………………………. 182

Что умеет openpyxl?…………………………………………………………………………………………….. 182

Использование openpyxl вместе с pandas…………………………………………………………… 183

Другие пакеты Python для Excel………………………………………………………………………………….. 183

Пример автоматизации Excel с помощью pandas и openpyxl………………………………………………. 184

Очистка данных с помощью pandas…………………………………………………………………………… 185

Работа с метаданными………………………………………………………………………………………… 186

Поиск по шаблону и регулярные выражения…………………………………………………….. 186

Обработка отсутствующих значений………………………………………………………………… 187

Процентильное ранжирование……………………………………………………………………………. 188

Создание отчета с помощью openpyxl……………………………………………………………………….. 189

Создание рабочего листа для отчета…………………………………………………………………. 189

Вставка диаграмм………………………………………………………………………………………………… 190

Способ 1: создание диаграммы Excel…………………………………………………………… 190

Способ 2: вставка изображения из Python…………………………………………………… 191

Диаграммы Excel и Python…………………………………………………………………………………… 193

Добавление стилизованной таблицы…………………………………………………………………………. 194

Изменение формата на проценты……………………………………………………………………….. 194

Преобразование в таблицу Excel………………………………………………………………………… 194

Применение условного форматирования…………………………………………………………… 195

Автоподбор ширины столбцов……………………………………………………………………………. 195

Заключение………………………………………………………………………………………………………………………………. 196

Упражнения……………………………………………………………………………………………………………………………… 196

Глава 13. Заключение и дальнейшие шаги…………………………………………… 197

Другие функциональности Excel……………………………………………………………………………………………. 197

Функции LET() и LAMBDA()…………………………………………………………………………………………. 197

Power Automate, сценарии Office и Excel Online………………………………………………………… 198

Дальнейшее изучение Power Query и Power Pivot………………………………………………………………….. 199

Power Query и M……………………………………………………………………………………………………………. 199

Power Pivot и DAX…………………………………………………………………………………………………………. 200

Power BI для информационных панелей и отчетов…………………………………………………… 201

Azure и облачные вычисления………………………………………………………………………………………………… 201

Программирование на Python………………………………………………………………………………………………… 202

Большие языковые модели и инженерия запросов……………………………………………………………….. 202

Напутствие……………………………………………………………………………………………………………………………….. 203

Предметный указатель…………………………………………………………………………. 204

Об авторе……………………………………………………………………………………………… 206

Об изображении на обложке………………………………………………………………… 207

Опубликовано

Новинка: “Обработка данных на Python. Data Wrangling и Data Quality”

Обработка данных на Python. Data Wrangling и Data Quality

Книга посвящена первичной обработке данных (Data Wrangling) на Python  и  оценке их качества (Data Quality). Материал содержит основополагающие концепции, экспертные советы и  ресурсы, необходимые для первичной обработки, извлечения, оценки и анализа данных. Все темы раскрыты на простых и наглядных примерах из практики. Даны необходимые и достаточные сведения о языке программирования  Python 3.8+ для чтения, записи и преобразования данных из различных источников, а также  для обработки данных в больших масштабах. Приведены лучшие практики  документирования и структурирования кода. Описан сбор данных из файлов, веб-страниц и API. Рассмотрены приемы проведения базового статистического анализа наборов данных, а также наглядные и убедительные способы визуализации и представления  данных. Изложение рассчитано как на новичков по обработке данных, так и на профессионалов. Электронный архив на сайте издательства содержит цветные иллюстрации к книге.

Для специалистов по обработке данных

Начните работу с чтения, очистки и анализа данных

Мир вокруг нас полон данных, которые содержат уникальные и ценные сведения, но полезную информацию из этих «сырых» данных нужно уметь извлечь!

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

В этой книге ярко проявляется опыт Сьюзан Макгрегор в преподавании журналистики данных (data journalism) студентам всех уровней. Она приводит примеры из реальной жизни и объясняет, как подходить к поиску, проверке и анализу данных доступным способом.
 Джоанна С. Као , технический руководитель журналистики данных в газете Файнэншл Таймс

  • Применяйте Python 3.8+ для чтения, записи и преобразования данных из различных источников, а также для обработки данных в больших масштабах.
  • Организуйте, документируйте и структурируйте свой код, используя лучшие практики
  • Собирайте данные из файлов, веб-страниц и API
  • Проводите базовый статистический анализ, чтобы осмыслить наборы данных
  • Визуализируйте и представляйте данные наглядным и убедительным образом

Книгу “Обработка данных на Python. Data Wrangling и Data Quality” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Введение. 11

Для кого предназначена эта книга?. 12

Поедете сами или возьмете такси?. 12

Кому не следует читать эту книгу?. 13

Что ожидать от этой книги. 13

Типографские соглашения. 14

Использование примеров кода. 15

Цветные иллюстрации. 16

Возможности онлайнового обучения от компании O’Reilly. 16

Как связаться с нами. 16

Благодарности. 17

ГЛАВА 1. Введение в первичную обработку (выпас) и качество данных. 19

Что такое выпас данных?. 20

Что такое качество данных?. 22

Целостность данных. 23

Соответствие данных. 23

Почему мы выбрали Python?. 25

Универсальность. 25

Доступность. 25

Удобочитаемость. 26

Сообщество. 26

Альтернативы языку Python. 27

Написание и исполнение программ на языке Python. 27

Работа с кодом Python на локальном устройстве. 30

Введение в работу с командной строкой. 30

Установка языка Python, среды Jupyter Notebook и редактора кода. 33

Работа с кодом Python в режиме онлайн. 39

Hello World! 39

Создание файла автономного сценария Python при помощи Atom.. 39

Создание блокнота кода Python в Jupyter Notebook. 41

Создание блокнота кода Python в Google Colab. 42

Создаем программу. 43

В файле автономного сценария. 43

В блокноте. 43

Исполняем программу. 43

В файле автономного сценария. 43

В блокноте. 44

Документирование, сохранение и управление версиями своего кода. 44

Документирование. 44

Сохранение. 46

Управление версиями. 46

Заключение. 56

ГЛАВА 2. Введение в Python. 57

“Части речи” языков программирования. 58

Существительные ≈ переменные. 59

Важно ли конкретное имя?. 61

Наилучшие практики для именования переменных. 62

Глаголы ≈ функциям. 62

Применение пользовательских функций. 67

Библиотеки: занимаем пользовательские функции у других программистов. 68

Структуры управления: циклы и условные операторы. 69

Циклы. 69

Условные операторы. 72

Понимание ошибок. 77

Синтаксические ошибки. 78

Ошибки времени исполнения. 79

Логические ошибки. 83

Отправляемся в путь с данными Citi Bike. 85

Начинаем с создания псевдокода. 86

Масштабирование. 92

Заключение. 93

ГЛАВА 3. Понимание качества данных. 95

Оценка соответствия данных. 97

Достоверность данных. 98

Надежность данных. 100

Репрезентативность данных. 101

Оценка целостности данных. 104

Необходимые, но недостаточные. 106

Важные. 108

Достижимость. 111

Улучшение качества данных. 114

Очистка данных. 115

Аугментация данных. 115

Заключение. 116

ГЛАВА 4. Работа с файловыми и канальными данными
на языке Python. 117

Структурированные и неструктурированные данные. 119

Работа со структурированными данными. 123

Файловые табличные форматы данных. 124

Выпас табличных данных посредством языка Python. 126

Выпас реальных данных: понимание безработицы. 133

XLSX, ODS и все остальные. 136

Данные фиксированной ширины. 143

Канальные данные — интерактивные обновления через Интернет. 147

Выпас канальных данных средствами языка Python. 150

Формат JSON: данные следующего поколения. 160

Работа с неструктурированными данными. 165

Текст на основе изображений: доступ к данным в формате PDF. 165

Выпас PDF-данных, используя Python. 166

Обращение к таблицам PDF посредством Tabula. 171

Заключение. 171

ГЛАВА 5. Доступ к интернет-данным.. 173

Доступ к веб-данным XML и JSON.. 175

Знакомство с API-интерфейсами. 178

Базовые API-интерфейсы на примере поисковой системы. 179

Специализированные API-интерфейсы: добавление простой
аутентификации. 181

Получение ключа для API-интерфейса FRED.. 181

Использование ключа API для запроса данных. 182

Чтение документации по API-интерфейсу. 183

Защита своего ключа API при использовании сценариев Python. 186

Создание файла учетных данных. 188

Использование учетных данных в отдельном сценарии. 189

Основы работы с файлом .gitignore. 190

Специализированные API-интерфейсы: работа с протоколом OAuth. 193

Получение учетной записи разработчика Twitter 194

Создание приложения и учетных данных Twitter 196

Кодирование ключа API и ключа секрета API 201

Запрос токена доступа и данных из API-интерфейса Twitter 202

Этические нормы при работе с API-интерфейсами. 206

Извлечение веб-данных: источник данных последней надежды. 207

Осторожно извлекаем данные с веб-сайта УГПТ. 210

Использование средств инспектирования браузера. 211

Решение Python для извлечения данных из веб-страницы:
библиотека Beautiful Soup. 214

Заключение. 218

ГЛАВА 6. Оценка качества данных. 219

Пандемия и программа PPP. 221

Оценка целостности данных. 222

Имеют ли данные известное происхождение?. 223

Актуальны ли данные?. 223

Полные ли данные?. 224

Хорошо ли данные аннотированы?. 236

Являются ли данные крупномасштабными?. 242

Непротиворечивы ли данные?. 244

Многомерны ли наши данные?. 248

Атомарны ли данные?. 250

Понятны ли данные?. 250

Размерностно структурированы ли данные?. 252

Оценка соответствия данных. 253

Достоверность данных. 253

Надежность данных. 257

Репрезентативность данных. 258

Заключение. 259

ГЛАВА 7. Очистка, преобразование и дополнение данных. 261

Выбор подмножества данных системы Citi Bike. 262

Простое разбиение. 263

Регулярные выражения: супермощное средство сопоставления строк. 265

Создание дат. 270

Удаление хлама из файлов данных. 272

Декодирование дат Excel 276

Создание настоящих данных CSV из данных фиксированной ширины. 279

Исправление разнообразности написаний. 282

Тернистый путь к “простым” решениям. 288

Опасные подводные камни. 290

Дополнение данных. 292

Заключение. 294

ГЛАВА 8. Структурирование и рефакторинг кода. 296

Обзор пользовательских функций. 296

Многократное использование кода. 297

Аккуратное и понятное документирование. 297

Недостаточная функциональность по умолчанию.. 298

Область видимости. 298

Определение параметров функции. 301

Доступные опции. 302

Предоставление аргументов. 303

Возвращаемые значения. 303

Работа со стеком. 305

Рефакторинг для получения удовольствия и прибыли. 306

Функция для определения рабочих дней. 306

Опрятные метаданные. 309

Использование pydoc для документирования сценариев и пользовательских функций. 317

О полезности аргументов командной строки. 321

Отличия во взаимодействии со сценариями в автономных файлах и блокнотах. 325

Заключение. 325

ГЛАВА 9. Введение в анализ данных. 327

Вся суть — в контексте. 328

Одинаковые, но не совсем. 329

Что типично? Оценка центральной тенденции. 329

Что это значит?. 330

Поразмыслим нестандартно: выявляем выбросы. 332

Визуализация для анализа данных. 332

Какова форма наших данных? Учимся понимать гистограммы. 336

Вопрос за $2 миллиона. 346

Пропорциональный ответ. 359

Заключение. 362

ГЛАВА 10. Представление данных. 364

Основы визуального красноречия. 365

Сформулируйте свои данные. 367

Диаграммы, графики и картограммы — вот это да! 368

Круговые диаграммы. 369

Линейчатые и столбчатые диаграммы. 372

Линейные диаграммы. 377

Диаграмма рассеяния. 380

Картограммы. 383

Элементы красноречивых визуальных эффектов. 386

“Мелкие” детали действительно имеют значение. 386

Доверяйте своим глазам (и экспертам) 387

Выбор масштаба. 388

Выбор цветовой гаммы. 389

Прежде всего делайте аннотации! 389

От базового к красивому: настройка визуализации с помощью seaborn и matplotlib. 390

Выйдите за рамки основ. 395

Заключение. 396

ГЛАВА 11. За пределами Python. 397

Дополнительные инструменты для анализа данных. 398

Программы для работы с электронными таблицами. 398

OpenRefine. 399

Дополнительные инструменты для обмена и представления данных. 402

Редактирование изображений в форматах JPG, PNG и GIF. 402

Программное обеспечение для редактирования SVG и других векторных форматов. 402

Размышления об этике. 404

Заключение. 405

Приложение А. Другие ресурсы по программированию на Python. 406

Официальная документация Python. 406

Установка ресурсов Python. 407

Где искать библиотеки. 407

Следите за остротой своих инструментов. 408

Где получить больше информации. 409

Приложение Б. Еще несколько слов о Git 410

Вы запускаете команду git push/pull и оказываетесь в странном текстовом редакторе. 410

Ваша команда git push/pull отклоняется. 412

Выполните команду git pull 412

Краткое руководство по Git 414

приложение В. Поиск данных. 416

Репозитории данных и API 416

Эксперты по предметным вопросам. 417

Запросы FOIA/L. 418

Кастомные методы сбора данных. 419

приложение Г. Ресурсы для визуализации и информационного дизайна. 421

Основополагающие книги по визуализации информации. 421

Краткое руководство, за которым вы потянетесь. 422

Источники вдохновения. 422

Об авторе. 423

Колофон. 424

Предметный указатель. 425

Susan McGregor

Сьюзен Макгрегор (Susan McGregor) — исследователь Института науки о данных Колумбийского университета. На протяжении более десяти лет она применяет свой успешный подход к преподаванию программирования и анализа данных для студентов нетехнических специальностей.

Опубликовано

Новинка! Глубокое обучение и анализ данных. Практическое руководство

Глубокое обучение и анализ данных. Практическое руководство

Представляем новую книгу Дмитрия Малова: “Глубокое обучение и анализ данных. Практическое руководство“.

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

Для Python-разработчиков и специалистов Data Science

Как говорил Артур Кларк, «любая достаточно продвинутая технология неотличима от магии» («третий закон Кларка»). На наших глазах именно так начинает восприниматься глубокое обучение – технология, зародившаяся в 1959 году.

Эта книга поможет вам сделать первые шаги в изучении важнейших современных библиотек глубокого обучения – Keras, PyTorch и Tensorflow. В ней просто и последовательно раскрываются принципы обработки изображений и естественного языка при помощи базовых алгоритмов, реализованных на Python. В книгу включён проект по построению собственной системы глубокого обучения на основе данных из обычного браузера.

Книга сопровождается примерами кода по каждому из теоретических аспектов, чтобы у разработчиков была возможность применить полученные теоретические знания на практике для решения собственных задач. Весь код доступен в репозитории: https://github.com/Dimitrioum/ml-data-analysis-book.

 

Книгу “Глубокое обучение и анализ данных. Практическое руководство” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Введение. 9

Чему обучит книга?. 10

Для кого эта книга?. 11

Глава 1. Основы машинного обучения. 13

Линейная алгебра. 13

Скаляр. 13

Вектор. 13

Матрица. 14

Тензор. 14

Норма. 17

Теория информации и теория вероятностей. 17

Случайная величина. 18

Распределение вероятности. 18

Условная вероятность. 19

Маргинальное распределение вероятности. 20

Цепное правило. 20

Математическое ожидание. 20

Дисперсия. 21

Ковариация. 21

Правило Байеса. 21

Наиболее часто используемые распределения вероятности. 22

Машинное обучение: основные понятия, подходы и типы задач. 22

Задача Т. 23

Опыт Е. 24

Активация нейронов в нейросетевых моделях. 26

Основы языка программирования Python. 26

Базовые типы. 27

Интерактивный режим работы Python. 27

Переменные в Python. 28

Числа: целые, вещественные. 28

Строки. 29

Списки. 31

Кортежи. 32

Словари. 33

Операторы сравнения. 34

Логические операторы. 34

Операторы ветвления. 35

Циклы. 36

Работа со строками. 37

Срезы строк. 38

Функции. 38

Сценарный режим программирования. 40

Функциональное программирование. 41

Основы объектно-ориентированного программирования. 49

Полезные приемы. 51

Основы разработки программного обеспечения. 53

Глава 2. Основные алгоритмы машинного обучения. 55

Предобработка данных. 55

Алгоритмы снижения размерности данных. 58

Линейные методы. 59

Нелинейные методы. 66

Линейная регрессия. 76

Логистическая регрессия. 77

Дерево решений. 78

Метод опорных векторов. 80

Наивный байесовский классификатор. 81

Алгоритм k ближайших соседей. 83

Алгоритм k средних. 84

Случайный лес. 86

Алгоритмы градиентного бустинга. 88

Глава 3. Основы глубокого обучения. 91

Алгоритм обратного распространения ошибки. 91

Перцептрон. 92

Цепь Маркова. 94

Машина Больцмана. 94

Сеть Хопфилда. 96

Глубокая сеть доверия. 97

Глубокая сверточная сеть. 97

Капсульные нейронные сети. 99

Нейронная сеть с блоком внимания (трансформеры) 101

Рекуррентные нейронные сети. 103

Автокодировщики. 104

Генеративно-состязательные сети. 105

Практические примеры. 106

Система проактивной локализации пользователей киберфизической системы. 109

Концепция системы проактивной локализации. 116

Глава 4. Основы data science. 119

Методология CRISP-DM.. 119

Бизнес-анализ. 120

Анализ данных. 121

Подготовка данных. 122

Моделирование. 124

Оценка результата. 125

Внедрение. 126

Роли специалистов в команде ML-разработки. 127

Современные тренды data science. 129

Борьба с DeepFake-контентом. 129

Интерес бизнеса к полноценным (end-to-end) решениям на основе
машинного обучения. 130

Low-code- и no-code-платформы для ML-разработки. 130

Методы оптимизации (квантования) обученной нейросетевой модели. 130

MLOps 131

Full-stack deep learning-разработчик. 131

Обучение без учителя. 132

Few-shot-, one-shot-, zero-shot-обучение. 132

Обзор современных библиотек для ML-разработки. 133

TensorFlow.. 134

CNTK.. 135

PyTorch. 135

Keras 136

Theano. 136

Torch. 137

Caffe. 137

MxNet 138

Chainer 138

Глава 5. Задачи глубокого обучения. 141

Аугментация данных. 141

Методы аугментации данных. 141

Глубокое обучение в задачах компьютерного зрения. 142

Установка OpenCV.. 142

Загрузка и отображение изображений. 143

Рисование на изображении. 144

Задача оптического распознавания символов. 144

Обработка естественного языка. 148

Методы и инструменты обработки текста. 148

Статистические методы. 148

Текстовая классификация. 149

Извлечение текста. 150

Обработка аудио. 151

Задача идентификации спикера. 151

Как мы представляем звук в цифровом виде?. 152

Подготовка аудиоданных для модели глубокого обучения. 153

Спектр. 153

Аудиомодели глубокого обучения. 154

Какие проблемы решает глубокое обучение аудио?. 155

Классификация аудио. 155

Аудиоразделение и сегментация. 155

Классификация музыкальных жанров. 156

Создание и транскрипция музыки. 156

Распознавание голоса. 156

Преобразование речи в текст и текста в речь. 157

Обработка видеопоследовательности. 157

Декодирование и кодирование. 158

Интерполяция с отслеживанием. 159

Глава 6. Знакомство с TensorFlow.. 161

Начало работы с TensorFlow.. 161

Определение и запуск нейронной сети. 163

Определение нейронной сети. 163

Запуск нейронной сети. 164

Классификация изображений с помощью TensorFlow.. 165

Построение модели для трансферного обучения. 167

Обучение модели. 167

Тонкая настройка модели (fine tuning) 168

Обработка текста с TensorFlow.. 168

Представление текста в виде тензоров. 169

Векторизация текста. 171

Ограничение размера словарного запаса. 171

Текстовое представление набора слов через мешок слов. 171

Обучение классификатора мешка слов. 172

Обучение классификатора как одной сети. 173

Биграммы, триграммы и n-граммы. 174

Автоматический расчет векторов мешка слов. 175

Частота слова и обратная частота документа. 175

Сжатые векторные характеристики. 177

Рекуррентные нейронные сети для обработки текста. 184

Пересмотр последовательностей переменных. 188

Классификация аудио с TensorFlow.. 189

Импортирование набора данных речевых мини-команд. 189

Преобразование сигналов в спектрограммы. 192

Построение и обучение модели. 193

Оценка точности модели. 195

Глава 7. Знакомство с Keras 197

Функции. 197

Преимущества. 197

Установка пакетов. 198

Установка Keras с использованием Python. 200

TensorFlow.. 200

Theano. 201

Доступные модули. 201

Модуль Backend. 202

Модуль Utils 205

Основная концепция слоев в Keras 206

Форма ввода. 210

Модуль Initializers 210

Модуль Constraints 215

Модуль Regularizers 216

Функции активации. 217

linear 217

elu. 218

selu. 218

relu. 219

softmax. 220

softplus 220

softsign. 221

tanh. 221

sigmoid. 222

hard_sigmoid. 222

exponential 223

Классификация изображений с Keras 223

Трансферное обучение. 227

Keras для классификации аудио. 229

Предварительная настройка. 229

Построение кривых амплитуды. 230

Работа с tf.Keras 231

Классификация изображений с использованием TensorFlow 2.x. 231

Импортирование набора данных. 232

Предварительная обработка данных. 232

Компиляция и обучение модели глубокого обучения. 233

Классификация текста с использованием TensorFlow и Keras 234

Предварительная подготовка. 234

Импорт текста. 234

Очистка и предварительная обработка текста. 235

Заполнение текстовых последовательностей. 236

Создание тестовой выборки. 236

Построение и компиляция модели. 236

Обучение модели глубокого обучения. 236

Импорт тестовых данных. 237

Прогноз по набору тестов. 237

Глава 8. Знакомство с PyTorch. 239

Основы PyTorch. 239

Загрузка данных, устройств и CUDA.. 239

Создание параметров. 239

Пакет Autograd. 240

Процедура оптимизации. 240

Функция ошибки. 241

Модель. 241

Набор данных. 243

Метрика качества. 245

Классификация аудио с PyTorch. 245

Тензоры. 247

Классификация изображений с PyTorch. 247

PyTorch для компьютерного зрения. 247

Загрузка данных. 248

Обучение модели. 249

Классификация текста с PyTorch. 251

Подготовка конвейеров обработки данных. 252

Создание пакета данных и итератора. 252

Определение модели. 253

Глава 9. Разработка веб-приложения для демонстрации моделей
глубокого обучения. 259

Разработка веб-приложения на Django. 259

Пару слов о Heroku. 261

Заключение. 267

Предметный указатель. 268

Малов Дмитрий

Малов Дмитрий Александрович, с 2017 по 2021 – научный сотрудник института Санкт-Петербургского Федерального исследовательского центра Российской академии наук, лаборатория больших данных в социокиберфизических системах, автор более 20 научных статей и монографии. Сфера профессиональных интересов – распознавание образов, синтетические данные. Является генеральным директором стартапа «Квант», занимающегося прикладными исследованиями в сфере квантовых вычислений.

Опубликовано

Новинка: Расширенная аналитика с PySpark

Расширенная аналитика с PySpark

Представляем книгу, которая посвящена практическим методам анализа больших объемов данных с использованием языка Python и фреймворка Spark, она знакомит с моделью программирования Spark и основами системы с открытым исходным кодом  PySpark. Каждая глава описывает отдельный аспект анализа данных, показаны основы обработки данных в PySpark и Python на примере очистки данных, подробно освещается машинное обучение с помощью Spark. Книга поможет читателю понять, как устроен и работает весь конвейер PySpark для комплексной аналитики больших наборов данных: от создания и оценки моделей до очистки, предварительной обработки и исследования данных с особым акцентом на производственные приложения. Отдельные главы посвящены обработке изображений и библиотеке Spark NLP.

Практические примеры анализа больших наборов данных с использованием Python и Spark

В современном мире накоплен ошеломляющий объем данных, и он продолжает расти. Один из основных инструментов анализа данных — Apache Spark, фреймворк с открытым исходным кодом для распределенной обработки неструктурированных и слабоструктурированных данных. Это практическое руководство объединяет Spark, статистические методы и наборы данных из реального мира. Авторы научат вас решать задачи анализа с помощью  системы с открытым исходным кодом PySpark, применяемой для распределенной обработки больших данных с использованием Python, а также других передовых методов программирования Spark.

Специалисты по обработке данных знакомят читателей с экосистемой Spark, а затем приводят примеры базовых методов анализа, включая классификацию, кластеризацию, совместную фильтрацию и обнаружение аномалий в таких областях, как геномика, безопасность и финансы. Отдельные главы посвящены обработке изображений и библиотеке Spark NLP.

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

  • Ознакомьтесь с моделью программирования и экосистемой Spark
  • Изучите общие подходы в науке о данных
  • Изучите практические примеры анализа больших наборов данных
  • Узнайте, какие инструменты машинного обучения подходят для решения конкретных задач
  • Напишите код, который можно адаптировать для многих целей

Книгу “Расширенная аналитика с PySpark” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Предисловие. 9

Почему мы написали эту книгу именно сейчас?. 9

Как устроена эта книга. 10

Условные обозначения, используемые в этой книге. 11

Использование примеров кода. 12

Благодарности. 12

ГЛАВА 1. Анализ больших данных. 15

Работа с большими данными. 16

Знакомство с Apache Spark и PySpark. 18

Компоненты Spark. 18

PySpark. 20

Экосистема. 21

Spark 3.0. 22

PySpark решает проблемы науки о данных. 23

Что дальше?. 24

ГЛАВА 2. Введение в анализ данных с помощью PySpark. 25

Архитектура Spark. 27

Установка PySpark. 28

Подготовка учебных данных. 30

Анализ данных с помощью API DataFrame. 36

Быстрая сводная статистика для фреймов данных. 40

Поворот и изменение формы фреймов данных. 42

Соединение фреймов данных и выбор признаков. 45

Функция оценивания и проверка модели. 46

Что дальше?. 48

ГЛАВА 3. Рекомендация музыки и набор данных Audioscrobbler. 49

Подготовка данных. 50

Наши требования к рекомендательной системе. 52

Альтернативный алгоритм наименьших квадратов. 55

Подготовка данных. 56

Создание первой модели. 59

Выборочная проверка рекомендаций. 63

Оценка качества рекомендаций. 65

Вычисление AUC.. 66

Выбор гиперпараметра. 68

Выдача рекомендаций. 70

Что дальше?. 72

ГЛАВА 4. Прогнозирование с помощью деревьев и лесов решений. 73

Деревья и леса решений. 74

Подготовка данных. 77

Наше первое дерево решений. 81

Гиперпараметры дерева решений. 88

Настройка деревьев решений. 90

Еще раз о категориальных признаках. 94

Случайные леса. 98

Получение прогнозов. 100

Что дальше?. 101

ГЛАВА 5. Обнаружение аномалий при помощи кластеризации
K-средних. 102

Кластеризация K-средних. 103

Выявление аномального сетевого трафика. 104

Набор данных Кубка KDD 1999 г. 105

Первый опыт кластеризации. 106

Выбор параметра k. 108

Визуализация с помощью SparkR.. 111

Нормализация признаков. 115

Категориальные переменные. 117

Использование меток с энтропией. 119

Кластеризация в действии. 120

Что дальше?. 122

ГЛАВА 6. Исследование Википедии с помощью LDA и Spark NLP. 123

Скрытое распределение Дирихле. 124

LDA в PySpark. 124

Получение данных. 125

Spark NLP. 126

Подготовка вашей среды.. 127

Парсинг данных. 128

Подготовка данных с использованием Spark NLP. 130

TF-IDF. 134

Вычисление TF-IDF. 135

Создание модели LDA.. 136

Что дальше?  139

ГЛАВА 7. Геопространственный и временнóй анализ данных
о поездках на такси. 140

Подготовка данных. 141

Преобразование строк даты и времени в метки времени. 143

Обработка недействительных записей. 146

Геопространственный анализ. 147

Введение в GeoJSON.. 147

GeoPandas. 149

Сессионизация в PySpark. 152

Создание сессий: вторичные сортировки в PySpark. 153

Что дальше?. 155

ГЛАВА 8. Оценка финансового риска. 157

Терминология. 158

Методы расчета VaR.. 159

Дисперсия-ковариация. 159

Ретроспективное моделирование. 159

Моделирование методом Монте-Карло. 159

Наша модель. 160

Получение данных. 161

Подготовка данных. 162

Определение весов факторов. 165

Выборка. 168

Многомерное нормальное распределение. 170

Испытание моделей. 171

Визуализация распределения доходов. 175

Что дальше?. 175

ГЛАВА 9. Анализ данных геномики и проект BDG.. 177

Разделение хранения и моделирования. 178

Установка ADAM.. 181

Введение в работу с геномными данными с использованием ADAM.. 182

Преобразование формата файла с помощью ADAM CLI 183

Получение геномных данных с помощью PySpark и ADAM.. 183

Прогнозирование сайтов связывания транскрипционных факторов на основе данных ENCODE  189

Что дальше?. 194

ГЛАВА 10. Обнаружение сходства изображений с помощью глубокого обучения и PySpark LSH   196

PyTorch. 197

Установка PyTorch. 197

Подготовка данных. 198

Изменение размера изображений с помощью PyTorch. 199

Модель глубокого обучения для векторного представления изображений. 200

Встраивание изображений. 200

Импорт встраиваний изображений в PySpark. 202

Поиск схожих изображений с использованием PySpark LSH.. 203

Поиск ближайшего соседа. 204

Что дальше?. 207

ГЛАВА 11. Управление жизненным циклом машинного обучения
с помощью MLflow.. 208

Жизненный цикл машинного обучения. 208

MLflow.. 210

Отслеживание экспериментов. 211

Использование MLflow Model 214

Создание и использование проектов MLflow.. 217

Что дальше?. 220

Об авторах. 221

Колофон. 222

Предметный указатель. 223

Акаш Тандон — cоучредитель и технический директор компании Looppanel. Ранее работал главным инженером по данным в компании Atlan,  специализирующейся на обработке данных и аналитике.

Сэнди Райза — ведущий разработчик проекта Dagster, облачного оркестратора для анализа данных,  и участник проекта Apache Spark.

Ури Ласерсон — учредитель и технический директор компании Patch Biosciences, специализирующей в области геномики и расшифровки ДНК. Ранее работал с большими данными в Cloudera, создателе дистрибутивов Apache Hadoop.

Шон Оуэн — главный архитектор решений, специализирующийся на машинном обучении и науке о данных в Databricks, компании по разработке корпоративного программного обеспечения, основанной создателями Apache Spark. Участник проекта Apache Spark.

Джош Уиллс — инженер-программист в компании WeaveGrid, развивающей «зеленые» технологии в сфере энергетики, и бывший руководитель отдела обработки данных в компании Slack Tecnologies, разработавшей одноименный корпоративный мессенджер .

Опубликовано

Погрузитесь в аналитику данных

Погружение в аналитику данных

В нашем издательстве вышла новая книга, в которой приводятся практические приемы анализа данных. Рассказано, как исследовать и тестировать взаимосвязи между переменными в Excel и использовать его для статистики и анализа. Описан перенос данных из Excel в R, язык программирования с открытым исходным кодом, специально разработанный для выполнения статистического анализа. Отдельный раздел посвящен переносу данных из Excel в Python и выполнению полного анализа данных средствами этого языка. В результате читатель научится выполнять разведочный анализ данных (Exploratory Data Analysis, EDA) и проверку гипотез с использованием языков программирования Python и R.

Аналитика данных может показаться сложной сферой, но если вы  опытный пользователь Excel, у вас есть уникальное преимущество. С помощью этого практического руководства пользователи Excel среднего уровня получат прочное понимание аналитики и стека данных. Прочитав эту книгу, вы сможете проводить исследовательский анализ данных и проверку гипотез с помощью языков программирования Python и R.

Исследование и проверка взаимосвязей — основа аналитики. Используя описанные инструменты и механизмы, вы освоите более продвинутые методы анализа данных. Джордж Маунт подробно объясняет ключевые статистические концепции с помощью электронных таблиц, а затем помогает применить полученные знания об обработке данных для написания программ на языках R и Python.

Эта практическая книга поможет вам:

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

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

Перейти от Excel к Python.  Узнайте, как перенести информацию из Excel в Python, научитесь выполнять разведочный анализ, проверку гипотез, а также полный анализ данных средствами этого языка.

Джордж подробно рассказывает, что нужно сделать, чтобы перейти от Excel к науке о данных и аналитике.
Джордан Голдмайер, обладатель сертификата Microsoft Excel MVP

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

Книгу “Погружение в аналитику данных” можно купить со скидкой в интернет-магазине издательства “БХВ“.

Предисловие…………………………………………………………………………………………….. 9

Цель обучения………………………………………………………………………………………………………………………………. 9

Предварительные условия………………………………………………………………………………………………………….. 9

Технические требования………………………………………………………………………………………………….. 9

Требования к предварительной подготовке…………………………………………………………………. 10

Как я пришел к аналитике…………………………………………………………………………………………………………. 10

«Excel — плохо, программирование — хорошо»……………………………………………………………………. 11

Преимущества Excel при обучении аналитике……………………………………………………………………….. 12

Обзор книги………………………………………………………………………………………………………………………………… 13

Упражнения в конце глав………………………………………………………………………………………………………….. 13

Эта книга — не список готовых решений………………………………………………………………………………… 14

Без паники!…………………………………………………………………………………………………………………………………. 14

Условные обозначения……………………………………………………………………………………………………………… 14

Использование примеров кода…………………………………………………………………………………………………. 15

Контакты…………………………………………………………………………………………………………………………………….. 16

Благодарности…………………………………………………………………………………………………………………………… 16

Часть I. Основы аналитики в Excel………………………………………… 17

Глава 1. Основы разведочного анализа данных…………………………………….. 19

Что такое разведочный анализ данных?…………………………………………………………………………………. 19

Наблюдения……………………………………………………………………………………………………………………. 21

Переменные…………………………………………………………………………………………………………………….. 21

Категориальные переменные………………………………………………………………………………… 22

Количественные переменные………………………………………………………………………………… 24

Закрепление материала: классификация переменных…………………………………………………………… 25

Резюме: типы переменных………………………………………………………………………………………………………… 27

Исследование переменных в Excel…………………………………………………………………………………………… 27

Исследование категориальных переменных……………………………………………………………….. 27

Исследование количественных переменных……………………………………………………………….. 30

Заключение………………………………………………………………………………………………………………………………… 41

Упражнения………………………………………………………………………………………………………………………………… 41

Глава 2. Понятие вероятности……………………………………………………………….. 42

Вероятность и случайность………………………………………………………………………………………………………. 42

Вероятность и выборочное пространство………………………………………………………………………………. 42

Вероятность и эксперименты……………………………………………………………………………………………………. 43

Безусловная и условная вероятность………………………………………………………………………………………. 43

Распределение вероятностей……………………………………………………………………………………………………. 43

Дискретное распределение вероятностей……………………………………………………………………. 44

Непрерывное распределение вероятностей…………………………………………………………………. 47

Заключение………………………………………………………………………………………………………………………………… 55

Упражнения………………………………………………………………………………………………………………………………… 55

Глава 3. Основы инференциальной статистики…………………………………….. 56

Базовые понятия статистического вывода………………………………………………………………………………. 56

Сбор данных для репрезентативной выборки……………………………………………………………… 57

Формулирование гипотез………………………………………………………………………………………………. 58

Разработка плана анализа…………………………………………………………………………………………….. 59

Анализ данных……………………………………………………………………………………………………………….. 62

Принятие решения………………………………………………………………………………………………………….. 64

Это ваш мир… данные только живут в нем……………………………………………………………………………… 71

Заключение………………………………………………………………………………………………………………………………… 72

Упражнения………………………………………………………………………………………………………………………………… 73

Глава 4. Корреляция и регрессия……………………………………………………………. 74

«Корреляция не подразумевает причинно-следственную связь»………………………………………….. 74

Понятие корреляции………………………………………………………………………………………………………………….. 75

От корреляции к регрессии…………………………………………………………………………………………….. 80

Линейная регрессия в Excel……………………………………………………………………………………………. 81

Переосмысление результатов: ложные зависимости……………………………………………………………… 87

Заключение………………………………………………………………………………………………………………………………… 88

Переход к программированию…………………………………………………………………………………………………. 89

Упражнения………………………………………………………………………………………………………………………………… 89

Глава 5. Стек анализа данных……………………………………………………………….. 90

Статистика, аналитика и наука о данных………………………………………………………………………………. 90

Статистика………………………………………………………………………………………………………………………. 90

Аналитика данных…………………………………………………………………………………………………………. 90

Бизнес-аналитика…………………………………………………………………………………………………………… 91

Наука о данных………………………………………………………………………………………………………………. 91

Машинное обучение………………………………………………………………………………………………………. 91

Различия без взаимоисключения…………………………………………………………………………………… 92

Значение стека анализа данных………………………………………………………………………………………………. 92

Электронные таблицы……………………………………………………………………………………………………. 93

VBA………………………………………………………………………………………………………………………….. 94

Современный Excel………………………………………………………………………………………………… 95

Базы данных……………………………………………………………………………………………………………………. 96

Платформы бизнес-аналитики (BI)……………………………………………………………………………….. 97

Языки программирования для анализа данных………………………………………………………….. 98

Заключение………………………………………………………………………………………………………………………………… 99

Что будет дальше…………………………………………………………………………………………………………………….. 100

Упражнения……………………………………………………………………………………………………………………………… 100

Часть II. От Excel к R……………………………………………………………………. 101

Глава 6. Первые шаги в R для пользователей Excel……………………………… 103

Загрузка R………………………………………………………………………………………………………………………………… 103

Начало работы с RStudio……………………………………………………………………………………………………….. 103

Пакеты в R………………………………………………………………………………………………………………………………… 112

Обновление R, RStudio и пакетов R……………………………………………………………………………………….. 114

Заключение………………………………………………………………………………………………………………………………. 114

Упражнения……………………………………………………………………………………………………………………………… 116

Глава 7. Структуры данных в R…………………………………………………………… 117

Векторы…………………………………………………………………………………………………………………………………….. 117

Индексирование и подмножества векторов…………………………………………………………………………… 119

От таблиц Excel к кадрам данных R………………………………………………………………………………………. 120

Импорт данных в R………………………………………………………………………………………………………………….. 122

Исследование кадра данных………………………………………………………………………………………………….. 126

Индексирование и подмножества кадров данных………………………………………………………………… 128

Запись кадров данных…………………………………………………………………………………………………………….. 129

Заключение………………………………………………………………………………………………………………………………. 130

Упражнения……………………………………………………………………………………………………………………………… 130

Глава 8. Обработка и визуализация данных в R………………………………….. 131

Обработка данных с помощью пакета dplyr…………………………………………………………………………. 131

Постолбцовые операции……………………………………………………………………………………………… 132

Построчные операции………………………………………………………………………………………………….. 135

Агрегирование и объединение данных………………………………………………………………………. 137

dplyr и оператор pipe (%>%)……………………………………………………………………………………….. 141

Преобразование данных с помощью tidyr…………………………………………………………………. 142

Визуализация данных с помощью ggplot2……………………………………………………………………………. 145

Заключение………………………………………………………………………………………………………………………………. 151

Упражнения……………………………………………………………………………………………………………………………… 151

Глава 9. Кульминация: R для анализа данных…………………………………….. 152

Разведочный анализ данных………………………………………………………………………………………………….. 153

Проверка гипотез……………………………………………………………………………………………………………………… 157

t-тест для независимых выборок…………………………………………………………………………………. 157

Линейная регрессия……………………………………………………………………………………………………… 159

Разделение и проверка данных для обучения и тестирования………………………………… 161

Заключение………………………………………………………………………………………………………………………………. 164

Упражнения……………………………………………………………………………………………………………………………… 164

Часть III. От Excel к Python………………………………………………………. 165

Глава 10. Первые шаги в Python для пользователей Excel……………………. 167

Загрузка Python……………………………………………………………………………………………………………………….. 167

Начало работы с Jupyter…………………………………………………………………………………………………………. 168

Модули в Python………………………………………………………………………………………………………………………. 176

Обновление Python, Anaconda и пакетов Python………………………………………………………. 178

Заключение………………………………………………………………………………………………………………………………. 178

Упражнения……………………………………………………………………………………………………………………………… 178

Глава 11. Структуры данных в Python…………………………………………………. 180

Массивы NumPy……………………………………………………………………………………………………………………….. 181

Индексирование и подмножества массивов NumPy……………………………………………………………… 182

Кадры данных Pandas…………………………………………………………………………………………………………….. 184

Импорт данных в Python…………………………………………………………………………………………………………. 185

Исследование кадра данных………………………………………………………………………………………………….. 187

Индексирование и подмножества кадров данных…………………………………………………….. 188

Запись кадров данных…………………………………………………………………………………………………. 189

Заключение………………………………………………………………………………………………………………………………. 189

Упражнения……………………………………………………………………………………………………………………………… 189

Глава 12. Обработка и визуализация данных в Python…………………………. 191

Постолбцовые операции…………………………………………………………………………………………………………. 192

Построчные операции…………………………………………………………………………………………………………….. 194

Агрегирование и объединение данных………………………………………………………………………………….. 195

Преобразование данных…………………………………………………………………………………………………………. 197

Визуализация данных……………………………………………………………………………………………………………… 199

Заключение………………………………………………………………………………………………………………………………. 203

Упражнения……………………………………………………………………………………………………………………………… 203

Глава 13. Кульминация: Python для анализа данных…………………………… 204

Разведочный анализ данных………………………………………………………………………………………………….. 205

Проверка гипотез……………………………………………………………………………………………………………………… 207

t-тест для независимых выборок…………………………………………………………………………………. 207

Линейная регрессия……………………………………………………………………………………………………… 208

Разделение и проверка данных для обучения и тестирования………………………………… 210

Заключение………………………………………………………………………………………………………………………………. 212

Упражнения……………………………………………………………………………………………………………………………… 212

Глава 14. Заключение и дальнейшие шаги…………………………………………… 213

Дополнительные элементы стека анализа данных………………………………………………………………. 213

План исследований и бизнес-эксперименты…………………………………………………………………………. 213

Дополнительные статистические методы……………………………………………………………………………… 214

Наука о данных и машинное обучение…………………………………………………………………………………. 214

Контроль версий………………………………………………………………………………………………………………………. 214

Этика…………………………………………………………………………………………………………………………………………. 215

Двигайтесь вперед и выбирайте то, что нравится………………………………………………………………… 215

Напутствие……………………………………………………………………………………………………………………………….. 216

Предметный указатель…………………………………………………………………………. 217

Об авторе……………………………………………………………………………………………… 221

Об изображении на обложке………………………………………………………………… 222

Джордж Маунт

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