0
我有一個驅動程序的旅行日記的數據集。對於每次出行,在csv文件中都有關聯的開始時間,結束時間和星期幾。沒有與旅行相關的日期。循環播放python時間對象的工作日
現在我已經得到了數據轉換成蟒蛇其中每個開始時間和結束時間連接到它,像這樣的工作日:
time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=23,
tm_min=45, tm_sec=0, tm_wday=0, tm_yday=1, tm_isdst=-1)
print journey['BeginTime'][2].tm_wday, journey['BeginTime'][2].tm_hour
這對於小時返回0爲星期一和23。
這些旅程中有11,000個,我想要得到的是根據一天中的時間駕駛的汽車數量的每週概況。
這可以通過計算指定時間間隔內各自['BeginTime']和['EndTime']間隔之間的行程數來推斷。 5分鐘的時間間隔就足夠了,因爲數據是最近的五分鐘。
有沒有一個優雅的Python方式來做到這一點?喜歡的東西:
for fiveMinutes in Week:
count = 0
for trip in range(len(journey['BeginTime']):
if journey['BeginTime'][trip] == fiveMinutes
or (journey['BeginTime'][trip] < fiveMinutes
and journey['EndTime'][trip] > fiveMinutes):
count = count + 1
carCount[fiveMinutes] = count
它看起來像您使用的是字典,一堆在它列表。使用字典列表不是更好,每行程一個字典? – jcfollower
您是否需要擔心跨越一天邊界或一週邊界的旅程? – jcfollower
謝謝jcfollower。重新發表您的第一條評論,您可能是對的!我有5個來自調查的csv文件,每個文件都涵蓋了由唯一用戶ID連接的旅行日記的不同方面。我只是想要一個快速的方式來導入數據,所以我使用這個代碼,但有什麼更好的方法? DEF getCSVData(文件名): \t數據= csv.reader(開放((文件名), 'RB'),分隔符=」, 'quotechar ='「') \t \t 頭= data.next() \t列= {} \t在頭H: \t柱並[h] = [] \t \t在數據行: \t \t爲H,v在拉鍊(標頭,行):\t \t \t \t \t柱[h] .append(v) \t返回專欄 – user578582