generator¶
-
rolex.generator.
time_series
(start=None, end=None, periods=None, freq='1day', normalize=False, return_date=False)[source]¶ A pure Python implementation of pandas.date_range().
Given 2 of start, end, periods and freq, generate a series of datetime object.
Parameters: - start (str or datetime.datetime (default None)) – Left bound for generating dates
- end (str or datetime.datetime (default None)) – Right bound for generating dates
- periods (integer (default None)) – Number of date points. If None, must specify start and end
- freq (string (default '1day' calendar daily)) –
string, default ‘1day’ (calendar daily) Available mode are day, hour, min, sec Frequency strings can have multiples. e.g.
‘7day’, ‘6hour’, ‘5min’, ‘4sec’, ‘3week` - normalize (boolean (default False)) – Trigger that normalize start/end dates to midnight
- return_date (boolean (default False)) – Trigger that only return date object.
Returns: A list of datetime.datetime object. An evenly sampled time series.
Usage:
>>> from __future__ import print_function >>> for dt in rolex.time_series("2014-1-1", "2014-1-7"): ... print(dt) 2014-01-01 00:00:00 2014-01-02 00:00:00 2014-01-03 00:00:00 2014-01-04 00:00:00 2014-01-05 00:00:00 2014-01-06 00:00:00 2014-01-07 00:00:00
中文文档
生成等间隔的时间序列。
需要给出, “起始”, “结束”, “数量” 中的任意两个。以及指定”频率”。以此唯一 确定一个等间隔时间序列。”频率”项所支持的命令字符有”7day”, “6hour”, “5min”, “4sec”, “3week” (可以改变数字).
-
rolex.generator.
weekday_series
(start, end, weekday, return_date=False)[source]¶ Generate a datetime series with same weekday number.
ISO weekday number: Mon to Sun = 1 to 7
Usage:
>>> start, end = "2014-01-01 06:30:25", "2014-02-01 06:30:25" >>> rolex.weekday_series(start, end, weekday=2) # All Tuesday [ datetime(2014, 1, 7, 6, 30, 25), datetime(2014, 1, 14, 6, 30, 25), datetime(2014, 1, 21, 6, 30, 25), datetime(2014, 1, 28, 6, 30, 25), ]
Parameters: weekday – int or list of int Returns: list of datetime 中文文档
生成星期数一致的时间序列。
-
rolex.generator.
rnd_date
(start=datetime.date(1970, 1, 1), end=None, **kwargs)[source]¶ Generate a random date between
start
toend
.Parameters: - start (string or datetime.date, (default date(1970, 1, 1))) – Left bound
- end (string or datetime.date, (default date.today())) – Right bound
Returns: a datetime.date object
中文文档
随机生成一个位于
start
和end
之间的日期。
-
rolex.generator.
rnd_date_array
(size, start=datetime.date(1970, 1, 1), end=None, **kwargs)[source]¶ Array or Matrix of random date generator.
Returns: 1d or 2d array of datetime.date
-
rolex.generator.
rnd_date_list_high_performance
(size, start=datetime.date(1970, 1, 1), end=None, **kwargs)[source]¶ Generate mass random date.
Parameters: - size – int, number of
- start – date similar object, int / str / date / datetime
- end – date similar object, int / str / date / datetime, default today’s date
- kwargs – args placeholder
Returns: list of datetime.date
-
rolex.generator.
rnd_datetime
(start=datetime.datetime(1970, 1, 1, 0, 0), end=datetime.datetime(2019, 1, 28, 21, 19, 59, 238575))[source]¶ Generate a random datetime between
start
toend
.Parameters: - start (string or datetime.datetime, (default datetime(1970, 1, 1))) – Left bound
- end (string or datetime.datetime, (default datetime.now())) – Right bound
Returns: a datetime.datetime object
中文文档
随机生成一个位于
start
和end
之间的时间。
-
rolex.generator.
rnd_datetime_array
(size, start=datetime.datetime(1970, 1, 1, 0, 0), end=None)[source]¶ Array or Matrix of random datetime generator.
Returns: 1d or 2d array of datetime.date
-
rolex.generator.
day_interval
(year, month, day, milliseconds=False, return_string=False)[source]¶ Return a start datetime and end datetime of a day.
Parameters: - milliseconds – Minimum time resolution.
- return_string – If you want string instead of datetime, set True
Usage Example:
>>> start, end = rolex.day_interval(2014, 6, 17) >>> start datetime(2014, 6, 17, 0, 0, 0) >>> end datetime(2014, 6, 17, 23, 59, 59)
-
rolex.generator.
month_interval
(year, month, milliseconds=False, return_string=False)[source]¶ Return a start datetime and end datetime of a month.
Parameters: - milliseconds – Minimum time resolution.
- return_string – If you want string instead of datetime, set True
Usage Example:
>>> start, end = rolex.month_interval(2000, 2) >>> start datetime(2000, 2, 1, 0, 0, 0) >>> end datetime(2000, 2, 29, 23, 59, 59)
-
rolex.generator.
year_interval
(year, milliseconds=False, return_string=False)[source]¶ Return a start datetime and end datetime of a year.
Parameters: - milliseconds – Minimum time resolution.
- return_string – If you want string instead of datetime, set True
Usage Example:
>>> start, end = rolex.year_interval(2007) >>> start datetime(2007, 1, 1, 0, 0, 0) >>> end datetime(2007, 12, 31, 23, 59, 59)