`.csv` 파일을 구문 분석하고 표시하는 가장 빠른 방법은 무엇입니까?

`.csv` 파일을 구문 분석하고 표시하는 가장 빠른 방법은 무엇입니까?

현재 matplotlib와 함께 Python을 사용하여 440k개 이상의 라인을 표시하고 있지만 하나의 열만 표시 .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(2,000개 행 미만)에 적합합니다.

거대한 CSV 파일(100,000개 행 이상)을 구문 분석할 때 네이티브 모듈을 훨씬 능가하는 Cassava 모듈을 사용했습니다.

보세요http://hackage.haskell.org/package/cassava

도움이 되었기를 바랍니다

관련 정보