生成一个高速公路流量预测数据集
时间: 2023-06-25 09:04:29 浏览: 114
好的,以下是生成高速公路流量预测数据集的示例代码:
```python
import numpy as np
import pandas as pd
from datetime import datetime, timedelta
# 生成日期范围
start_date = datetime(2021, 6, 1)
end_date = datetime(2021, 6, 30)
date_range = pd.date_range(start_date, end_date, freq='H')
# 生成道路编号
road_ids = np.arange(1001, 1010)
# 生成每个道路每小时的流量
traffic_data = []
for date in date_range:
for road_id in road_ids:
# 生成随机流量
traffic = np.random.randint(100, 1000)
traffic_data.append({
'road_id': road_id,
'date': date,
'traffic': traffic
})
# 将数据转换为 DataFrame
df = pd.DataFrame(traffic_data)
# 将日期和道路编号合并为一个新的列
df['road_date'] = df.apply(lambda row: str(row['road_id']) + '_' + row['date'].strftime('%Y-%m-%d %H:%M:%S'), axis=1)
# 将数据集按照道路编号和日期升序排序
df = df.sort_values(['road_id', 'date'], ascending=[True, True])
# 输出数据集
print(df.head())
```
生成的数据集格式如下:
```
road_id date traffic road_date
0 1001 2021-06-01 00:00:00 267 1001_2021-06-01 00:00:00
1 1002 2021-06-01 00:00:00 250 1002_2021-06-01 00:00:00
2 1003 2021-06-01 00:00:00 217 1003_2021-06-01 00:00:00
... ... ... ... ...
2157 1007 2021-06-30 23:00:00 570 1007_2021-06-30 23:00:00
2158 1008 2021-06-30 23:00:00 652 1008_2021-06-30 23:00:00
2159 1009 2021-06-30 23:00:00 674 1009_2021-06-30 23:00:00
```
其中,`road_id` 表示道路编号,`date` 表示日期和小时,`traffic` 表示该小时的车流量,`road_date` 是将道路编号和日期合并成一个新的列。可以根据需要进行调整,例如可以增加其他特征,如天气状况等。
阅读全文