Pandas — это мощная Python-библиотека для работы с данными во всех плоскостях – от сборки до анализа и постобработки. Умеет работать с табличными форматами в удобном режиме. Внутри есть несколько инструментов для работы и тесная связь с NumPy и matplotlib. В этой статье мы рассмотрим, как начать изучение Pandas и успешно его освоить, а также предоставим конкретный пример работы с данными.

Начало работы

Первый шаг в изучении Pandas — это установка. Убедитесь, что у вас уже установлен Python. Pandas можно установить через менеджер пакетов pip:

pip install pandas

ОНЛАЙН-ПРАКТИКУМ
ЗАПУСК нейросети DEEPSEEK R1 ЛОКАЛЬНО НА СВОЕМ КОМПЬЮТЕРЕ
ЧТО БУДЕТ НА ОБУЧЕНИИ?
  • ПОКАЖЕМ, КАК РАЗВЕРНУТЬ МОДЕЛЬ нейросети DEEPSEEK R1 ПРЯМО НА СВОЁМ КОМПЬЮТЕРЕ
  • Где и как применять? Потестируем модель после установки на разных задачах
  • Как дообучить модель под себя?

Основы Pandas

В Pandas вам предстоит работать с двумя типами структур – DataFrame (таблица) и Series (массив). Для дальнейшей работы нужно освоить именно эти структуры.

Основные концепции и операции

DataFrame и Series

  • DataFrame – таблица, где каждый столбец может быть разного типа данных.
  • Series — одномерный массив, являющийся столбцом в DataFrame.

Чтение и запись данных

Pandas умеет работать с CSV, Excel, SQL и JSON. Так можно быстро и легко начать обрабатывать данные.

import pandas as pd

# Чтение данных из CSV файла

df = pd.read_csv(‘data.csv’)

# Запись DataFrame в Excel файл

df.to_excel(‘data.xlsx’, index=False)

Обработка данных

С Pandas вы можете выполнять обработку данных – очищать, группировать, сортировать и агрегировать.

Продвинутые возможности

Pandas предлагает широкий спектр продвинутых возможностей для анализа и обработки данных. Рассмотрим наиболее полезные из них на конкретных примерах.

Слияние и объединение данных

Слияние (merge) и объединение (concat) позволяют работать с разными источниками данных в рамках одного кода.

Пример слияния:

import pandas as pd

# Создание двух DataFrame

df1 = pd.DataFrame({‘A’: [‘A0’, ‘A1’, ‘A2’, ‘A3’],

‘B’: [‘B0’, ‘B1’, ‘B2’, ‘B3’],

‘key’: [‘K0’, ‘K1’, ‘K2’, ‘K3’]})

df2 = pd.DataFrame({‘C’: [‘C0’, ‘C1’, ‘C2’, ‘C3’],

‘D’: [‘D0’, ‘D1’, ‘D2’, ‘D3’],

‘key’: [‘K0’, ‘K1’, ‘K2’, ‘K3’]})

# Слияние по ключу

merged_df = pd.merge(df1, df2, on=’key’)

print(merged_df)

Пример объединения:

# Объединение данных вертикально

concatenated_df = pd.concat([df1, df2], axis=0, ignore_index=True)

print(concatenated_df)

Визуализация данных

Pandas тесно интегрируется с Matplotlib, позволяя визуализировать данные прямо из DataFrame.

Пример визуализации:

import matplotlib.pyplot as plt

# Предполагаем, что sales_data уже загружен

sales_data.plot(kind=’bar’, x=’Category’, y=’Total’)

plt.show()

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

Работа с временными рядами

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

Пример ресемплинга временных рядов:

# Предположим, у нас есть DataFrame с датами и значениями

ts_data = pd.DataFrame({‘Date’: pd.date_range(start=’1/1/2020′, periods=365, freq=’D’),

‘Value’: np.random.randn(365).cumsum()})

ts_data.set_index(‘Date’, inplace=True)

# Ресемплинг данных по месяцам с подсчетом среднего

monthly_resampled_data = ts_data.resample(‘M’).mean()

print(monthly_resampled_data)

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

Манипуляции с текстовыми данными

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

Пример манипуляций с текстом:

# Предположим, у нас есть DataFrame с текстовыми данными

text_data = pd.DataFrame({‘Text’: [‘example text’, ‘some TEXT’, ‘Text with NUMBERS 123’]})

# Преобразование текста к нижнему регистру

text_data[‘Text’] = text_data[‘Text’].str.lower()

# Удаление чисел

text_data[‘Text’] = text_data[‘Text’].str.replace(‘\d+’, », regex=True)

print(text_data)

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

Практический пример

Давайте рассмотрим пример работы с данными о продажах. Предположим, у нас есть файл sales.csv, который содержит данные о продажах товаров.

import pandas as pd

# Загрузка данных

sales_data = pd.read_csv(‘sales.csv’)

# Просмотр первых пяти строк

print(sales_data.head())

# Добавление нового столбца с общей суммой продаж

sales_data[‘Total’] = sales_data[‘Quantity’] * sales_data[‘Price’]

# Группировка данных по категории и подсчет общей суммы продаж

category_sales = sales_data.groupby(‘Category’)[‘Total’].sum()

print(category_sales)

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

Заключение

Изучение Pandas открывает огромные возможности для анализа и обработки данных. Начните с основ и постепенно переходите к более сложным операциям и методам. Практика — ключ к успеху, поэтому регулярно применяйте полученные знания на практических задачах. Со временем вы сможете эффективно использовать Pandas для любых задач по обработке и анализу данных.

Большой практикум
ЗАМЕНИ ВСЕ НЕЙРОСЕТИ НА ОДНУ — PERPLEXITY
ПОКАЖЕМ НА КОНКРЕТНЫХ КЕЙСАХ
  • Освой нейросеть Perplexity и узнай, как пользоваться функционалом остальных ИИ в одном
  • УЧАСТВОВАТЬ ЗА 0 РУБ.
  • Расскажем, как получить подписку
Участвовать бесплатно
ОНЛАЙН-ПРАКТИКУМ
ЗАПУСК нейросети DEEPSEEK R1 ЛОКАЛЬНО НА СВОЕМ КОМПЬЮТЕРЕ
ЧТО БУДЕТ НА ОБУЧЕНИИ?
  • ПОКАЖЕМ, КАК РАЗВЕРНУТЬ МОДЕЛЬ нейросеть DEEPSEEK R1 ПРЯМО НА СВОЁМ КОМПЬЮТЕРЕ
Участвовать бесплатно