I have the following array (it could be a list as well):
uniqueDates = np.array([datetime.date(2017, 4, 11), datetime.date(2017, 4, 12),
datetime.date(2017, 4, 20), datetime.date(2017, 4, 25),
datetime.date(2017, 5, 3), datetime.date(2017, 5, 4),
datetime.date(2017, 5, 10), datetime.date(2017, 5, 11),
datetime.date(2017, 6, 1), datetime.date(2017, 6, 13),
datetime.date(2017, 6, 15), datetime.date(2017, 7, 10),
datetime.date(2017, 7, 13), datetime.date(2017, 7, 17)])
I want to split this array into 4 lists each of which contains the dates in the unique months (April, May, June, and July). So, the intended result looks something like this:
monthsList = [[datetime.date(2017, 4, 11),
datetime.date(2017, 4, 12),
datetime.date(2017, 4, 20),
datetime.date(2017, 4, 25)],
[datetime.date(2017, 5, 3),
datetime.date(2017, 5, 4),
datetime.date(2017, 5, 10),
datetime.date(2017, 5, 11)],
[datetime.date(2017, 6, 1),
datetime.date(2017, 6, 13),
datetime.date(2017, 6, 15)],
[datetime.date(2017, 7, 10),
datetime.date(2017, 7, 13),
datetime.date(2017, 7, 17)]]
I am wondering if there is a function that can do this automatically? Or should I loop over the elements and check them individually? I am looking for an efficient way to accomplish this task. I searched for a few questions here in stackoverflow but could not find what I am looking for.