我有以下資料框,其中小時列以 int64 格式顯示一天中的小時數。我正在嘗試將其轉換為時間格式;所以第 1 小時將顯示為“01:00”。然后我想將它添加到日期列并將其轉換為時間戳索引。

datetime在 pandas 中使用該函式會生成“hr2”列,這不是我需要的。我不確定我什至可以datetime直接申請,因為原始資料(即在“hr”列中)并不是真正的日期時間格式。到目前為止,谷歌搜索一直沒有成效。
uj5u.com熱心網友回復:
雖然我對您的日期列的格式仍然一無所知。我將假設 Date 列是一個字串物件,而 hr 列是一個 int64 物件。要以 Pandas tmestamp 格式創建列 TimeStamp,這就是我將繼續的方式>
給定 df:
Date Hr
0 12/01/2010 1
1 12/01/2010 2
2 12/01/2010 3
3 12/01/2010 4
4 12/02/2010 1
5 12/02/2010 2
6 12/02/2010 3
7 12/02/2010 4
df['TimeStamp'] = df.apply(lambda row: pd.to_datetime(row['Date']) pd.to_timedelta(row['Hr'], unit='H'), axis = 1)
產量:
Date Hr TimeStamp
0 12/01/2010 1 2010-12-01 01:00:00
1 12/01/2010 2 2010-12-01 02:00:00
2 12/01/2010 3 2010-12-01 03:00:00
3 12/01/2010 4 2010-12-01 04:00:00
4 12/02/2010 1 2010-12-02 01:00:00
5 12/02/2010 2 2010-12-02 02:00:00
6 12/02/2010 3 2010-12-02 03:00:00
7 12/02/2010 4 2010-12-02 04:00:00
然后可以將時間戳列用作索引。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/392025.html
上一篇:如何根據列值過濾資料框
