Python 如何将周期转换为时间戳或日期时间对象?

Python 如何将周期转换为时间戳或日期时间对象?,python,pandas,Python,Pandas,我将日期存储为一个周期对象: date1 = Period(1989, 'Y') 我想将其与datetime对象进行比较,它是: date2 = datetime.strftime('1988-09-09', '%Y-%m-%d') 我希望我能做如下的减法: diff = date2 - date1 为此,我需要将句点转换为datetime对象。有办法做到这一点吗? 利用 使用freq参数指定开始或结束 date2=datetime.strftime('1988-09-09','%Y

我将日期存储为一个周期对象:

date1 = Period(1989, 'Y')
我想将其与datetime对象进行比较,它是:

date2 = datetime.strftime('1988-09-09', '%Y-%m-%d')
我希望我能做如下的减法:

diff = date2 - date1
为此,我需要将句点转换为datetime对象。有办法做到这一点吗?

  • 利用
    • 使用
      freq
      参数指定开始或结束
  • date2=datetime.strftime('1988-09-09','%Y-%m-%d')
    导致
    TypeError
    • 使用
      date2=pd.to_datetime('1988-09-09')
      获取日期时间格式
将熊猫作为pd导入
日期1=pd.期间(1989年,“Y”)
date1\u ts=date1.to\u时间戳()
打印(日期1)
[out]:
时间戳('1989-01-01 00:00:00')
#将date2创建为datetime,而不是字符串
date2=pd.to_datetime('1988-09-09')
#区别对待
差异=日期2-日期1
打印(差异)
[out]:
时间增量('-114天+00:00:00')
也许您可以:

from datetime import datetime
from pandas import DataFrame, Period

if __name__ == '__main__':
    data = {'Year': [Period(1989, 'Y')]}

    df = DataFrame(data,
                   columns=['Year'])

    date2 = datetime.now().strftime('%Y-%m-%d').split('-')[0]
    date1 = df['Year'].values[0].year
    diff = int(date2) - date1
    print(diff)
date2=datetime.strftime('1988-09-09','%Y-%m-%d')
给出了错误,因此我将其替换为

date2 = datetime.now().strftime('%Y-%m-%d').split('-')[0]
输出:

31