专题1:NGSIM数据集切分

一.NGSIM 数据介绍

NGSIM 的全称为 Next Generation Simulation,是由美国联邦公路局发起的一项数据采集项目,被交通界学者广泛用于 车辆跟驰换道等驾驶行为研究,交通流分析,微观交通模型构建,车辆运动轨迹预测,驾驶员意图识别,自动驾驶决策规划 等。所有数据均为在美国高速公路国道101上采集的实际运行轨迹数据。数据文件包含3个txt文档,三个文档对应三个不同的时段,每个时段为15分钟。关于该数据集更多的介绍,请参考《交通领域开源数据集NGSIM数据集的介绍》

二.NGSIM数据集中字段的介绍

关于NGSIM数据集中各条数据字段的介绍可以参考《NGSIM数据集数据字段介绍》,文章详细的对字段内容进行了介绍

三.数据集切分

NGSIM数据集一共有11850527条数据,为了方便后期数据处理,首先我们选择对数据集的条数进行切分,以100万条数据为切分点进行切分,最后将余下的数据存储到切分文件中。
数据集数据条数切分的代码如下,更改路径即可使用。

import pandas as pd
from pathlib import Path
############################################
# @ res_file_path 待分割文件路径
res_file_path = Path(r"G:\data_processing\NGSIM_Data.csv")                 #仅修改待分割文件路径即可
# @ split_size 分割大小 这里是100万条一个文件
split_size = 1000000
############################################
tar_dir = res_file_path.parent/("split_"+res_file_path.name.split(".")[0])
if not tar_dir.exists():
    tar_dir.mkdir()
    print("创建文件夹\t"+str(tar_dir))
print("目标路径:\t"+str(tar_dir))
print("分割文件:\t"+str(res_file_path))
print("分割大小:\t"+"{:,}".format(split_size))
tmp = pd.read_csv(res_file_path,nrows = 10)
columns = tmp.columns.to_list()
idx = 0
while(len(tmp)>0):
    start = 1+(idx*split_size)
    tmp = pd.read_csv(res_file_path,
                header = None,
                names = columns,
                skiprows = start,
                nrows = split_size)
    if len(tmp) <= 0:
        break
    file_name = res_file_path.name.split(".")[0]+"_{}_{}".format(start,start+len(tmp))+".csv"
    file_path = tar_dir/file_name
    tmp.to_csv(file_path,index=False)
    idx+=1
    print(file_name +"\t保存成功")

数据集切分完成的图示如下:
数据集切分

四.总结:

关于切分完的数据集处理,请关注下面的文章。详细代码请查看《NGSIM数据集处理》;数据下载请查看NGSIM数据集

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小谢@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值