计算Python字典中的时间差


  • 我有一个名为d的字典,它映射了不同数量的日期对于每个键。我有多个钥匙。
  • 我真正想做的,是计算总时差
  • 我已经尝试了几种不同的方法,但都没有效果,因为我似乎没有能够依次访问这些值并执行操作。

这是我的代码:

import pandas as pd

Patient_Dates = pd.read_excel(r'C:UsersPycharmProjectsData.xlsx', sheet_name='Sheet 1', header=0, na_values=['NA'], usecols = "B:C") 

Patient_Dates_new = Patient_Dates.iloc[3:len(Patient_Dates)]  
Patient_Dates_new.columns = ['Patient_ID','Dates']  

counts = {k: count(0) for k in Patient_Dates_new.Patient_ID.unique()} 

d = defaultdict(dict)  

for k, *v in Patient_Dates_new.values.tolist():     
d[k][next(counts[k])] = v  dict(d) Dictd=dict(d)

下面的代码可以达到这个效果:

from datetime import datetime, timedelta 
#Create dictionary with diffrent 'lists' of 'datetime' as values
my_dictionary = {
"1": [datetime.now() + timedelta(days = x) for x in range(0, 10)], 
"2": [datetime.now() + timedelta(days = x) for x in range(10, 20)], 
"3": [datetime.now() + timedelta(days = x) for x in range(20, 30)], 
}
for value in my_dictionary.values(): #Iterate through every KEY
value.sort() #Sort the list
print("Time diffrence between min. {} and max. {} is: {}".format(value[0], value[-1], value[0] - value[-1]))
  1. 首先,我们用lists(datetime objects)创建一个dictionary(为此我们使用Python的在线程序)
  2. 然后我们迭代dictionary中的每个项目。
  3. 我们然后sort每个list,并计算first (min)last (max)的差值。

相关内容

  • 没有找到相关文章

最新更新