簡體   English   中英

Pandas:將時間戳轉換為 datetime.date

[英]Pandas: Convert Timestamp to datetime.date

我有一個 pandas 時間戳數據列

In [27]: train["Original_Quote_Date"][6] 
Out[27]: Timestamp('2013-12-25 00:00:00')

如何檢查這些對象與datetime.date類型對象的等價性

datetime.date(2013, 12, 25)

我有一個時間戳數據的熊貓列

In [27]: train["Original_Quote_Date"][6] 
Out[27]: Timestamp('2013-12-25 00:00:00')

如何檢查這些對象與該類型的datetime.date對象的等效性

datetime.date(2013, 12, 25)

我有一個時間戳數據的熊貓列

In [27]: train["Original_Quote_Date"][6] 
Out[27]: Timestamp('2013-12-25 00:00:00')

如何檢查這些對象與該類型的datetime.date對象的等效性

datetime.date(2013, 12, 25)

我有一個時間戳數據的熊貓列

In [27]: train["Original_Quote_Date"][6] 
Out[27]: Timestamp('2013-12-25 00:00:00')

如何檢查這些對象與該類型的datetime.date對象的等效性

datetime.date(2013, 12, 25)

我有一個時間戳數據的熊貓列

In [27]: train["Original_Quote_Date"][6] 
Out[27]: Timestamp('2013-12-25 00:00:00')

如何檢查這些對象與該類型的datetime.date對象的等效性

datetime.date(2013, 12, 25)

所以,從 IBM coursera 教程中得到了這個。

data['date'] = data['TimeStamp'].apply(lambda d: datetime.date.fromtimestamp(d\/1000.0))

我使用了 Filomeno Gonzalez 推薦的方式,盡管略有不同:

 data['date'] = data['date'].apply(lambda x: x.date())

如果我有一個帶有時間戳列的1546300800000, 1546301100000, 1546301400000, 1546301700000, 1546302000000 ),我想將其轉換為日期時間格式

import datetime

df['date'] = df['date'].apply(lambda x: datetime.datetime.fromtimestamp(x/1000.0))

這將返回格式2019-01-01 00:00:00, 2019-01-01 00:05:00, 2019-01-01 00:10:00, 2019-01-01 00:15:00, 2019-01-01 00:20:00 ...等

如此所述,除以 1000 以從 ms 轉換為 s

在我的例子中,我將時代作為一個普通的“列”(即它不是TimeSeries )。

我將其轉換如下:

import pandas as pd
df['Timestamp'] = pd.to_datetime(df['Timestamp'] / 1000, unit='s')

時間以毫秒為單位,所以我需要除以一千。 我設置unit='s'以提及Timestamp以秒為單位(但是,如果您不想除以 1000,或者取決於您的原始Timestamp單位,您可以使用unit='ms' )。

示例結果

1673885284000 becomes 2023-01-16 4:08:04

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM