РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
359 of 541 menu

Тип datetime64

Тип datetime64 в NumPy предназначен для хранения дат и времени. Он позволяет выполнять арифметические операции с датами, извлекать компоненты даты и времени, а также преобразовывать данные из строковых форматов. Основное преимущество этого типа - эффективное хранение и быстрые векторные операции над массивами дат.

При создании массива с типом datetime64 необходимо указать единицу измерения времени: год ('Y'), месяц ('M'), день ('D'), час ('h'), минута ('m'), секунда ('s'), миллисекунда ('ms'), микросекунда ('us') или наносекунда ('ns'). Единица измерения задаётся через строку формата, например, datetime64[D] для дней или datetime64[s] для секунд.

Синтаксис

np.array(['2024-01-01', '2024-01-02'], dtype='datetime64[D]')

Пример

Давайте создадим массив дат из списка строк:

import numpy as np arr = np.array(['2024-01-01', '2024-01-02', '2024-01-03'], dtype='datetime64[D]') print(arr)

Результат выполнения кода:

['2024-01-01' '2024-01-02' '2024-01-03']

Пример

Создадим массив с указанием точного времени:

import numpy as np arr = np.array(['2024-01-01T12:00:00', '2024-01-02T15:30:00'], dtype='datetime64[s]') print(arr)

Результат выполнения кода:

['2024-01-01T12:00:00' '2024-01-02T15:30:00']

Пример

Создадим массив дат с использованием функции arange для генерации последовательности дат:

import numpy as np arr = np.arange('2024-01-01', '2024-01-10', dtype='datetime64[D]') print(arr)

Результат выполнения кода:

['2024-01-01' '2024-01-02' '2024-01-03' '2024-01-04' '2024-01-05' '2024-01-06' '2024-01-07' '2024-01-08' '2024-01-09']

Пример

Выполним арифметическую операцию с датами - прибавим 5 дней:

import numpy as np arr = np.array(['2024-01-01', '2024-01-02'], dtype='datetime64[D]') res = arr + np.timedelta64(5, 'D') print(res)

Результат выполнения кода:

['2024-01-06' '2024-01-07']

Пример

Получим разницу между двумя датами в днях:

import numpy as np arr = np.array(['2024-01-01', '2024-01-10', '2024-01-20'], dtype='datetime64[D]') base = np.array('2024-01-01', dtype='datetime64[D]') diff = arr - base print(diff)

Результат выполнения кода:

[ 0 9 19]

Пример

Извлечём компоненты даты с помощью атрибута astype:

import numpy as np arr = np.array(['2024-01-01', '2024-02-15'], dtype='datetime64[D]') year = arr.astype('datetime64[Y]') month = arr.astype('datetime64[M]') print("Year:", year) print("Month:", month)

Результат выполнения кода:

Year: ['2024' '2024'] Month: ['2024-01' '2024-02']

Смотрите также

  • тип timedelta64,
    который представляет разницу между датами
  • тип int64,
    который используется для хранения целых чисел
  • тип float64,
    который хранит числа с плавающей точкой
  • тип str,
    который хранит строки в массиве
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить