web-dev-qa-db-ja.com

python datetimeから日付のみをどのように抽出しますか?

Pythonでデータフレームがあります。その列の1つには、タイムスタンプであるtimeというラベルが付いています。次のコードを使用して、タイムスタンプをdatetimeに変換しました。

milestone['datetime'] = milestone.apply(lambda x: datetime.datetime.fromtimestamp(x['time']), axis = 1)

次に、日付と時刻を分離(トークン化)し、milestone['only_date']milestone['only_time']のような2つの異なる列を設定します。どうすればよいですか?

11
SZA

これを行うには、dateクラスのtimeおよびdatetimeメソッドを使用できます。

>>> from datetime import datetime
>>> d = datetime.now()
>>> only_date, only_time = d.date(), d.time()
>>> only_date
datetime.date(2015, 11, 20)
>>> only_time
datetime.time(20, 39, 13, 105773)

ここdatetimeのドキュメントです。

あなたの例に適用すると、それはこのようなものを与えることができます:

>>> milestone["only_date"] = [d.date() for d in milestone["datetime"]]
>>> milestone["only_time"] = [d.time() for d in milestone["datetime"]]
19
julienc