Python 如何从日期字段获取季度的对应日期?

Python 如何从日期字段获取季度的对应日期?,python,date,Python,Date,我有一个数据集,其中日期介于5/1/2016和5/21/2016之间。我想创建一个新变量day\u quarty,它将是该季度的对应日期。 例如: 第二季度的第一天是4月1日,例如5月15日是45/91 有什么想法吗?试试下面的代码: import datetime def day_in_quarter(date): q2 = (datetime.datetime.strptime("4/1/{0:4d}".format(date.year), "%m/%d/%Y")).timetupl

我有一个数据集,其中日期介于
5/1/2016
5/21/2016
之间。我想创建一个新变量
day\u quarty
,它将是该季度的对应日期。 例如:

第二季度的第一天是4月1日,例如5月15日是45/91

有什么想法吗?

试试下面的代码:

import datetime
def day_in_quarter(date):
    q2 = (datetime.datetime.strptime("4/1/{0:4d}".format(date.year), "%m/%d/%Y")).timetuple().tm_yday
    q3 = (datetime.datetime.strptime("7/1/{0:4d}".format(date.year), "%m/%d/%Y")).timetuple().tm_yday
    q4 = (datetime.datetime.strptime("10/1/{0:4d}".format(date.year), "%m/%d/%Y")).timetuple().tm_yday

    cur_day =  date.timetuple().tm_yday
    if (date.month < 4):
        return cur_day
    elif (date.month < 7):
        return cur_day - q2 + 1    
    elif (date.month < 10):
        return cur_day - q3 + 1  
    else:
        return cur_day - q4 + 1          

print day_in_quarter(datetime.datetime.strptime("5/15/2016", "%m/%d/%Y"))
导入日期时间
def季度中的日(日期):
q2=(datetime.datetime.StrTime(“4/1/{0:4d}.”格式(日期.年),%m/%d/%Y”).timetuple().tmyday
q3=(datetime.datetime.strtime(“7/1/{0:4d}.”格式(date.year),%m/%d/%Y”).timetuple().tmyday
q4=(datetime.datetime.StrTime(“10/1/{0:4d}.”格式(日期.年),%m/%d/%Y”).timetuple().tmyday
cur_day=date.timetuple().tm_yday
如果(日期月<4):
返回当前日期
elif(日期月<7):
返回当前日期-第2季度+1
elif(日期月<10):
返回当前日期-第3季度+1
其他:
返回当前日期-第4季度+1
按季度打印日期(datetime.datetime.strtime(“2016年5月15日,“%m/%d/%Y”))

这有帮助吗?在上面提供的评论中已经提出了这个问题。上面链接上的代码与我想要的不完全一样。@Stanley R提供的解决方案非常有效!