查看两个日期之间已经过了多少天的最短途径是什么?这就是我现在正在做的事情.
math.floor((b - a).total_seconds()/float(86400))
Run Code Online (Sandbox Code Playgroud) 我有两个不同的日期,我想知道它们之间的天数差异.日期格式为YYYY-MM-DD.
我有一个函数可以将给定数字添加或减去日期:
def addonDays(a, x):
ret = time.strftime("%Y-%m-%d",time.localtime(time.mktime(time.strptime(a,"%Y-%m-%d"))+x*3600*24+3600))
return ret
Run Code Online (Sandbox Code Playgroud)
其中A是日期,x是我想要添加的天数.结果是另一个日期.
我需要一个函数,我可以给两个日期,结果将是一个日期差异为天的int.
我需要在单独的函数中从 pandas 帧值转换日期:
def myfunc(lat, lon, when):
ts = (when - np.datetime64('1970-01-01T00:00:00Z','s')) / np.timedelta64(1, 's')
date = datetime.datetime.utcfromtimestamp(ts)
print("Numpy date= ", when, " Python date= ", date)
return float(90) - next_func(lat, lon, date)
Run Code Online (Sandbox Code Playgroud)
调用该函数:
new_df['new_column'] = np.vectorize(my_func)(lat, lon, new_df['datetime(LT)'])
Run Code Online (Sandbox Code Playgroud)
但它会引发错误:
ufunc subtract cannot use operands with types dtype('int64') and dtype('<M8[s]')
Run Code Online (Sandbox Code Playgroud)
如何将 numpy datetime64 [ns] 转换为 python 日期时间?
我想计算当前日期和上一个日期之间的天数差异。我正在尝试这个代码
requiremntObj = CustomerLeads.objects.all()
a = datetime.datetime.now().date()
for i in requiremntObj:
date1=i.posting_date
diff = a-date1
print diff
Run Code Online (Sandbox Code Playgroud)
我有一个错误 unsupported operand type(s) for -: 'datetime.date' and 'unicode'
对于当前日期,我正在获取 datetime 对象,对于 date1,我正在获取 unicode。
posting_date = models.DateField()
Run Code Online (Sandbox Code Playgroud) 在上面的代码中,我想计算直到下一个生日的天数,但输出错误.应该是什么:我的出生日:2002年2月20日=> 203天,直到我的生日(今天是2018年7月31日)实际是什么:输入:2002年2月20日=> 179天
我的代码:
import datetime
def get_user_birthday():
year = int(input('When is your birthday? [YY] '))
month = int(input('When is your birthday? [MM] '))
day = int(input('When is your birthday? [DD] '))
birthday = datetime.datetime(year,month,day)
return birthday
def calculate_dates(original_date, now):
date1 = now
date2 = datetime.datetime(now.year, original_date.month, original_date.day)
delta = date2 - date1
days = delta.total_seconds() / 60 /60 /24
return days
def show_info(self):
pass
bd = get_user_birthday()
now = datetime.datetime.now()
c = calculate_dates(bd,now)
print(c)
Run Code Online (Sandbox Code Playgroud) 例如:
date 1 : 1 january 2000
date 2 : 17 november 2006
Run Code Online (Sandbox Code Playgroud)
我想知道有多少天在今年的1日和2日之间的2000,2001,...,2006年,所以我需要的东西,返回这样的事情(不,如果它在列表或重要的东西):
2000:365,2001:365,...,2006:320
我在互联网上寻找过这样的东西但是只想办法计算两个日期之间的天数/月/年
我在python中以干净简单的方式执行此操作时遇到了麻烦.
我想做的是拥有一段代码来计算两个日期之间的天数.例如,今天是12月22日,我想知道在15日之前我有多少天.有55天的差异
(我采用这个例子,因为它使两个不同的年份连续多个月)
我所做的非常混乱,并且没有工作一半的时间所以我有点尴尬地展示它.
任何帮助表示赞赏.
提前致谢
我有两个人的出生信息,我想对他们做一些分析。比如,他们的年龄、秒、年+月+日之间的差异。我试过这个:
from datetime import date
a = date(1991, 07, 20)
b = date(1999, 06, 06)
print((a-b).days)
-2878
Run Code Online (Sandbox Code Playgroud)
这给了我2878几天的时间,但我想计算years + months + days
我试图除以 2878/365,但我想要精确的计算我该如何解决这个问题?
预期输出:
7 years x months x days
Run Code Online (Sandbox Code Playgroud) 我的数据框中有一列 'datedif' 为:
exposuredate min_exposure_date datedif
2014-10-08 2014-09-27 11 days
2014-10-09 2014-09-27 12 days
2014-09-27 2014-09-27 0 days
2014-09-27 2014-09-27 0 days
2014-10-22 2014-09-27 25 days
data.exposuredate = pd.to_datetime(data.exposuredate)
data.min_exposure_date = pd.to_datetime(data.min_exposure_date)
data['datedif'] = ((data.exposuredate)-(data.min_exposure_date))
Run Code Online (Sandbox Code Playgroud)
列的格式为 datetime64[ns]。我想提取“datedif”字段中的天数。我找不到任何可以帮助我提取天数差异的东西。
我试过:
data['datedif_day'] = data['datedif'].dt.days
Run Code Online (Sandbox Code Playgroud)
错误:
AttributeError: 'Series' 对象没有属性 'dt'