2011-07-27 3 views
0

Pythonを使用してCSVファイルの日付を並べ替えると、列の中で最高の値を得ることができますか?Pythonを使用してCSVファイルの日付をソートすることで、列の最高値を取得するにはどうすればよいですか?

マイコード:

if sys.argv[1] == "-p": 
    c = sys.argv[2] 
    col_name= r"\\DT001\Process(SK)\Virtual" 
    #d = sys.argv[3] 
    col_name2 = r"(PDH-CSV 4.0) (GMT Standard Time)(0)" 

    with open(c, 'rb') as inf: 
     reader = csv.reader(inf) 
     col_index = next(reader).index(col_name) 
     highest = float(max(rec[col_index] for rec in reader)) 

     reader2 = csv.reader2(inf) 
     col_index2 = next(reader).index(col_name2) 
     date = '7/19/2011' 


     #gigabytes = highest/1073741824 
     gigabytes = highest /1024/1024/1024 
     print "Performance Counters Peak:\n", gigabytes, "GB" 

私は最高値を並べ替えることができたが、私はPythonスクリプトを使用してCSVファイルで希望日をソートすることにより、最高値を取得する方法を見つけ出すことができません。

+0

あなたはCSVの数行を表示することができますか? –

+0

StackExchangeネットワークにクロスポストしないでください。この質問はここでの話題です。 – Will

答えて

0

使用このスニペット

from time import strptime 
def filterByDate(mydate , start,end): 
    format = "%m/%d/%Y" 
    return strptime(start,format) <= strptime(mydate,format) and strptime(mydate,format) <= strptime(end,format) 
... 
... 
highest = float(max(rec[col_index] for rec in reader if filterByDate(rec[date_col_index],startDate,endDate))) 
関連する問題