相关疑难解决方法(0)

在datetime和Pandas Timestamp对象之间转换

我有以下内容:

> date1
Timestamp('2014-01-23 00:00:00', tz=None)

> date2
datetime.date(2014, 3, 26)
Run Code Online (Sandbox Code Playgroud)

我读了这个答案我可以pandas.to_datetime()用来转换Timestampsdatetime对象,但它似乎不起作用:

> pd.to_datetime(date1)   
Timestamp('2014-01-23 00:00:00', tz=None)
Run Code Online (Sandbox Code Playgroud)

为什么?如何在这两种格式之间进行转换?

python datetime pandas

50
推荐指数
3
解决办法
7万
查看次数

熊猫:如何从周和年创建日期时间对象?

我有一个数据框,提供两个整数列,其中包含年份的一年和一周:

import pandas as pd
import numpy as np
L1 = [43,44,51,2,5,12]
L2 = [2016,2016,2016,2017,2017,2017]
df = pd.DataFrame({"Week":L1,"Year":L2})

df
Out[72]: 
   Week  Year
0    43  2016
1    44  2016
2    51  2016
3     2  2017
4     5  2017
5    12  2017
Run Code Online (Sandbox Code Playgroud)

我需要从这两个数字创建一个datetime-object.

我试过这个,但它抛出一个错误:

df["DT"] = df.apply(lambda x: np.datetime64(x.Year,'Y') + np.timedelta64(x.Week,'W'),axis=1)
Run Code Online (Sandbox Code Playgroud)

然后我尝试了这个,它可以工作,但给出了错误的结果,就是它完全忽略了一周:

df["S"] = df.Week.astype(str)+'-'+df.Year.astype(str)
df["DT"] = df["S"].apply(lambda x: pd.to_datetime(x,format='%W-%Y'))

df
Out[74]: 
   Week  Year        S         DT
0    43  2016  43-2016 2016-01-01
1    44  2016  44-2016 2016-01-01
2    51  2016  51-2016 2016-01-01
3 …
Run Code Online (Sandbox Code Playgroud)

python datetime numpy pandas

14
推荐指数
3
解决办法
7531
查看次数

标签 统计

datetime ×2

pandas ×2

python ×2

numpy ×1