解析和显示“.csv”文件的最快方法是什么?

Jea*_*ean 5 python csv matplotlib

我目前正在使用 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)
Run Code Online (Sandbox Code Playgroud)

Faz*_*r87 1

对我来说看起来不错。这适用于您的小规模 CSV(不到几千行)。

当我要解析巨大的 CSV 文件(100k 行以上)时,我使用了 Cassava 模块,该模块的性能远远超出了本机模块。

看看http://hackage.haskell.org/package/cassava

希望这可以帮助

  • 谢谢,但 Cassava 不是 Haskell 的吗?它与 Python 程序集成良好吗? (2认同)