Skip to content

Instantly share code, notes, and snippets.

@nim4n136
Created January 13, 2020 17:06
Show Gist options
  • Save nim4n136/46630ad19599ff2d9e455dd8e8a84043 to your computer and use it in GitHub Desktop.
Save nim4n136/46630ad19599ff2d9e455dd8e8a84043 to your computer and use it in GitHub Desktop.
Chunk quartal date range python pandas
import pandas as pd
begin = '20100101'
end = '20101231'
start = dt.datetime.strptime(begin, '%Y%m%d')
finish = dt.datetime.strptime(end, '%Y%m%d')
dates = pd.DatetimeIndex(start=start, end=finish, freq='D').tolist()
quarters = [d.to_period('Q') for d in dates]
df = pd.DataFrame([quarters, dates], index=['Quarter', 'Date']).T
quarterly_dates = {str(q): [ts.strftime('%Y%m%d')
for ts in df[df.Quarter == q].Date.values.tolist()]
for q in quarters}
>>> quarterly_dates
{'2010Q1': ['20100101',
'20100102',
'20100103',
'20100104',
'20100105',
...
'20101227',
'20101228',
'20101229',
'20101230',
'20101231']}
>>> quarterly_dates.keys()
['2010Q1', '2010Q2', '2010Q3', '2010Q4']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment