Pandas, популярная библиотека Python для манипулирования и анализа данных, предоставляет мощные инструменты для работы с датами и временем. В этой статье мы рассмотрим различные методы извлечения месяца и года из дат и управления ими с помощью панд. Независимо от того, являетесь ли вы ученым, аналитиком или начинающим разработчиком Python, освоение этих методов значительно улучшит ваши навыки обработки данных. Итак, приступим!
Метод 1: использование средства доступа dt
Pandas предоставляет аксессор dt, который обеспечивает легкий доступ к различным компонентам даты. Чтобы извлечь месяц и год из столбца даты, вы можете использовать атрибуты dt.monthи dt.yearсоответственно. Вот пример:
import pandas as pd
# Create a DataFrame with a date column
data = {'date': ['2022-01-15', '2022-02-20', '2022-03-25']}
df = pd.DataFrame(data)
# Convert the 'date' column to datetime type
df['date'] = pd.to_datetime(df['date'])
# Extract the month and year
df['month'] = df['date'].dt.month
df['year'] = df['date'].dt.year
print(df)
Выход:
date month year
0 2022-01-15 1 2022
1 2022-02-20 2 2022
2 2022-03-25 3 2022
Метод 2: использование strftime()
Другой способ извлечь месяц и год — использовать функцию strftime(). Эта функция позволяет форматировать дату и время на основе определенных директив. Вот пример:
import pandas as pd
# Create a DataFrame with a date column
data = {'date': ['2022-01-15', '2022-02-20', '2022-03-25']}
df = pd.DataFrame(data)
# Convert the 'date' column to datetime type
df['date'] = pd.to_datetime(df['date'])
# Extract the month and year
df['month'] = df['date'].dt.strftime('%B')
df['year'] = df['date'].dt.strftime('%Y')
print(df)
Выход:
date month year
0 2022-01-15 January 2022
1 2022-02-20 February 2022
2 2022-03-25 March 2022
Метод 3: использование PeriodIndex
Если у вас есть столбец datetime, вы можете преобразовать его в PeriodIndex, а затем извлечь месяц и год. Вот пример:
import pandas as pd
# Create a DataFrame with a datetime column
data = {'datetime': ['2022-01-15 10:30:00', '2022-02-20 15:45:00', '2022-03-25 19:20:00']}
df = pd.DataFrame(data)
# Convert the 'datetime' column to datetime type
df['datetime'] = pd.to_datetime(df['datetime'])
# Convert the 'datetime' column to PeriodIndex
df['period'] = pd.PeriodIndex(df['datetime'], freq='M')
# Extract the month and year
df['month'] = df['period'].dt.month
df['year'] = df['period'].dt.year
print(df)
Выход:
datetime period month year
0 2022-01-15 10:30:00 2022-01 1 2022
1 2022-02-20 15:45:00 2022-02 2 2022
2 2022-03-25 19:20:00 2022-03 3 2022
В этой статье мы рассмотрели несколько методов извлечения месяца и года из дат в pandas. Используя аксессор dt, strftime()или преобразуя его в PeriodIndex, вы можете легко манипулировать и извлекать определенные компоненты дат. Эти методы полезны для различных задач анализа данных, таких как группировка данных по месяцам или годам, создание визуализаций временных рядов или фильтрация данных на основе определенных диапазонов дат.
Так что смело применяйте эти методы в своем следующем проекте по анализу данных. Приятного программирования с пандами!