Как извлечь данные из файла CSV и импортировать в словарь в Python?

Я новичок в Python, новый разработчик, только что начал стажировку. Итак, у меня есть файл csv с данными, настроенными таким образом.

Категория события, Метка события, Всего событий, Уникальных событий, Значение события, Средн. Ценность

Из каждой строки файла я хочу извлечь метки портов (ниже) в словаре, а также добавить общие и уникальные события. Всего и уникальных событий я должен суммировать только порты с одинаковыми метками (не дублируя). Мои данные выглядят так: «Поиск, Санторин (JTR) — Парос (PAS) — Санторин (JTR), «2,199», «1,584», 0,0.00». Я хочу, чтобы мой словарь выглядел так:

data_file = 'Analytics.csv' ports_dict = {# "ATH-HER" : [10000, 5000], # "ATH-JTR" : [20000, 3500], # "HER-JTR" : [100, 500] }

       data = 'Analytics.csv'
#row= 'Search,Santorin (JTR) - Paros (PAS) - Santorin (JTR),"2,199","1,584",0,0.00'
def extract_counts(data):
  ports = []
  for i in data.split('"')[1:]:
      ports.append(i.split('"')[0])
  return ports

Пример из моего кода: когда я работаю, строка работает нормально, когда я использую «данные», она возвращает мне пустую строку. Кто-нибудь может мне с этим помочь ?

Extract_counts(данные)Out[13]: []

Что мне нужно сделать, чтобы запустить это для всего csv Спасибо за вашу помощь!

1 ответ

Прежде всего, «данные» — это просто строковая переменная. В вашем цикле вы перебираете каждый символ, а не читаете файл. Использование разделения на один символ с '"' приводит к пустой строке.

Чтобы начать свое путешествие с чтения файлов CSV в Python, я рекомендую:

Другие вопросы по тегам