В качестве альтернативы вы можете использовать вывод команды bzcat
(который также может обрабатывать многопоточные файлы):
p = subprocess.Popen(["bzcat", "data.bz2"], stdout=subprocess.PIPE)
parser = et.iterparse(p.stdout, ...)
# at the end just check that p.returncode == 0 so there were no errors
Вариантом может быть и групповой год. Щелкните правой кнопкой мыши ячейку с одним из месяцев> group> выберите Years and months. Это поставит месяцы в хронологическом порядке.