Я новичок в Python и у меня, вероятно, очень простой вопрос о «наилучшем» способе хранения данных в моем коде. Любые советы очень ценны!
У меня есть длинный файл .csv в следующем формате:
Scenario,Year,Month,Value
1,1961,1,0.5
1,1961,2,0.7
1,1961,3,0.2
etc.
Мои значения сценария варьируются от 1 до 100, год идет с 1961 по 1990, а месяц идет от 1 до 12. Таким образом, в моем файле 100 * 29 * 12 = 34800 строк, каждая со связанным значением.
Я хотел бы прочитать этот файл в какой-то структуре данных Python, чтобы я мог получить доступ к «Value», указав ' Сценарий »,« Год »и« Месяц ». Как лучше всего это сделать (или какие есть варианты)?
В голове я думаю об этих данных как об «числовом кубоиде» с осями для сценария, года и месяца, так что каждое значение расположены в координатах (Сценарий, Год, Месяц). По этой причине у меня возникает соблазн попытаться прочитать эти значения в массиве 3D numpy и использовать сценарий, год и месяц в качестве индексов. Разумно ли это сделать?
Думаю, я мог бы также сделать словарь, в котором ключи будут примерно такими, как
str(Scenario)+str(Year)+str(Month)
Было бы лучше? Есть ли другие варианты?
(По "лучше" Полагаю, я имею в виду «более быстрый доступ», хотя, если один метод требует гораздо меньше памяти, чем другой, было бы неплохо знать и об этом).
Большое спасибо!