在Python中,我們可以很容易地按時間對數據進行分組。
首先,我們需要使用datetime模塊將時間戳轉換為日期時間格式。
import datetime timestamp = 1624345805 dt_object = datetime.datetime.fromtimestamp(timestamp) print("Date time object:", dt_object)
從時間戳中得到的日期時間對象可以用于按天、月或年進行分組。
例如,我們可以按日期對數據進行分組:
data = [{"id": 1, "timestamp": 1624345805}, {"id": 2, "timestamp": 1624353036}, {"id": 3, "timestamp": 1624745998}, {"id": 4, "timestamp": 1624832398}] grouped_data = {} for item in data: dt_object = datetime.datetime.fromtimestamp(item["timestamp"]) date = dt_object.date() if date in grouped_data: grouped_data[date].append(item) else: grouped_data[date] = [item] print(grouped_data)
輸出結果為:
{ datetime.date(2021, 6, 22): [{'id': 1, 'timestamp': 1624345805}, {'id': 2, 'timestamp': 1624353036}], datetime.date(2021, 6, 27): [{'id': 3, 'timestamp': 1624745998}], datetime.date(2021, 6, 28): [{'id': 4, 'timestamp': 1624832398}] }
我們也可以按月份對數據進行分組:
data = [{"id": 1, "timestamp": 1624345805}, {"id": 2, "timestamp": 1624353036}, {"id": 3, "timestamp": 1624745998}, {"id": 4, "timestamp": 1624832398}] grouped_data = {} for item in data: dt_object = datetime.datetime.fromtimestamp(item["timestamp"]) year_month = dt_object.strftime("%Y-%m") if year_month in grouped_data: grouped_data[year_month].append(item) else: grouped_data[year_month] = [item] print(grouped_data)
輸出結果為:
{ '2021-06': [{'id': 1, 'timestamp': 1624345805}, {'id': 2, 'timestamp': 1624353036}, {'id': 3, 'timestamp': 1624745998}, {'id': 4, 'timestamp': 1624832398}] }
以上就是按時間分組的Python代碼。