My objective is to have a lists of times (in seconds), already packaged in lists of times in 5 minutes for a whole day. This is my code to package the whole day of "2016-07-08" by 5 minutes :
pd.date_range('2016-07-08 00:00:00', '2016-07-08 23:59:00', freq='5Min')
The result :
DatetimeIndex(['2016-07-08 00:00:00', '2016-07-08 00:05:00',
'2016-07-08 00:10:00', '2016-07-08 00:15:00',
'2016-07-08 00:20:00', '2016-07-08 00:25:00',
'2016-07-08 00:30:00', '2016-07-08 00:35:00',
'2016-07-08 00:40:00', '2016-07-08 00:45:00',
...
'2016-07-08 23:10:00', '2016-07-08 23:15:00',
'2016-07-08 23:20:00', '2016-07-08 23:25:00',
'2016-07-08 23:30:00', '2016-07-08 23:35:00',
'2016-07-08 23:40:00', '2016-07-08 23:45:00',
'2016-07-08 23:50:00', '2016-07-08 23:55:00'],
dtype='datetime64[ns]', length=288, freq='5T')
And this is the code to have all times (by second) included in every 5 minutes:
for time in pd.date_range('2016-07-08 00:00:00', '2016-07-08 23:59:00', freq='5Min').tolist():
time_by_5_min = datetime.datetime.strftime(time.to_datetime(), "%Y-%m-%d %H:%M:%S")
print pd.date_range(time_by_5_min, freq='S', periods=60)
The result :
DatetimeIndex(['2016-07-08 00:00:00', '2016-07-08 00:00:01',
'2016-07-08 00:00:02', '2016-07-08 00:00:03',
'2016-07-08 00:00:04', '2016-07-08 00:00:05',
'2016-07-08 00:00:06', '2016-07-08 00:00:07',
'2016-07-08 00:00:08', '2016-07-08 00:00:09',
'2016-07-08 00:00:10', '2016-07-08 00:00:11',
'2016-07-08 00:00:12', '2016-07-08 00:00:13',
'2016-07-08 00:00:14', '2016-07-08 00:00:15',
'2016-07-08 00:00:16', '2016-07-08 00:00:17',
'2016-07-08 00:00:18', '2016-07-08 00:00:19',
'2016-07-08 00:00:20', '2016-07-08 00:00:21',
'2016-07-08 00:00:22', '2016-07-08 00:00:23',
'2016-07-08 00:00:24', '2016-07-08 00:00:25',
'2016-07-08 00:00:26', '2016-07-08 00:00:27',
'2016-07-08 00:00:28', '2016-07-08 00:00:29',
'2016-07-08 00:00:30', '2016-07-08 00:00:31',
'2016-07-08 00:00:32', '2016-07-08 00:00:33',
'2016-07-08 00:00:34', '2016-07-08 00:00:35',
'2016-07-08 00:00:36', '2016-07-08 00:00:37',
'2016-07-08 00:00:38', '2016-07-08 00:00:39',
'2016-07-08 00:00:40', '2016-07-08 00:00:41',
'2016-07-08 00:00:42', '2016-07-08 00:00:43',
'2016-07-08 00:00:44', '2016-07-08 00:00:45',
'2016-07-08 00:00:46', '2016-07-08 00:00:47',
'2016-07-08 00:00:48', '2016-07-08 00:00:49',
'2016-07-08 00:00:50', '2016-07-08 00:00:51',
'2016-07-08 00:00:52', '2016-07-08 00:00:53',
'2016-07-08 00:00:54', '2016-07-08 00:00:55',
'2016-07-08 00:00:56', '2016-07-08 00:00:57',
'2016-07-08 00:00:58', '2016-07-08 00:00:59'],
dtype='datetime64[ns]', freq='S')
DatetimeIndex(['2016-07-08 00:05:00', '2016-07-08 00:05:01',
'2016-07-08 00:05:02', '2016-07-08 00:05:03',
'2016-07-08 00:05:04', '2016-07-08 00:05:05',
'2016-07-08 00:05:06', '2016-07-08 00:05:07',
'2016-07-08 00:05:08', '2016-07-08 00:05:09',
'2016-07-08 00:05:10', '2016-07-08 00:05:11',
'2016-07-08 00:05:12', '2016-07-08 00:05:13',
'2016-07-08 00:05:14', '2016-07-08 00:05:15',
'2016-07-08 00:05:16', '2016-07-08 00:05:17',
'2016-07-08 00:05:18', '2016-07-08 00:05:19',
'2016-07-08 00:05:20', '2016-07-08 00:05:21',
'2016-07-08 00:05:22', '2016-07-08 00:05:23',
'2016-07-08 00:05:24', '2016-07-08 00:05:25',
'2016-07-08 00:05:26', '2016-07-08 00:05:27',
'2016-07-08 00:05:28', '2016-07-08 00:05:29',
'2016-07-08 00:05:30', '2016-07-08 00:05:31',
'2016-07-08 00:05:32', '2016-07-08 00:05:33',
'2016-07-08 00:05:34', '2016-07-08 00:05:35',
'2016-07-08 00:05:36', '2016-07-08 00:05:37',
'2016-07-08 00:05:38', '2016-07-08 00:05:39',
'2016-07-08 00:05:40', '2016-07-08 00:05:41',
'2016-07-08 00:05:42', '2016-07-08 00:05:43',
'2016-07-08 00:05:44', '2016-07-08 00:05:45',
'2016-07-08 00:05:46', '2016-07-08 00:05:47',
'2016-07-08 00:05:48', '2016-07-08 00:05:49',
'2016-07-08 00:05:50', '2016-07-08 00:05:51',
'2016-07-08 00:05:52', '2016-07-08 00:05:53',
'2016-07-08 00:05:54', '2016-07-08 00:05:55',
'2016-07-08 00:05:56', '2016-07-08 00:05:57',
'2016-07-08 00:05:58', '2016-07-08 00:05:59'],
dtype='datetime64[ns]', freq='S')
etc
This is perfect for me! I want now to have lists, not a pandas.tseries.index.DatetimeIndex.. The .tolist() method give this :
for time in pd.date_range('2016-07-08 00:00:00', '2016-07-08 23:59:00', freq='5Min').tolist():
time_by_5_min = datetime.datetime.strftime(time.to_datetime(), "%Y-%m-%d %H:%M:%S")
print (pd.date_range(time_by_5_min, freq='S', periods=60)).tolist()
The result :
[Timestamp('2016-07-08 00:00:00', offset='S'), Timestamp('2016-07-08 00:00:01', offset='S'), Timestamp('2016-07-08 00:00:02', offset='S'), Timestamp('2016-07-08 00:00:03', offset='S'), Timestamp('2016-07-08 00:00:04', offset='S'), Timestamp('2016-07-08 00:00:05', offset='S'), Timestamp('2016-07-08 00:00:06', offset='S'), etc]
I want to have something like this :
[['2016-07-08 00:00:00', '2016-07-08 00:00:01',
'2016-07-08 00:00:02', '2016-07-08 00:00:03',
'2016-07-08 00:00:04', '2016-07-08 00:00:05',
'2016-07-08 00:00:06', '2016-07-08 00:00:07',
'2016-07-08 00:00:08', '2016-07-08 00:00:09',
'2016-07-08 00:00:10', '2016-07-08 00:00:11',
'2016-07-08 00:00:12', '2016-07-08 00:00:13',
'2016-07-08 00:00:14', '2016-07-08 00:00:15',
'2016-07-08 00:00:16', '2016-07-08 00:00:17',
'2016-07-08 00:00:18', '2016-07-08 00:00:19',
'2016-07-08 00:00:20', '2016-07-08 00:00:21',
'2016-07-08 00:00:22', '2016-07-08 00:00:23',
'2016-07-08 00:00:24', '2016-07-08 00:00:25',
'2016-07-08 00:00:26', '2016-07-08 00:00:27',
'2016-07-08 00:00:28', '2016-07-08 00:00:29',
'2016-07-08 00:00:30', '2016-07-08 00:00:31',
'2016-07-08 00:00:32', '2016-07-08 00:00:33',
'2016-07-08 00:00:34', '2016-07-08 00:00:35',
'2016-07-08 00:00:36', '2016-07-08 00:00:37',
'2016-07-08 00:00:38', '2016-07-08 00:00:39',
'2016-07-08 00:00:40', '2016-07-08 00:00:41',
'2016-07-08 00:00:42', '2016-07-08 00:00:43',
'2016-07-08 00:00:44', '2016-07-08 00:00:45',
'2016-07-08 00:00:46', '2016-07-08 00:00:47',
'2016-07-08 00:00:48', '2016-07-08 00:00:49',
'2016-07-08 00:00:50', '2016-07-08 00:00:51',
'2016-07-08 00:00:52', '2016-07-08 00:00:53',
'2016-07-08 00:00:54', '2016-07-08 00:00:55',
'2016-07-08 00:00:56', '2016-07-08 00:00:57',
'2016-07-08 00:00:58', '2016-07-08 00:00:59'],
['2016-07-08 00:05:00', '2016-07-08 00:05:01',
'2016-07-08 00:05:02', '2016-07-08 00:05:03',
'2016-07-08 00:05:04', '2016-07-08 00:05:05',
'2016-07-08 00:05:06', '2016-07-08 00:05:07',
'2016-07-08 00:05:08', '2016-07-08 00:05:09',
'2016-07-08 00:05:10', '2016-07-08 00:05:11',
'2016-07-08 00:05:12', '2016-07-08 00:05:13',
'2016-07-08 00:05:14', '2016-07-08 00:05:15',
'2016-07-08 00:05:16', '2016-07-08 00:05:17',
'2016-07-08 00:05:18', '2016-07-08 00:05:19',
'2016-07-08 00:05:20', '2016-07-08 00:05:21',
'2016-07-08 00:05:22', '2016-07-08 00:05:23',
'2016-07-08 00:05:24', '2016-07-08 00:05:25',
'2016-07-08 00:05:26', '2016-07-08 00:05:27',
'2016-07-08 00:05:28', '2016-07-08 00:05:29',
'2016-07-08 00:05:30', '2016-07-08 00:05:31',
'2016-07-08 00:05:32', '2016-07-08 00:05:33',
'2016-07-08 00:05:34', '2016-07-08 00:05:35',
'2016-07-08 00:05:36', '2016-07-08 00:05:37',
'2016-07-08 00:05:38', '2016-07-08 00:05:39',
'2016-07-08 00:05:40', '2016-07-08 00:05:41',
'2016-07-08 00:05:42', '2016-07-08 00:05:43',
'2016-07-08 00:05:44', '2016-07-08 00:05:45',
'2016-07-08 00:05:46', '2016-07-08 00:05:47',
'2016-07-08 00:05:48', '2016-07-08 00:05:49',
'2016-07-08 00:05:50', '2016-07-08 00:05:51',
'2016-07-08 00:05:52', '2016-07-08 00:05:53',
'2016-07-08 00:05:54', '2016-07-08 00:05:55',
'2016-07-08 00:05:56', '2016-07-08 00:05:57',
'2016-07-08 00:05:58', '2016-07-08 00:05:59'], etc]
Any ideas ?
To convert the DateTimeIndex to Series, use the DateTimeIndex. to_series() method.
You can convert or cast pandas DatetimeIndex to String by using pd. to_datetime() and DatetimeIndex. strftime() functions. DatetimeIndex class is an Immutable ndarray which is used to store datetime64 data (internally stores as int64).
DatetimeIndex [source] Immutable ndarray of datetime64 data, represented internally as int64, and which can be boxed to Timestamp objects that are subclasses of datetime and carry metadata such as frequency information.
I think you can use DatetimeIndex.strftime
:
I try remove some code (in sample is not necessary, maybe in real code is important)
for time in pd.date_range('2016-07-08 00:00:00', '2016-07-08 23:59:00', freq='5Min'):
print (pd.date_range(time, freq='S', periods=60).strftime("%Y-%m-%d %H:%M:%S").tolist())
['2016-07-08 00:00:00', '2016-07-08 00:00:01', '2016-07-08 00:00:02', '2016-07-08 00:00:03', '2016-07-08 00:00:04', '2016-07-08 00:00:05', '2016-07-08 00:00:06', '2016-07-08 00:00:07', '2016-07-08 00:00:08', '2016-07-08 00:00:09', '2016-07-08 00:00:10', '2016-07-08 00:00:11', '2016-07-08 00:00:12', '2016-07-08 00:00:13', '2016-07-08 00:00:14', '2016-07-08 00:00:15', '2016-07-08 00:00:16', '2016-07-08 00:00:17', '2016-07-08 00:00:18', '2016-07-08 00:00:19', '2016-07-08 00:00:20', '2016-07-08 00:00:21', '2016-07-08 00:00:22', '2016-07-08 00:00:23', '2016-07-08 00:00:24', '2016-07-08 00:00:25', '2016-07-08 00:00:26', '2016-07-08 00:00:27', '2016-07-08 00:00:28', '2016-07-08 00:00:29', '2016-07-08 00:00:30', '2016-07-08 00:00:31', '2016-07-08 00:00:32', '2016-07-08 00:00:33', '2016-07-08 00:00:34', '2016-07-08 00:00:35', '2016-07-08 00:00:36', '2016-07-08 00:00:37', '2016-07-08 00:00:38', '2016-07-08 00:00:39', '2016-07-08 00:00:40', '2016-07-08 00:00:41', '2016-07-08 00:00:42', '2016-07-08 00:00:43', '2016-07-08 00:00:44', '2016-07-08 00:00:45', '2016-07-08 00:00:46', '2016-07-08 00:00:47', '2016-07-08 00:00:48', '2016-07-08 00:00:49', '2016-07-08 00:00:50', '2016-07-08 00:00:51', '2016-07-08 00:00:52', '2016-07-08 00:00:53', '2016-07-08 00:00:54', '2016-07-08 00:00:55', '2016-07-08 00:00:56', '2016-07-08 00:00:57', '2016-07-08 00:00:58', '2016-07-08 00:00:59']
['2016-07-08 00:05:00', '2016-07-08 00:05:01', '2016-07-08 00:05:02', '2016-07-08 00:05:03', '2016-07-08 00:05:04', '2016-07-08 00:05:05', '2016-07-08 00:05:06', '2016-07-08 00:05:07', '2016-07-08 00:05:08', '2016-07-08 00:05:09', '2016-07-08 00:05:10', '2016-07-08 00:05:11', '2016-07-08 00:05:12', '2016-07-08 00:05:13', '2016-07-08 00:05:14', '2016-07-08 00:05:15', '2016-07-08 00:05:16', '2016-07-08 00:05:17', '2016-07-08 00:05:18', '2016-07-08 00:05:19', '2016-07-08 00:05:20', '2016-07-08 00:05:21', '2016-07-08 00:05:22', '2016-07-08 00:05:23', '2016-07-08 00:05:24', '2016-07-08 00:05:25', '2016-07-08 00:05:26', '2016-07-08 00:05:27', '2016-07-08 00:05:28', '2016-07-08 00:05:29', '2016-07-08 00:05:30', '2016-07-08 00:05:31', '2016-07-08 00:05:32', '2016-07-08 00:05:33', '2016-07-08 00:05:34', '2016-07-08 00:05:35', '2016-07-08 00:05:36', '2016-07-08 00:05:37', '2016-07-08 00:05:38', '2016-07-08 00:05:39', '2016-07-08 00:05:40', '2016-07-08 00:05:41', '2016-07-08 00:05:42', '2016-07-08 00:05:43', '2016-07-08 00:05:44', '2016-07-08 00:05:45', '2016-07-08 00:05:46', '2016-07-08 00:05:47', '2016-07-08 00:05:48', '2016-07-08 00:05:49', '2016-07-08 00:05:50', '2016-07-08 00:05:51', '2016-07-08 00:05:52', '2016-07-08 00:05:53', '2016-07-08 00:05:54', '2016-07-08 00:05:55', '2016-07-08 00:05:56', '2016-07-08 00:05:57', '2016-07-08 00:05:58', '2016-07-08 00:05:59']
...
...
If need output as nested lists
append
data in loop to L
:
import pandas as pd
L = []
for time in pd.date_range('2016-07-08 00:00:00', '2016-07-08 23:59:00', freq='5Min'):
print (pd.date_range(time, freq='S', periods=60).strftime("%Y-%m-%d %H:%M:%S").tolist())
L.append(pd.date_range(time, freq='S', periods=60).strftime("%Y-%m-%d %H:%M:%S").tolist())
print (L)
[['2016-07-08 00:00:00', '2016-07-08 00:00:01', '2016-07-08 00:00:02', '2016-07-08 00:00:03', '2016-07-08 00:00:04', '2016-07-08 00:00:05', '2016-07-08 00:00:06', '2016-07-08 00:00:07', '2016-07-08 00:00:08', '2016-07-08 00:00:09', '2016-07-08 00:00:10', '2016-07-08 00:00:11', '2016-07-08 00:00:12', '2016-07-08 00:00:13', '2016-07-08 00:00:14', '2016-07-08 00:00:15', '2016-07-08 00:00:16', '2016-07-08 00:00:17', '2016-07-08 00:00:18', '2016-07-08 00:00:19', '2016-07-08 00:00:20', '2016-07-08 00:00:21', '2016-07-08 00:00:22', '2016-07-08 00:00:23', '2016-07-08 00:00:24', '2016-07-08 00:00:25', '2016-07-08 00:00:26', '2016-07-08 00:00:27', '2016-07-08 00:00:28', '2016-07-08 00:00:29', '2016-07-08 00:00:30', '2016-07-08 00:00:31', '2016-07-08 00:00:32', '2016-07-08 00:00:33', '2016-07-08 00:00:34', '2016-07-08 00:00:35', '2016-07-08 00:00:36', '2016-07-08 00:00:37', '2016-07-08 00:00:38', '2016-07-08 00:00:39', '2016-07-08 00:00:40', '2016-07-08 00:00:41', '2016-07-08 00:00:42', '2016-07-08 00:00:43', '2016-07-08 00:00:44', '2016-07-08 00:00:45', '2016-07-08 00:00:46', '2016-07-08 00:00:47', '2016-07-08 00:00:48', '2016-07-08 00:00:49', '2016-07-08 00:00:50', '2016-07-08 00:00:51', '2016-07-08 00:00:52', '2016-07-08 00:00:53', '2016-07-08 00:00:54', '2016-07-08 00:00:55', '2016-07-08 00:00:56', '2016-07-08 00:00:57', '2016-07-08 00:00:58', '2016-07-08 00:00:59'], ['2016-07-08 00:05:00', '2016-07-08 00:05:01', '2016-07-08 00:05:02', '2016-07-08 00:05:03', '2016-07-08 00:05:04', '2016-07-08 00:05:05', '2016-07-08 00:05:06', '2016-07-08 00:05:07', '2016-07-08 00:05:08', '2016-07-08 00:05:09', '2016-07-08 00:05:10', '2016-07-08 00:05:11', '2016-07-08 00:05:12', '2016-07-08 00:05:13', '2016-07-08 00:05:14', '2016-07-08 00:05:15', '2016-07-08 00:05:16', '2016-07-08 00:05:17', '2016-07-08 00:05:18', '2016-07-08 00:05:19', '2016-07-08 00:05:20', '2016-07-08 00:05:21', '2016-07-08 00:05:22', '2016-07-08 00:05:23', '2016-07-08 00:05:24', '2016-07-08 00:05:25', '2016-07-08 00:05:26', '2016-07-08 00:05:27', '2016-07-08 00:05:28', '2016-07-08 00:05:29', '2016-07-08 00:05:30', '2016-07-08 00:05:31', '2016-07-08 00:05:32', '2016-07-08 00:05:33', '2016-07-08 00:05:34', '2016-07-08 00:05:35', '2016-07-08 00:05:36', '2016-07-08 00:05:37', '2016-07-08 00:05:38', '2016-07-08 00:05:39', '2016-07-08 00:05:40', '2016-07-08 00:05:41', '2016-07-08 00:05:42', '2016-07-08 00:05:43', '2016-07-08 00:05:44', '2016-07-08 00:05:45', '2016-07-08 00:05:46', '2016-07-08 00:05:47', '2016-07-08...
five_minute_data = five_minute_date_range.strftime("%Y-%m-%d %H:%M:%S").tolist()
does return data in the way OP required it to be.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With