Pandas – специальная программная библиотека, оснащенная открытым исходным кодом. Предназначается для разработки на Python и широко используется при обработке и анализе данных.

Данный модуль поддерживает несколько типов данных:

  • DataFrame;
  • Series;
  • Panel.

Последний используется редко, поэтому ему уделять внимание не будем. Далее предстоит разобраться с операциями с DataFrame. Пример – добавление колонок.

Где используется модуль

Но перед непосредственной работой с упомянутым модулем, необходимо выяснить, когда и где он пригодится. Пандас используется при:

  1. Аналитике данных. Библиотека позволяет подготовить информацию для дальнейшей обработки. Она поможет удалить или заполнить пропуски, организовать сортировку или внести те или иные изменения.
  2. Data Science. С его помощью можно подготовить и первично проанализировать информацию. Все это помогает машинному и глубокому обучению.
  3. Статистике. У Pandas (PD) присутствует поддержка ключевых статистических методов. Они используются для более быстрой и эффективной обработки информации. Пример – расчет средних значений.

Pandas – инструмент, который используется для грамотной и быстрой визуализации имеющихся материалов. В основном базируется на столбцах и строках.

Типы данных

Пандас поддерживает три типа данных – одномерные массивы неизменного размера, двумерные табличные структуры и трехмерные массивы.

Наиболее распространенным вариантом является DataFrame. Разработчикам также предстоит часто иметь дело с Series. Эти информационные структуры поддерживают различные операции, реализации которых отнимают минимум времени. Далее предстоит выяснить, как вывести на дисплей устройства столбец таблицы.

Series – описание

Класс Series – объект, напоминающий одномерный массив. Он включает в себя совершенно любые типы информации. Представляет собой столбец таблицы с некой заданной последовательностью значений. Каждый «пункт» здесь имеет так называемый индекс – строковый номер.

Pandas: работа с DataFrames

Выше – фрагмент кода, который демонстрирует создание объекта Series.Pandas: работа с DataFrames

А вот – результат, который появится на экране. Самый левый столбец — это индексы. Справа от них будут выводиться присвоенные значения.

DataFrame – что это

Dataframe – основной объект в Pandas. Вокруг него строится вся дальнейшая работа модуля. DataFrame представляет собой таблицу с разными типами столбцов. Является стандартным способом хранения информации в электронной форме. Напоминает таблицы SQL, а также Excel и БД.

Внутри ячеек могут размещать различные данные:

  • булевы;
  • строки;
  • числа и другие.

DataFrame поддерживают индексирование не только столбцов, но и строк. Это помогает сортировать и фильтровать информацию, а также быстро искать те или иные значения.

Рассматриваемый объект модуля поддерживает как жесткое кодирование, так и импорт информации. Он распознает форматы:

  • таблиц SQL;
  • TSV;
  • таблиц Excel;
  • CSV.

Добавить в код DataFrame можно при помощи записи:

Pandas: работа с DataFrames.

В данной форме:

  • data – создает объект из входных данных;
  • index – указывает на строковые метки;
  • columns – имя столбца (подпись);
  • dtype – ссылка на информационный тип, который содержится в каждом столбце (указывать его не обязательно);
  • copy – копирование информации.

Получить DataFrame можно несколькими способами. Пример – формирование посредством кортежей или списков словарей.

Pandas: работа с DataFrames

Этот код выведет на экран такую запись:

Pandas: работа с DataFrames

Принцип работы приведенного примера прост – сначала создается словарь, в него передается в виде аргумента метод DataFrame. Далее присваиваются значения, которые система выводит на печать.

Индексами служит самый левый столбец – это строковые метки. Заголовки и указанные сведения формируют самую таблицу. За счет индексных параметров получается формировать индексированные DataFrames.

Импортирование CSV

Для формирования DataFrame можно использовать готовый CSV-документ. Импорт из него – распространенный способ создания объекта в Pandas.

CSV – это текстовый файл. В нем записи данных и имеющихся значений производятся в каждой строке. Здесь присутствует разделитель по умолчанию. Это – символ запятой.

Для считывания CSV-документов в Пандас используется специальный метод – read_csv(). Он поддерживает сразу два параметра:

  1. Sep. Устанавливает разделители, используемые во время выгрузки объемов информации. Параметр может быть полезен, если в исходном файле CSV установлены нестандартные разделители: табуляция или точки с запятыми.
  2. Dtype. Позволяет явно указать тип данных, используемых в столбцах. Помогает тогда, когда автоматически определяемый системой тип оказывается неверным.

С формированием DataFrame разобраться удалось. Теперь необходимо выяснить, как добавлять в него столбцы.

Работа со столбцами

В контексте данных строка – это утверждение или точка информации. Столбцы будут отражать свойства или атрибуты имеющихся утверждений. Простым языком: каждая строчка – это дом. Столбцы будут заключать в себе сведения о строении:

  • год постройки;
  • стоимость;
  • количество комнат;
  • сколько санузлов и спален на территории;
  • количество этажей и так далее.

Добавление и удаление столбцов – базовые операции при проведении анализа данных. Далее будут представлены существующие способы обеспечения новых столбцов в DataFrame Pandas.

Сначала необходимо создать «базу» — фрейм информации, который будет использоваться в предложенных примерах. Это поможет сделать следующий фрагмент кода:

