我有不同日期的时间戳记列表(day_of_tuple_3Days),我想选择前7天和7天之后的每一天来创建每个案例的数据集,我该怎么做?我的可能是:
from datetime import date, timedelta
n = 0
current_date = day_of_tuple_3Days[n].isoformat()
days_before = (day_of_tuple_3Days[n]-timedelta(days=7)).isoformat()
days_after = (day_of_tuple_3Days[n]+timedelta(days=7)).isoformat()
case = study_area.sel(time = slice(days_before,days_after))
其中day_of_tuple_3Days是:
[Timestamp('2000-07-15 00:00:00'),
Timestamp('2000-08-02 00:00:00'),
Timestamp('2002-07-20 00:00:00'),
Timestamp('2003-08-10 00:00:00'),
Timestamp('2007-07-30 00:00:00'),
Timestamp('2010-07-13 00:00:00'),
Timestamp('2010-08-13 00:00:00'),
Timestamp('2011-08-02 00:00:00'),
Timestamp('2012-07-24 00:00:00'),
Timestamp('2015-08-01 00:00:00'),
Timestamp('2016-07-22 00:00:00'),
Timestamp('2017-07-05 00:00:00'),
Timestamp('2017-07-18 00:00:00'),
Timestamp('2017-07-23 00:00:00'),
Timestamp('2017-08-09 00:00:00'),
Timestamp('2018-07-04 00:00:00'),
Timestamp('2018-07-10 00:00:00'),
Timestamp('2019-06-26 00:00:00'),
Timestamp('2019-08-01 00:00:00')]
我期望:case0 case1 case2到目前为止
您可以将的列表转换Timestamp
为字符串列表,然后执行以下操作:
from datetime import date, timedelta, datetime
from pandas import DataFrame
times = ['2000-07-15 00:00:00',
'2000-08-02 00:00:00',
'2002-07-20 00:00:00',
'2003-08-10 00:00:00',
'2007-07-30 00:00:00',
'2010-07-13 00:00:00',
'2010-08-13 00:00:00',
'2011-08-02 00:00:00',
'2012-07-24 00:00:00',
'2015-08-01 00:00:00',
'2016-07-22 00:00:00',
'2017-07-05 00:00:00',
'2017-07-18 00:00:00',
'2017-07-23 00:00:00',
'2017-08-09 00:00:00',
'2018-07-04 00:00:00',
'2018-07-10 00:00:00',
'2019-06-26 00:00:00',
'2019-08-01 00:00:00']
results = dict()
days = timedelta(7)
for i, t in enumerate(times, 1):
y, m, d = map(int, t[:10].split('-'))
da = date(y, m, d)
before = da - days
after = da + days
results[f'case{i}'] = [f'{before} to {da}', f'{da} to {after}']
print(results)
输出:
{'case1': ['2000-07-08 to 2000-07-15', '2000-07-15 to 2000-07-22'],
'case2': ['2000-07-26 to 2000-08-02', '2000-08-02 to 2000-08-09'],
'case3': ['2002-07-13 to 2002-07-20', '2002-07-20 to 2002-07-27'],
'case4': ['2003-08-03 to 2003-08-10', '2003-08-10 to 2003-08-17'],
'case5': ['2007-07-23 to 2007-07-30', '2007-07-30 to 2007-08-06'],
'case6': ['2010-07-06 to 2010-07-13', '2010-07-13 to 2010-07-20'],
'case7': ['2010-08-06 to 2010-08-13', '2010-08-13 to 2010-08-20'],
'case8': ['2011-07-26 to 2011-08-02', '2011-08-02 to 2011-08-09'],
'case9': ['2012-07-17 to 2012-07-24', '2012-07-24 to 2012-07-31'],
'case10': ['2015-07-25 to 2015-08-01', '2015-08-01 to 2015-08-08'],
'case11': ['2016-07-15 to 2016-07-22', '2016-07-22 to 2016-07-29'],
'case12': ['2017-06-28 to 2017-07-05', '2017-07-05 to 2017-07-12'],
'case13': ['2017-07-11 to 2017-07-18', '2017-07-18 to 2017-07-25'],
'case14': ['2017-07-16 to 2017-07-23', '2017-07-23 to 2017-07-30'],
'case15': ['2017-08-02 to 2017-08-09', '2017-08-09 to 2017-08-16'],
'case16': ['2018-06-27 to 2018-07-04', '2018-07-04 to 2018-07-11'],
'case17': ['2018-07-03 to 2018-07-10', '2018-07-10 to 2018-07-17'],
'case18': ['2019-06-19 to 2019-06-26', '2019-06-26 to 2019-07-03'],
'case19': ['2019-07-25 to 2019-08-01', '2019-08-01 to 2019-08-08']}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句