Проблема:колонка доступа с использованием dictreader
Я возникли проблемы, пытаясь найти среднее значение столбца из файла CSV с помощью dictreader питона.
Я попытался:
Доступ столбцов, как это, используя имя столбца, это работает, но требуется имя столбца, и им не знаете, как цикл над reader.fieldnames таким образом, чтобы построить список от только каждого отдельного столбца, а не смешивания всех данных столбцов в этом же списке:
for r in reader:
print(r.get("Price"))
Пример петли
for i in reader.fieldnames:
for r in reader:
print(row.get(i))
Это прекрасно, однако распечатывает 1 элемент из каждого столбца для каждой строки. Это затрудняет сбор списка имен всех цен, всех имен и т. Д., Поскольку он просто перестроит диктофон в виде списка.
Вопрос
Как я могу читать только один весь столбец из dictreader, так что я могу получить доступ к каждому столбцу в отдельности в виде списка и выполнения операций на нем?
Note: до сих пор я пробовал добавлять каждый элемент с помощью цикла, но в результате получается массив размера N с 4 элементами в каждой строке.
Полезные советы и спасибо за ответы! но им идеально не хотелось бы использовать какие-либо дополнительные библиотеки за пределами csv и т. д. – D3181
'pandas' и' petl' - оба отличных варианта, если ваш набор данных имеет какой-либо существенный размер, или если требования вашего проекта начнут расти. Мой ответ был, безусловно, наивным «Программирование 101», в дикой природе вы ожидали использовать один из этих модулей. –
@ToreEschliman - Если вам не нужны полные функциональные возможности Pandas DataFrame - если вы можете легко выполнить задачу с помощью встроенных встроенных функций *, возможно, не стоит добавлять посторонние модули в пространство имен. – wwii