Datetime, zaman Damgası arasında dönüştürme ve datetime64 | Netgez.com
SORU
4 Aralık 2012, Salı


Datetime, zaman Damgası arasında dönüştürme ve datetime64

Nasıl datetime.datetime (Timestamp) numpy.datetime64 bir nesne dönüştürebilirim?

Aşağıdaki kodda, bir tarih, zaman damgası ve datetime64 nesneleri oluşturmak.

import datetime
import numpy as np
import pandas as pd
dt = datetime.datetime(2012, 5, 1)
# A strange way to extract a Timestamp object, there's surely a better way?
ts = pd.DatetimeIndex([dt])[0]
dt64 = np.datetime64(dt)

In [7]: dt
Out[7]: datetime.datetime(2012, 5, 1, 0, 0)

In [8]: ts
Out[8]: <Timestamp: 2012-05-01 00:00:00>

In [9]: dt64
Out[9]: numpy.datetime64('2012-05-01T01:00:00.000000 0100')

Not: kolay Damgası: datetime

In [10]: ts.to_datetime()
Out[10]: datetime.datetime(2012, 5, 1, 0, 0)

Ama nasılnumpy.datetime64 bir(dt64) datetime Timestamp ayıklamak mı?

.

Güncelleme: benim verilerim biraz kötü bir örnek (belki de motive edici bir örnek) gibi görünüyor:

dt64 = numpy.datetime64('2002-06-28T01:00:00.000000000 0100')

datetime.datetime(2002, 6, 28, 1, 0) ve uzun olmalı(!) (1025222400000000000L)...

CEVAP
6 Aralık 2012, PERŞEMBE


Cehenneme hoÅŸ geldiniz.

Sadece pandas.Timestamp datetime64 bir nesne geçirebilirsiniz:

In [16]: Timestamp(numpy.datetime64('2012-05-01T01:00:00.000000'))
Out[16]: <Timestamp: 2012-05-01 01:00:00>

Bu doğru NumPy 1.6.1 olsa: işe yaramadığını fark ettim

numpy.datetime64('2012-05-01T01:00:00.000000 0100')

Ayrıca, pandas.to_datetime kullanılabilir (bu dev sürümü, v0 bakmadım.9.1):

In [24]: pandas.to_datetime('2012-05-01T01:00:00.000000 0100')
Out[24]: datetime.datetime(2012, 5, 1, 1, 0, tzinfo=tzoffset(None, 3600))

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • Attempts at least

    Attempts at

    1 Ocak 2007
  • Keith Anthe

    Keith Anthe

    26 NİSAN 2011