Как создать список/словарь из датафреймов, полученных из xlsx файлов в python?
У меня есть 3 файла excel (.xls). Я хочу создать список или словарь, которые содержали бы дата фреймы, полученные из этих файлов. Я использую код:
all_datasets = {years:pd.read_excel(download_dir+'\index'+str(year)+'_data.xls') for year in years}
display(all_datasets[2017])
где years - список годов, за которые у меня собраны данные (2017, 2018, 2019), а download_dir - директория, где эти файлы хранятся. Когда я пытаюсь вывести словарь целиком или его часть по ключу, я получаю пустой словарь/просто ничего
То же самое со списками. Для них я использую код:
all_datasets = [pd.read_excel(download_dir+f'\index'+str(year)+'_data.xls') for year in years]
Название файлов одинаковое, меняется только год
Ответы (1 шт):
Всем привет! Спасибо, кто ответил. Проблема была в списке years. Нужно было создавать его либо прямо перед этой строчкой (до этого он создавался где-то в начале кода), либо вместо years прямо использовать список [2017, 2018, 2019], не создавая перед этим. То есть либо:
years = [2017, 2018, 2019]
all_datasets = {years:pd.read_excel(download_dir+'\index'+str(year)+'_data.xls') for year in years}
Либо:
all_datasets = {years:pd.read_excel(download_dir+'\index'+str(year)+'_data.xls') for year in [2017, 2018, 2019]}
В моем конкретном случае формат строки роли не играл, однако на это тоже обращайте внимание (спасибо первому ответу)