Добро пожаловать на 11-й день нашего путешествия «Python для науки о данных: 100 дней до мастерства»! Попробовав очистку, визуализацию и агрегирование данных, пришло время сосредоточиться на одном из основополагающих аспектов анализа данных — операциях с датой и временем.
Типы данных «Дата» и «Время» необходимы для анализа временных рядов, анализа финансовых данных, журналов и многого другого. Модуль Python datetime
, дополненный возможностями Pandas, позволяет нам эффективно обрабатывать и манипулировать датами и временем.
Понимание datetime
в Python
Встроенный в Python модуль datetime
предоставляет нам типы datetime
, date
и time
.
# Import datetime module from datetime import datetime # Current date and time now = datetime.now() print(now) # Extracting date, time, year, month, day, etc. print(now.date(), now.year, now.month)
Дельты времени
Дельты времени представляют разницу между двумя датами или временем. Они полезны при выполнении таких операций, как добавление или вычитание дней из даты.
from datetime import timedelta # Adding 10 days to current date new_date = now + timedelta(days=10) print(new_date)
Панды и дата и время
Pandas упрощает работу с массивами даты и времени. Наиболее фундаментальным является метод to_datetime
, который преобразует различные форматы даты и времени в Pandas Timestamp
.
# Importing pandas import pandas as pd # Creating a date range date_rng = pd.date_range(start='2023-01-01', end='2023-01-10', freq='D') print(date_rng)
Временные ряды с пандами
Одной из значительных сильных сторон Pandas является его способность обрабатывать данные временных рядов. С помощью таких функций, как resample
, вы можете без особых усилий повышать или понижать дискретизацию данных временных рядов.
# Creating a simple time series DataFrame df = pd.DataFrame(date_rng, columns=['date']) df['data'] = np.random.randint(0, 100, size=(len(date_rng))) # Setting the date as the index df.set_index('date', inplace=True) # Resampling data to a monthly frequency df_monthly = df.resample('M').mean()
Сегодняшние задачи
- Ознакомьтесь с модулем Python
datetime
, создающим даты и время и управляя ими. - Понимать и использовать
timedelta
для выполнения операций с датами. - Используйте Pandas для работы с массивами даты и времени и выполнения базового анализа временных рядов.
- Передискретизируйте данные временных рядов с разными частотами и получайте ценные сведения.
Подведение итогов
Операции с датой и временем имеют основополагающее значение в науке о данных, особенно в таких областях, как финансы, электронная коммерция и здравоохранение. Освоение этого навыка значительно улучшит ваши возможности обработки и анализа данных. Как всегда, практика — это ключ к освоению этих концепций, поэтому обязательно поэкспериментируйте с различными операциями с датами и временем, используя Python и Pandas.
Завтра мы углубимся в другую важную тему. А пока удачного кодирования и анализа!