我有一個 CSV 檔案,其中包含以下格式的日期時間列:
| 約會時間 | 資料A | 資料B |
|---|---|---|
| 211201000000 | 1 | 222 |
| 211201000000 | 11 | 221 |
| 211201000000 | 12 | 111 |
| 211201000000 | 11 | 144 |
| 211201000000 | 13 | 1122 |
我想以這種格式 ( format='%Y-%m-%d %H:%M:%S')撰寫日期時間列:
2021-12-01 00:00:00
2021-12-01 00:00:00
2021-12-01 00:00:00
2021-12-01 00:00:00
2021-12-01 00:00:00
我正在使用這一行來更改我的日期時間列:
df['datetime'] = pd.to_datetime(df['datetime'], format='%Y-%m-%d %H:%M:%S')
或者
df['datetime'] = pd.to_datetime(df['datetime']).dt.date
我在上面幾行的日期時間列中得到的輸出是:
1970-01-01 }
.........
........
甚至不在 CSV 列中。
但是這些行不會像我預期的那樣改變我的日期時間。
如何將它們更改為我想要的格式,以便我可以在進一步的作業中輕松使用它?
uj5u.com熱心網友回復:
您需要使用的格式是%y%m%d%H%M%S. 一個簡短的例子:
from datetime import datetime as dt
s = "211201000000"
dt.strptime(s, "%y%m%d%H%M%S")
輸出
datetime.datetime(2021, 12, 1, 0, 0)
如果您已經有一個 DataFrame:
import pandas as pd
df = pd.DataFrame({"date":["211201000000", "211201000000"]})
df["date"] = pd.to_datetime(df["date"], format = "%y%m%d%H%M%S")
df
輸出
date
0 2021-12-01
1 2021-12-01
然后,您可以按照自己喜歡的方式格式化日期,例如:
df["date"].dt.strftime("%Y-%m-%d %H:%M:%S")
輸出
0 2021-12-01 00:00:00
1 2021-12-01 00:00:00
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/382548.html
上一篇:R日期時間序列缺失值
