Какой самый быстрый способ проанализировать и отобразить файл `.csv`?

Какой самый быстрый способ проанализировать и отобразить файл `.csv`?

В настоящее время я использую python с matplotlib для отображения 440+ k строк, .csvно требуется 11 secотобразить только один столбец. У меня .csvвсегда один и тот же формат. Есть ли способ разобрать его быстрее? Я выбираю сохранять все столбцы в списки, а затем отображать их.

Вот код, который я сделал:

csv_path = "C:/Users/mydata.csv"
csv_database = open(csv_path, delimiters=";")    
data_dict = csv.DictReader(csv_database, delimiter=";")

current_row = 0

number_list = []

for row in data_dict:

   current_row += 1 # Skip heading row

   if current_row == 1:
       continue

   # Here I add to a list of strings already created 
   name_list.append(row["Name"]) # Assuming the header of the column is "Name"

   # Here I add to a list of integer 
   if row['Number'] == 'NULL':
        int_list.append(0)

   elif row['Number'] != " ":

        int_list.append(int(row['Number'])) # Assuming the header is "Number"

   else:
        int_list.append(0)

решение1

Мне кажется, это нормально. Это подойдет для небольших CSV-файлов (менее пары тысяч строк).

Когда мне нужно было обработать огромные CSV-файлы (более 100 тыс. строк), я использовал модуль Cassava, который намного превосходил по производительности собственные модули.

Взгляни наhttp://hackage.haskell.org/package/cassava

Надеюсь это поможет

Связанный контент