Pandas: работа с DataFrames

Если запросить вывод результата, на экране появится следующая надпись:

Pandas: работа с DataFrames

Все предлагаемые далее примеры будут опираться на соответствующих исходный материал.

Простой подход

Вот пример элементарного пути создания нового столбца в DataFrame:

Pandas: работа с DataFrames
Pandas: работа с DataFrames

Здесь предстоит запомнить следующее:

  1. Названия столбцов указываются подобному тому, как происходит его выбор во фрейме.
  2. После этого соответствующему массиву присваиваются значения.
  3. Новый столбец DataFrame выводится последним. Он получает самый высокий индекс.

Данный прием позволяет добавить сразу несколько элементов в таблицу. Тогда названия (наименования) необходимо перечислить списком. Значения будут дверными. Это необходимо для совместимости с количеством строк и непосредственными столбцами.

Вот – наглядный пример добавления трех колонок в уже имеющуюся таблицу Пандас, заполненных случайными числами в пределах от 0 до 10:

Pandas: работа с DataFrames

Если вывести результат на терминал/экран, получится следующая ситуация:

Pandas: работа с DataFrames

А вот эта запись удаляет колонки из заданного массива:

Df.drop ([“1of3”, “2of3”, “3of3”], axis = 1, inplace = true)

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

По индексу

Pandas позволит вставить новую колонку в таблицу по заданному индексу. Для настройки расположения необходимо активировать функцию вставки – insert.

Pandas: работа с DataFrames

 Этот фрагмент кода добавляет одну колонку около A. На экране появится таблица следующего типа:

Pandas: работа с DataFrames

При использовании функций insert необходимо указать три параметра:

  • индекс;
  • названия колонок;
  • значения, которые требуется присвоить.

Индексные параметры начинаются с 0, поэтому в предложенном примере стоит 1.

Метки

Еще один подход – это добавление колонок при помощи меток. За данный прием отвечает функция as loc:

Pandas: работа с DataFrames
Pandas: работа с DataFrames

Для выбора строк и колонок необходимо указать те или иные метки. Чтобы выбрать все строчки, потребуется поставить двоеточие. Там, где необходимо вставить колонку, указываются метки элементов, которые выбираются. Столбца E в этой таблице Pandas нет. Это приводит к формированию новой колонки.

Специальная функция

Вставить в таблицу DataFrame новую колонку поможет специальная функция. Она называется assign. Реализация выглядит так:

Pandas: работа с DataFrames
Pandas: работа с DataFrames

В функции assign указываются:

  • имена колонок;
  • какие значения присвоить.

Значения будут получены путем использования другой колонки во фрейме. Подобный прием поддерживается и предыдущими концепциями.

Assign и Insert – разница

Рассматривая вставку колонок в таблицы Пандас, можно пользоваться двумя схожими функциями – assign и insert. Они выполняют одну и ту же операцию, но принцип их реализации значительно отличается друг от друга:

  1. Функция вставки (insert) будет работать на месте. Это значит, что все изменения (включая добавление новой колонки) сохранятся во фрейме.
  2. Функция назначения (assign) реализовывается иначе. Она будет возвращать измененный фрейм. Исходный объект остается в своем первоначальном виде.

При работе с insert изменения будут отображаться на устройстве при обработке имеющегося фрагмента кода по умолчанию. В случае с assign для этого предстоит сначала явно назначить скорректированную таблицу.

Удаление

Отдельно стоит рассмотреть удаление колонок. Для этого в Pandas предусматривается метод drop(). Колонки в нем стираются путем удаления элементов с указанными названиями (именами).

Pandas: работа с DataFrames

Вот – фрагмент кода, который позволит избавиться от колонок. При выводе результата на экран будет видно, что пропущенных пространств нет. Соответствующий значения будут отбрасываться. Связано это с тем, что ось устанавливается на 1. Все изменения проведены в исходном фрейме, из-за того, что inplace = True.

Вот так выглядел DataFrame до удаления компонентов:

Pandas: работа с DataFrames

А вот такой вид он приобрел после обработки заданного кода:

Pandas: работа с DataFrames

Есть еще одна элементарная операция, с которой должен быть знаком каждый разработчик Python, использующий модуль Pandas.

Выбор

Последнее рассматриваемое действие с DataFrame – это выбор. Доступ к столбцам может быть получен путем их вызова по присвоенным именам:

Pandas: работа с DataFrames

При обработке кода DataFrame на экране появится такая таблица:

Pandas: работа с DataFrames

Ее первоначальный вид задан так:

Pandas: работа с DataFrames

Все представленные операции являются базовыми. Они позволяют работать не только с DataFrame, но и с Series. Использование соответствующих структур будет совпадать.

Быстрое изучение

Чтобы лучше разобраться с Pandas, а также научиться выполнять операции с различными структурными единицами, рекомендуется закончить специализированные компьютерные дистанционные курсы.

На них пользователей научат работать с Pandas и его встроенными возможностями. Можно выбрать сразу одно или несколько направлений по Python, если этого хочет ученик. Все занятия организовываются дистанционно, а пропущенные уроки доступны для просмотра в записи.

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

Интересуют курсы по системному анализу и не только? Огромный выбор обучающих онлайн-программ по востребованным IT-направлениям есть в Otus!