numpy.datetime_as_string#
- numpy.datetime_as_string(arr, единица=None, часовой пояс='naive', приведение типов='same_kind')#
Преобразовать массив дат и времени в массив строк.
- Параметры:
- arrarray_like из datetime64
Массив временных меток UTC для форматирования.
- единицаstr
Один из None, 'auto' или единица времени datetime.
- часовой пояс{‘naive’, ‘UTC’, ‘local’} или tzinfo
Информация о часовом поясе для использования при отображении даты и времени. Если 'UTC', заканчивается Z для указания времени UTC. Если 'local', преобразуется в локальный часовой пояс, и добавляется суффикс со смещением часового пояса +-####. Если объект tzinfo, то действовать как с 'local', но использовать указанный часовой пояс.
- приведение типов{'no', 'equiv', 'safe', 'same_kind', 'unsafe'}
Приведение для разрешения при изменении между единицами даты и времени.
- Возвращает:
- str_arrndarray
Массив строк той же формы, что и arr.
Примеры
>>> import numpy as np >>> from zoneinfo import ZoneInfo >>> d = np.arange('2002-10-27T04:30', 4*60, 60, dtype='M8[m]') >>> d array(['2002-10-27T04:30', '2002-10-27T05:30', '2002-10-27T06:30', '2002-10-27T07:30'], dtype='datetime64[m]')
Установка часового пояса в UTC показывает ту же информацию, но с суффиксом Z
>>> np.datetime_as_string(d, timezone='UTC') array(['2002-10-27T04:30Z', '2002-10-27T05:30Z', '2002-10-27T06:30Z', '2002-10-27T07:30Z'], dtype='
Обратите внимание, что мы выбрали даты, пересекающие границу перехода на летнее время. Передача
ZoneInfoобъект выведет соответствующее смещение>>> np.datetime_as_string(d, timezone=ZoneInfo('US/Eastern')) array(['2002-10-27T00:30-0400', '2002-10-27T01:30-0400', '2002-10-27T01:30-0500', '2002-10-27T02:30-0500'], dtype='
Передача единицы измерения изменит точность
>>> np.datetime_as_string(d, unit='h') array(['2002-10-27T04', '2002-10-27T05', '2002-10-27T06', '2002-10-27T07'], dtype='
>>> np.datetime_as_string(d, unit='s') array(['2002-10-27T04:30:00', '2002-10-27T05:30:00', '2002-10-27T06:30:00', '2002-10-27T07:30:00'], dtype=' ‘casting’ может использоваться для указания, можно ли изменять точность
>>> np.datetime_as_string(d, unit='h', casting='safe') Traceback (most recent call last): ... TypeError: Cannot create a datetime string as units 'h' from a NumPy datetime with units 'm' according to the rule 'safe'