使用应用空间数据框

时间:2017-05-18 14:58:16

标签: r dataframe geospatial

尽管做出了最好的努力,但找不到任何答案。我无法将数据转换为数据表,因为我需要公式的空间属性。

如何使用空行数据帧的每行应用? 我必须找到sp2中sp1的每个项目最接近的匹配,但仍然在同一条街道上(这意味着它可能不是地理上绝对最接近的项目)。 没有平面投影的方便解决方案是dist2line 我必须从同一条街道上的sp2项目中预选,所以我需要一些类型的东西

sp1$x <- dist2line(sp1, sp2[sp2$street == sp1$street,]) [4]

特别是如果检查所有sp2,函数将减慢。这个函数将返回一个4列的矩阵,只有子集sp2[sp2$street == sp1$street,]的索引,而不是整个sp2 - 这是另一个陷阱 - 如何从子集sp2中获取值?

dist2line需要来自两个数据集的空间坐标,因此无法将其转换为数据表(在dt中,此操作很容易)。我想避免使用逐步记录的迭代方法。有任何想法吗?

很抱歉没有附上任何可重复的样本 - dput()无法有效地处理空间线数据框,而sp2是折线(而不是它返回的实际数据<S4 object of class structure("Lines", package = "sp")>)和dist2line要求线。

0 个答案:

没有答案