Руководство по Pandas 7 необходимых всесторонних функций для работы с данными

Pandas 7 essential versatile data manipulation functions guide

Изображение, созданное с использованием DALL·E 2

В области анализа данных и машинного обучения библиотека Pandas является мощным инструментом. С более чем 200 функциями и методами, она позволяет вам манипулировать и трансформировать данные, но также делает вас неспособными манипулировать и трансформировать данные из-за своей сложности. Это двухсторонний меч.

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

Мы будем использовать псевдо-набор данных на протяжении всей статьи.

Первый шаг – импортировать pandas как pd. Это одна из лучших практик импортирования pandas, так как pd – это известное сокращение для pandas.

import pandas as pd

Импорт данных

Перед любым манипулированием данными вам необходимо импортировать свои данные. Функция read_csv() является точкой входа для загрузки наборов данных в объекты DataFrame Pandas. Указывая путь к файлу, эта функция оживляет данные, позволяя вам начать исследование и анализ данных.

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

In[*]  car_sales = pd.read_csv("./data/car-sales.csv")       car_sales
Вывод

Взгляд на ваши данные

Хотите увидеть первые или последние несколько строк вашего DataFrame? Функции head() и tail() позволяют быстро заглянуть в данные, помогая оценить структуру и содержание вашего набора данных. Они идеально подходят для предварительного понимания перед приступлением к трансформации данных. Вы можете указать аргумент внутри head(9) и tail(9), чтобы указать, сколько элементов вы хотите увидеть. По умолчанию выводится 5 элементов.

Чтобы проиллюстрировать, рассмотрим пример кода ввода и вывода ниже.

In[*]  car_sales.head()
Вывод
In[*]  car_sales.tail()
Вывод

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

Функция info() – это ваш сыщик данных. Она предоставляет полный обзор вашего DataFrame, показывая количество ненулевых записей, типы данных, использование памяти и многое другое. Этот быстрый обзор может направлять ваши усилия по очистке и подготовке данных.

In[*]  car_sales.info()
Вывод

Раскройте описательную статистику

Статистические показатели всего в одном вызове функции. Функция describe() предоставляет множество описательных статистик, включая среднее, медиану, минимум, максимум и квартили. Получите обзор распределения ваших числовых данных и обнаружьте возможные выбросы. Помните, что describe() может не показывать осмысленную информацию, это всегда будет зависеть от ваших наборов данных.

In[*]  car_sales.describe()
Вывод

Группировка для получения понимания

Данные часто рассказывают более полную историю, когда они сгруппированы по определенным атрибутам. Функция groupby() позволяет сегментировать данные на основе определенного столбца, делая ее неотъемлемым инструментом для агрегирования, суммирования и визуализации тенденций в вашем наборе данных.

In[*]  car_sales.groupby(["Make"]).mean()
Output

Повышение возможностей настраиваемых преобразований

Иногда стандартных функций недостаточно. Функция apply() дает вам свободу применять настраиваемые функции к вашим данным. Эта гибкость открывает двери для индивидуальных преобразований данных, которые соответствуют вашим конкретным потребностям. Это также важно для манипулирования и очистки ваших наборов данных.

В этом примере мы собираемся применить функцию lambda для удаления $, , и .00 в ценах и преобразуем их в int для выполнения значимых функций. Смотрите ДО и ПОСЛЕ цен.

In[*]  car_sales["Price"] = car_sales["Price"].apply (lambda x: x.replace(".00", '')).str.replace('[\$\,]', '').astype(int)       car_sales
BEFORE
AFTER

Работа с отсутствующими данными

Работа с отсутствующими данными – это общая проблема. Функция fillna() позволяет заменять отсутствующие значения, а dropna() позволяет удалять строки или столбцы с отсутствующими данными. Эти функции гарантируют, что ваш анализ основан на полной и точной информации.

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

In[*]  car_sales_missing = pd.read_csv("./data/car-sales-missing-data.csv")       car_sales_missing
Output

Мы ясно видим, что некоторые данные в столбце Odometer имеют значение NaN. Давайте используем функцию fillna() и заполним отсутствующее значение средним значением Odometer.

In[*]  car_sales_missing["Odometer"] = car_sales_missing["Odometer"].fillna(car_sales_missing["Odometer"].mean())
Output

Теперь только Colours, Doors и Price имеют значения NaN, находящиеся в индексах 6, 7, 8 и 9 соответственно. Мы удалим строки и столбцы, содержащие NaN, с помощью функции dropna().

In[*]  car_sales_missing = car_sales_missing.dropna()       car_sales_missing
Output

Pandas – это не просто библиотека; это вход в эффективную манипуляцию и анализ данных. Вооружившись этими неотъемлемыми функциями, вы готовы справиться с реальными задачами по данным и проблемами машинного обучения с уверенностью. Будь вы ученым-исследователем данных, аналитиком или инженером машинного обучения, Pandas позволяет вам превратить беспорядочные наборы данных в ценные идеи. Поэтому погрузитесь, экспериментируйте и раскройте безграничный потенциал Pandas для ваших проектов, основанных на данных.

Оставайтесь любознательными и поддерживайте свой аналитический ум в тонусе!

Если вы хотите узнать больше о Pandas, рекомендуется ознакомиться с их документацией!