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

Pandas — мощная библиотека Python, широко используемая для анализа и обработки данных. Одной из его ключевых особенностей является DataFrame, двумерная структура данных, которая позволяет эффективно хранить табличные данные и манипулировать ими. В этой статье мы рассмотрим различные методы работы с DataFrames в Pandas, используя разговорный язык и попутно предоставляя примеры кода. Итак, давайте углубимся и овладеем искусством манипулирования DataFrame!

  1. Создание DataFrame:

Для начала давайте создадим DataFrame с нуля. Мы можем использовать функцию pd.DataFrame(), передавая в качестве аргумента словарь, список словарей или массив NumPy. Вот пример:

import pandas as pd
data = {'Name': ['John', 'Jane', 'Mike'],
        'Age': [25, 30, 35],
        'City': ['New York', 'London', 'Sydney']}
df = pd.DataFrame(data)
print(df)

Выход:

   Name  Age      City
0  John   25  New York
1  Jane   30    London
2  Mike   35    Sydney
  1. Доступ к данным и манипулирование ими:

После того как у нас есть DataFrame, мы можем выполнять с ним различные операции:

  • Доступ к столбцам: мы можем получить доступ к определенному столбцу, используя квадратные скобки или точечную запись. Например, df['Name']или df.Nameдаст нам столбец «Имя».

  • Доступ к строкам: мы можем использовать аксессор locили ilocдля доступа к определенным строкам по их индексу или положению соответственно.

  • Фильтрация данных. Мы можем фильтровать строки на основе определенных условий, используя логическое индексирование. Например, df[df['Age'] > 30]вернет строки, в которых значение столбца «Возраст» больше 30.

  • Добавление столбцов. Мы можем добавить новый столбец в DataFrame, назначив ему новую серию или список. Например, df['Salary'] = [50000, 60000, 70000]добавит столбец «Зарплата».

  • Удаление столбцов. Столбцы можно удалить с помощью метода drop(). Например, df.drop('City', axis=1)удалит столбец «Город».

  1. Агрегация данных и сводная статистика:

Pandas предоставляет несколько методов для вычисления совокупной статистики по DataFrames:

  • mean(): вычисляет среднее значение для каждого числового столбца.
  • sum(): вычисляет сумму значений для каждого числового столбца.
  • min(): находит минимальное значение в каждом числовом столбце.
  • max(): находит максимальное значение в каждом числовом столбце.
  • describe(): генерирует описательную статистику для каждого числового столбца.

Вот пример:

print(df.mean())
print(df.describe())

<ол>

  • Сортировка данных:
  • Мы можем отсортировать DataFrame по одному или нескольким столбцам, используя метод sort_values(). Например, df.sort_values(by='Age', ascending=False)отсортирует DataFrame по столбцу «Возраст» в порядке убывания.

    1. Обработка недостающих данных:

    Отсутствие данных — распространенная проблема в реальных наборах данных. Pandas предоставляет методы для обработки пропущенных значений, например:

    • isnull(): проверяет, отсутствуют ли значения.
    • fillna(): заполняет пропущенные значения указанным значением или стратегией.
    • dropna(): удаляет строки или столбцы с пропущенными значениями.
    1. Группировка и агрегирование данных:

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

    grouped = df.groupby('City')
    print(grouped.mean())

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

    Не забудьте поэкспериментировать с предоставленными примерами и обратиться к документации Pandas для получения более подробной информации. Приятного кодирования!