簡體   English   中英

Python:哪種是讀取大型.csv文件的最佳方法?

[英]Python: which is the best way to read large .csv file?

我必須閱讀大約20MB .csv 這些文件是由8列和5198行組成的表。 我必須對特定列I進行一些統計。

我有n不同的文件,這是我在做什么:

stat = np.arange(n)
    I = 0
    for k in stat:
        df = pd.read_csv(pathS+'run_TestRandom_%d.csv'%k, sep=' ')
        I+=df['I']
    I = I/k ## Average

這個過程需要0.65s ,我想知道是否有最快的方法。

編輯:顯然,這是一種非常糟糕的方法! 不要做我想像的事:/

我現在正在使用大小相同的數據集解決類似的問題。 我正在使用的方法是numpy的genfromtxt

import numpy as np

ary2d = np.genfromtxt('yourfile.csv', delimiter=',', skip_header=1,
    skip_footer=0, names=['col1', 'col2', 'col3', 'col4', 'col5', 'col6', 'col7', 'col8'])

在我的系統上,時間總計約為0.1秒

這樣做的一個問題是,非數值的任何值都將簡單地替換為nan ,而這可能不是您想要的值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM