簡體   English   中英

Python - 將包含每周數據的列轉換為日期時間 object

[英]Python - Converting a column with weekly data to a datetime object

我有以下日期列,我想將其轉換為 pandas 日期時間 object。 可以用每周數據做到這一點嗎? 例如,1-2018 代表 2018 年的第 1 周,依此類推。 我嘗試了以下轉換,但收到一條錯誤消息:Cannot use '%W' or '%U' without day and year

import pandas as pd

df1 = pd.DataFrame(columns=["date"])
df1['date'] = ["1-2018", "1-2018", "2-2018", "2-2018", "3-2018", "4-2018", "4-2018", "4-2018"]

df1["date"] = pd.to_datetime(df1["date"], format = "%W-%Y")

您需要在datetime時間格式中添加一天

df1["date"] = pd.to_datetime('0' + df1["date"], format='%w%W-%Y')
print(df1)

Output

        date
0 2018-01-07
1 2018-01-07
2 2018-01-14
3 2018-01-14
4 2018-01-21
5 2018-01-28
6 2018-01-28
7 2018-01-28

正如錯誤消息所說,您需要通過添加 %w 來指定星期幾:

df1["date"] = pd.to_datetime( '0'+df1.date, format='%w%W-%Y')

暫無
暫無

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

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