Разница между типом данных 'datetime64 ' и '<M8 '?

Я создал TimeSeries в пандах:

In [346]: from datetime import datetime In [347]: dates = [datetime(2011, 1, 2), datetime(2011, 1, 5), datetime(2011, 1, 7), .....: datetime(2011, 1, 8), datetime(2011, 1, 10), datetime(2011, 1, 12)] In [348]: ts = Series(np.random.randn(6), index=dates) In [349]: ts Out[349]: 2011-01-02 0.690002 2011-01-05 1.001543 2011-01-07 -0.503087 2011-01-08 -0.622274 2011-01-10 -0.921169 2011-01-12 -0.726213 

Я следую примеру из книги «Python for Data Analysis».

В следующем абзаце автор проверяет тип индекса:

 In [353]: ts.index.dtype Out[353]: dtype('datetime64[ns]') 

Когда я делаю точно ту же операцию в консоли, я получаю:

 ts.index.dtype dtype('<M8[ns]') 

В чем разница между двумя типами 'datetime64[ns]' и '<M8[ns]' ?

И почему у меня другой тип?

  • Прекратить обработку маршрута колбы, если запрос прерван
  • Как получить разрывы строк в электронной почте, отправленные с помощью smtplib Python?
  • Указатели функции Boost.Python как аргумент конструктора класса
  • Получить размеры изображения из Url в Python
  • Символ поддерживает движение только при движении мыши на экране?
  • Как скачать файл с помощью селена?
  • Каков правильный способ переопределить операции копирования / глубокой копии объекта в Python?
  • Pandas: добавьте несколько пустых столбцов в DataFrame
  • One Solution collect form web for “Разница между типом данных 'datetime64 ' и '<M8 '?”

    datetime64[ns] – общий тип dtype, а <M8[ns] – определенный тип dtype. Общие типы dtypes сопоставляются с определенными типами данных, но могут отличаться от одной установки NumPy к следующей.

    На машине, порядок байтов которой немного сужен, нет никакой разницы между np.dtype('datetime64[ns]') и np.dtype('<M8[ns]') :

     In [6]: np.dtype('datetime64[ns]') == np.dtype('<M8[ns]') Out[6]: True 

    Однако на большой np.dtype('datetime64[ns]') машине np.dtype('datetime64[ns]') будет равно np.dtype('>M8[ns]') .

    Таким образом, datetime64[ns] отображает либо <M8[ns] либо >M8[ns] зависимости от конечности машины.

    Существует много других подобных примеров общего сопоставления типов dtypes для конкретных типов данных: карты int64 для <i8 или >i8 , а int – как int32 и int64 зависимости от битовой архитектуры ОС и того, как был скомпилирован NumPy.


    По-видимому, представление datetime64 dtype изменилось с того момента, когда книга была написана, чтобы показать конечность dtype.

    Python - лучший язык программирования в мире.