通过车牌匹配计算csv表中大量车辆通过两个卡口所用的时间,‘HPHM’列记录了车牌号,‘KKBH’列记录了通过的卡口的编号‘50001102000’和‘50001105000’,‘GCSJ’列记录了经过卡口时的时间,一共有5万多行数据
时间: 2023-09-27 10:03:58 浏览: 45
你可以使用Python和pandas库来处理这个问题。首先,你需要加载csv文件到一个pandas DataFrame中:
```python
import pandas as pd
data = pd.read_csv('data.csv')
```
然后,你可以使用pandas的过滤功能来选择通过指定两个卡口的车辆,并按照车牌号和经过时间排序:
```python
start_kk = '50001102000'
end_kk = '50001105000'
filtered_data = data[(data['KKBH'] == start_kk) | (data['KKBH'] == end_kk)]
filtered_data = filtered_data.sort_values(['HPHM', 'GCSJ'])
```
接下来,你可以使用pandas的groupby和shift函数来计算每个车辆通过两个卡口所用的时间:
```python
grouped_data = filtered_data.groupby('HPHM')
grouped_data['TIME'] = grouped_data['GCSJ'].diff().shift(-1)
```
最后,你可以将结果保存到一个新的csv文件中:
```python
grouped_data.to_csv('result.csv')
```
完整的代码如下:
```python
import pandas as pd
data = pd.read_csv('data.csv')
start_kk = '50001102000'
end_kk = '50001105000'
filtered_data = data[(data['KKBH'] == start_kk) | (data['KKBH'] == end_kk)]
filtered_data = filtered_data.sort_values(['HPHM', 'GCSJ'])
grouped_data = filtered_data.groupby('HPHM')
grouped_data['TIME'] = grouped_data['GCSJ'].diff().shift(-1)
grouped_data.to_csv('result.csv')
```