После рассмотрения текстовых форматов, регулярных выражений и численных массивов возникает необходимость работы с данными в табличной форме. Именно табличная модель является основной в прикладном анализе данных, статистике и машинном обучении. Для решения таких задач используется библиотека Pandas.
4.1.1 Место Pandas в структуре анализа данных
В главе 2 прослеживается последовательность представления данных – от внешнего источника к аналитической структуре (Таблица 4.1.1).
Таблица 4.1.1 – Эволюция представления данных в модулях курса
|
Раздел |
Представление данных |
Инструмент |
|
2.2 |
Текстовый файл |
|
|
2.3 |
Структурированный текст |
|
|
3.1 |
Числовой массив |
|
|
4.1 |
Табличная модель |
|
Таким образом, в предыдущих разделах данные:
· были считаны из внешнего источника (разделы модуля 2);
· очищены и структурированы (разделы модуля 2);
· представлены в виде числового массива (разделы модуля 3).
В разделе 2.5 данные приобретают форму структурированной таблицы, предназначенной для прикладного анализа. Pandas завершает этап формирования аналитической модели данных, объединяя структуру таблицы и численные возможности NumPy.
4.1.2 Назначение библиотеки Pandas
В аналитической практике данные чаще всего имеют табличную структуру, где:
· строки представляют собой наблюдения;
· столбцы – измеряемые признаки;
· значения – результаты измерений.
Такая форма организации информации является базовой для статистики, машинного обучения и прикладного анализа. Библиотека Pandas предназначена для работы именно с табличными структурами данных (Таблица 4.1.2).
Таблица 4.1.2 – Основные возможности Pandas
|
Назначение |
|
|
Загрузка данных |
Чтение CSV, Excel и других форматов |
|
Выбор данных |
Доступ к столбцам и строкам |
|
Фильтрация |
Отбор по условиям |
|
Агрегирование |
Расчёт статистик |
|
Работа с пропусками |
Обнаружение и обработка |
|
Интеграция с NumPy |
Численные вычисления |
Аналитический акцент. Если NumPy ориентирован на работу с числовыми массивами, то Pandas ориентирован на работу с структурированными наборами данных, где важно не только значение, но и его контекст (имя признака, индекс строки). Таким образом:
· NumPy – инструмент математических операций;
· Pandas – инструмент организации и анализа таблиц.
Именно поэтому Pandas используется как основной инструмент прикладного анализа данных.
4.1.3 Основная структура библиотеки Pandas – DataFrame
Центральным объектом библиотеки Pandas является DataFrame. DataFrame – это двумерная табличная структура данных, предназначенная для хранения и анализа информации, представленной в виде строк и столбцов (таблица 4.1.3).
Таблица 4.1.3 – Структура DataFrame
|
Компонент |
Описание |
Аналитический смысл |
|
Индекс |
Идентификатор строки |
Номер наблюдения |
|
Столбцы |
Имена признаков |
Переменные |
|
Значения |
Данные таблицы |
Измерения |
|
Типы данных |
dtype столбцов |
Тип признака |
Таким образом, DataFrame моделирует реальный набор данных, где каждая строка соответствует объекту исследования, а каждый столбец – измеряемому признаку.
# Подключение библиотеки pandas
import pandas as pd
# Создание словаря
# Ключи станут именами столбцов
# Значения – списками одинаковой длины
data = {
"name": ["Анна", "Иван", "Мария"],
"age": [21, 22, 20],
"score": [88, 75, 92]
}
# Формирование DataFrame
df = pd.DataFrame(data)
# Вывод таблицы
print(df)
Результат:
name age score
0 Анна 21 88
1 Иван 22 75
2 Мария 20 92
Пояснение к коду
· каждая строка – отдельный объект наблюдения;
· каждый столбец – признак;
· индекс формируется автоматически;
· типы данных определяются для каждого столбца.