10 основных команд для анализа данных с помощью Pandas

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

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

Что такое Pandas?

Pandas – это библиотека Python с открытым исходным кодом, предназначенная для манипулирования данными и их анализа, которая построена на базе NumPy, другой библиотеки Python для численных вычислений.

Pandas представляет две основные структуры данных:

  • Series: Одномерный маркированный массив, способный содержать любой тип данных (например, интегралы, строки, флоаты).
  • DataFrame: Двумерная структура данных с метками, похожая на электронную таблицу или таблицу SQL, в которой данные организованы в строки и столбцы.

Чтобы использовать Pandas, вам нужно сначала установить его с помощью менеджера пакетов pip:

pip install pandas

После установки импортируйте его в свой Python-скрипт:

import pandas as pd

Псевдоним pd обычно используется для того, чтобы сделать команды Pandas короче и проще в написании.

Теперь перейдем к основным командам!

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

Прежде чем работать с данными, необходимо загрузить их в Pandas DataFrame с помощью функции read_csv(), которая обычно используется для загрузки CSV-файлов:

data = pd.read_csv('data.csv')
print(data.head())
  • read_csv('data.csv'): Считывает CSV-файл в DataFrame.
  • head(): Отображает первые пять строк DataFrame.

Эта команда имеет решающее значение для запуска любой задачи предварительной обработки данных.

2. Просмотр данных

Чтобы разобраться в наборе данных, можно воспользоваться следующими командами:

  • head(n): Просмотреть первые n строки DataFrame.
  • tail(n): Просмотр последних n строк DataFrame.
  • info(): Получить сводную информацию о DataFrame, включая имена столбцов, количество ненулевых значений и типы данных.
  • describe(): Получить статистические сводки числовых столбцов.

Эти команды помогут вам быстро оценить структуру и содержание ваших данных.

print(data.info())
print(data.describe())

3. Выбор данных

Чтобы выбрать определенные строки или столбцы, используйте следующие методы:

Выберите один столбец:

column_data = data['ColumnName']

Выберите несколько столбцов:

selected_data = data[['Column1', 'Column2']]

Выберите строки с помощью нарезки:

rows = data[10:20]  # Rows 10 to 19

Выберите строки и столбцы с помощью loc или iloc:

By labels (loc)
subset = data.loc[0:5, ['Column1', 'Column2']]
By index positions (iloc)
subset = data.iloc[0:5, 0:2]

4. Фильтрация данных

Фильтрация позволяет выбирать строки на основе условий.

filtered_data = data[data['ColumnName'] > 50]

Вы можете объединить несколько условий с помощью & (AND) или | (OR):

filtered_data = data[(data['Column1'] > 50) & (data['Column2'] < 100)]

Это полезно для сужения набора данных до релевантных строк.

5. Добавление или изменение столбцов

Вы можете создавать новые колонки или изменять существующие:

Добавить новый столбец:

data['NewColumn'] = data['Column1'] + data['Column2']

Изменить существующий столбец:

data['Column1'] = data['Column1'] * 2

Эти операции необходимы для разработки функций и преобразования данных.

6. Работа с пропущенными данными

Реальные наборы данных часто содержат недостающие значения, и Pandas предоставляет инструменты для их обработки:

Проверьте наличие отсутствующих значений:

print(data.isnull().sum())

Отбросьте строки или столбцы с отсутствующими значениями:

data = data.dropna()
data = data.dropna(axis=1)

Заполнить недостающие значения:

data['ColumnName'] = data['ColumnName'].fillna(0)
data['ColumnName'] = data['ColumnName'].fillna(data['ColumnName'].mean())

Обработка отсутствующих данных гарантирует, что ваш набор данных чист и готов к анализу.

7. Сортировка данных

Чтобы отсортировать набор данных по одному или нескольким столбцам, используйте функцию sort_values():

sorted_data = data.sort_values(by='ColumnName', ascending=True)

Для нескольких столбцов:

sorted_data = data.sort_values(by=['Column1', 'Column2'], ascending=[True, False])

Сортировка полезна для упорядочивания данных и поиска закономерностей.

8. Группировка данных

Функция groupby() используется для группировки данных и выполнения агрегированных операций:

grouped_data = data.groupby('ColumnName')['AnotherColumn'].sum()

Общие функции агрегирования включают:

  • sum(): Сумма значений.
  • mean(): Среднее значение.
  • count(): Счетчик ненулевых значений.

Пример:

grouped_data = data.groupby('Category')['Sales'].mean()

Эта команда необходима для обобщения данных.

9. Слияние и объединение кадров данных

Чтобы объединить несколько DataFrames, используйте следующие методы:

Concatenate:

combined_data = pd.concat([data1, data2], axis=0)

Объединить:

merged_data = pd.merge(data1, data2, on='KeyColumn')

Присоединяйтесь:

joined_data = data1.join(data2, how='inner')

Эти операции позволяют объединять наборы данных для всестороннего анализа.

10. Экспорт данных

После обработки данных вам может понадобиться сохранить их с помощью функции to_csv():

data.to_csv('processed_data.csv', index=False)

Эта команда сохраняет DataFrame в CSV-файл без столбца индекса. Вы также можете экспортировать данные в другие форматы, такие как Excel, JSON или SQL.

Заключение

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

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

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Похожие статьи

Комментарии (0)