最近一直在处理交通数据,有时间、车牌,经过的路口地址,数据量较大,本篇针对各车经过的路口时间先后顺序,生成贵阳交通的可通行有向图,即相连的交通路口间是否是双向通行、单向通行。
一、关于数据的说明
- 车牌号,路口地址都是字符串
- 时间是日期时间格式
- 数据量大概有680万
二、原始算法代码
rm(list=ls(all=TRUE))
gc()
library(RODBC)
channel=odbcConnect("transport-connector-R", uid="transport", pwd="transport") #连接mysql test 数据库
sqlTables(channel) # 显示test数据库中的表格
#检索test.transport20140901 中贵阳的车辆信息,含车牌,经过的路口
transections_data<-sqlQuery(channel,"select plate,address from transport20140901 where plate like '贵A%' order by plate,time")
odbcClose(channel)
# 读取文件中排序好的路口地址数据
address_file <-file("/home/wanglinlin/transport/address.txt","r")
sorted_address <-readLines(address_file)
close(address_file)
#sorted_address[256]
#生成贵阳交通路口连通性有向图初始矩阵
transection_count <- length