簡體   English   中英

python2.7 - 按一天中的小時對 CSV 數據進行分組

[英]python2.7 - Grouping CSV data by hour of day

我需要從格式如下的數據中按小時分組:

Hour of Day,Users,Sessions,Total Events
2016010100,12,12,550
2016010101,12,12,296
2016010102,9,7,289
2016010200,11,11,191
2016010201,5,5,61
2016010202,11,11,214
2016010300,15,15,746
2016010301,6,6,256
2016010302,9,9,933
2016010400,12,12,589
2016010401,5,5,278
2016010402,2,2,63

(小時 00 代表午夜到凌晨 1 點)

我需要找到一個 python 代碼,它可以幫助我將數據分組為小時,以便我可以進行統計匯總。 輸出應該是總共 24 個 csv 文件(每小時 1 個文件)。

小時 00 所需輸出的示例:

Hour of Day, Users, Sessions, Total Event
2016010100,12,12,550
2016010200,11,11,191
2016010300,15,15,746
2016010400,12,12,589

由於該文件包含超過 14000 行,我如何才能在所有時間執行此操作?

請幫忙,謝謝。

將您的文件作為列表讀取並使用逗號分割每一行,如果第一個元素以您的小時格式結束,則使用列表理解進行分組:

read_file=open("input_file.txt")
text=read_file.readlines()
for i in range(24):
    hour_format="{:>02d}".format(i)
    output_list = ([line for line in text[1:] if (line.split(",")[0]).endswith(hour_format)])
    print ("{0}{1}{0}".format("#"*30, hour_format))
    print (text[0])
    for line in output_list:
        print (line.strip())

暫無
暫無

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

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