Feature Extraction z Danych Timestamp: co można wyciągnąć z danych czasowych?

Dane timestamp, czyli te zawierające informacje o dacie i czasie, występują w wielu dziedzinach, takich jak finanse, zdrowie publiczne czy telekomunikacja. Przykłady takich danych to pomiary temperatury zarejestrowane co godzinę, daty i godziny transakcji finansowych, znaczniki czasowe postów na mediach społecznościowych czy zapisy medycznych pomiarów pacjentów.

Utworzenie DataFrame z danymi czasowymi

Za pomocą pandas.data_range stworzymy kolumnę date. Początkowa datę ustawiamy na 23.04.2023 na godzinę 6:15, wybieramy odstęp czasowy (26 godzin i 10 minut) i wygenerujemy 5 dat (periods = 5).

import datetime
import numpy as np
import pandas as pd

dates = pd.Series(pd.date_range('2023-04-23 6:15', 
                                freq='26H10min',  
                                periods=5))
df = pd.DataFrame(dict(date=dates))
df

Wyciąganie podstawowych informacji

Wyciągnijmy odpowiednio: rok, miesiąc, dzień, godzinę, minuty, sekundy z daty.

df = df.assign(
    year=df['date'].dt.year,
    month=df['date'].dt.month,
    day=df['date'].dt.day,
    hour=df['date'].dt.hour,
    minute=df['date'].dt.minute,
    second=df['date'].dt.second
)
df

Nazwa dnia/dzień tygodnia

A teraz chcielibyśmy wiedzieć czy 23.04.2023 to jest niedziela, a może poniedziałek? Albo od razu potrzebujemy dnia tygodnia jako liczby z zakresu od 0 do 6.

df = df.assign(
    day_name=df['date'].dt.day_name(),
    day_of_week=df['date'].dt.dayofweek
)
df

Który to tydzień/dzień w roku?

df = df.assign(
    week_of_year=df['date'].dt.week,
    day_of_year=df['date'].dt.dayofyear
)
df

Kwartał

df['quarter'] = df['date'].dt.quarter
df

Rok przestępny

df['leap_year'] = df['date'].dt.is_leap_year
df

Czy tego dnia jest święto?

import holidays

pl_holidays = holidays.Poland()
df['is_holiday'] = df['date'].dt.date.isin(pl_holidays)

df

Hmmm… dziwne, przecież 23.04 to moje urodziny 😉 Więc już na sam koniec dorzućmy tę datę do świąt w Polsce.

from datetime import date

pl_holidays = holidays.Poland()
pl_holidays[date(2023, 4, 23)] = "Moje urodziny"
df['is_holiday'] = df['date'].dt.date.isin(pl_holidays)

df

Zobacz także:

  • Piotr Szymański

    Kategoria:

    Hejka! Zapraszam na skrót z minionych dwóch tygodni, który przyswoić możecie przy ciepłej herbatce w te mroczne, szare dni. W opublikowanym przez Google 14 listopada ostrzeżeniu wskazano kilka najważniejszych rodzajów oszustw internetowych. Uwagę zwrócono między na niebezpieczne techniki ataków typu cloaking, które nabierają nowego wymiaru dzięki wykorzystaniu sztucznej inteligencji. Cloaking polega na ukrywaniu przed użytkownikiem […]
  • Piotr Szymański

    Kategoria:

    Hejka po dłuższej przerwie! Zaczynamy świeżym tematem. Raptem kilkanaście godzin temu do użytkowników trafiła, zapowiedziana 25 lipca, funkcja SearchGPT od OpenAI, umożliwiająca, w przeciwieństwie do tradycyjnych modeli językowych, na integrację z internetem w czasie rzeczywistym. SearchGPT ma dostęp do aktualnych informacji z sieci, co pozwala na udzielanie odpowiedzi opartych na najnowszych danych. Ponadto SearchGPT dostarcza […]
  • Piotr Szymański

    Kategoria:

    Hejson! Dzisiejsza konsumpcja mediów ma to do siebie, że odbywa się na 5-6 calowym ekranie telefonu. Ma też to do siebie, że zanim zdjęcie dotrze do Ciebie, to przejdzie przez 6 konwersacji na jedynym słusznym messengerze, zatem zostanie 6-cio krotnie skompresowane. W międzyczasie, jak będziecie mieli pecha, to jakiś wujek zrobi screena, zamiast zapisać zdjęcie […]
  • Piotr Szymański

    Kategoria:

    Hej! Robimy bardzo dużo zdjęć, a co za tym idzie – wiele z nich jest niechlujnych, z zabałagnionym tłem. Możemy jednak chcieć wykorzystać je do pochwalenia się naszym ryjkiem na jakimś publicznym profilu, gdyż np. naturalne, miękkie światło korzystnie eksponuje naszą facjatę. Podejścia mogą być dwa – albo zdecydujemy się na blur bądź zupełne usunięcie […]
  • Piotr Szymański

    Kategoria:

    Strzałeczka. Nvidia przejęła OctoAI, startup specjalizujący się w optymalizacji modeli uczenia maszynowego. To już piąta akwizycja Nvidii w 2024 roku, co czyni aktualnie nam panujący rok rekordowym pod względem liczby przejęć. OctoAI, założone w 2019 roku przez Luisa Ceze, skupiło się na tworzeniu oprogramowania zwiększającego wydajność modeli uczenia maszynowego na różnych platformach sprzętowych. Oprogramowanie OctoAI […]