我是R的初学者,我想计算通过定义的空间多边形的公交次数。我的数据(一辆正在行驶的汽车)的结构如下:
`'data.frame': 4473 obs. of 5 variables:
$ TIMESTAMP : POSIXct, format: "2018-08-30 14:52:00" "2018-08-30 14:51:55" "2018-08-30 14:51:53" "2018-08-30 14:51:52" ...
$ GPSLongitude: num 22.9 22.9 22.9 22.9 22.9 ...
$ GPSLatitude : num 40.6 40.6 40.6 40.6 40.6 ...
$ GPSHeading : chr "40,09" "41,67" "328,92" "328,92" ...
$ GPSSpeed : num 36 18 0 0 0 3.6 10.8 14.4 14.4 14.4 ...
此外,我定义了以下空间多边形:
x_coord<- c(22.94202200198221, 22.94212252387121, 22.94187209650147, 22.94177280002484) #coord from google earth
y_coord<- c(40.63327268950896, 40.63337668693983, 40.63351336486517, 40.6334113055307) #coord from google earth
xycoord<- cbind(x_coord, y_coord)
pol = Polygon(xycoord)
ps = Polygons(list(pol),1)
sps = SpatialPolygons(list(ps))
我已经尝试过使用函数pnt.in.poly(sample_data[,2:3], xycoord)
来查找位于多边形范围内的点,但是我想找到转乘的次数。
这是带有绘制点的地图:
(红色:多边形,绿黄色:2个过渡)
最后,我想知道驾驶员经过多边形多少次以及属于每个公交的点(例如,第一公交(绿色)由点345-355组成,第二公交(黄色)由点组成)点1203-1220)。当然,驾驶员会在一天中的不同时间通过多边形。
提前谢谢!