问题标签 [spatstat]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
242 浏览

r - 将 GIS 线矢量数据(道路)导出到 R 以将其用于网络 K 功能

我仍然是 R 的初学者,我有以下问题。任何提示将不胜感激 - 这将是一个很大的帮助开始。我在 ArcGIS 中有一个国家/地区的道路 shapefile,我想将其用作 R 中的网络变量以应用网络 K 函数(使用 spatstat 包在网络上查找点随机性)。我以前从未在 R 中处理过此类问题,我无法弄清楚如何将矢量线数据集转换为 R 中的网络变量。我尝试使用 shapefile 包,但在阅读了 .shp、.shx 和.dbf 文件,我不知道如何进一步使用它。

0 投票
2 回答
1847 浏览

r - as.owin 处理 spatstat 包 R 中的形状文件时出错

我正在尝试按照Adrian Baddeley 的教程“处理 spatstat 包中的形状文件”,其中作为 SpatialPolygonsDataFrame 的形状被转换为 owin 的集合。

形状的关键属性总结如下,我的目标是测试点集合是否在多边形集合中。

摘要(形状)

它有 907 个多边形,这是建议的转换

但我得到了错误

有任何想法吗?谢谢

0 投票
1 回答
405 浏览

r - 将 Shapefile、要素类或网络数据集导入 R

我在 R 中的 spatstat 包中工作,我想从 shapefile 创建一个“linnet”(网络)类的对象。不幸的是,虽然我能够从 ArcGIS 获取网络中所有节点的位置,但我无法弄清楚获取边列表或邻接矩阵的方法,这是在 spatstat 中构建“linnet”类对象所必需的. 那么如何获得其中一个(网络中的边列表或顶点邻接矩阵)是我的问题。

如果您有任何处理此问题的代码或任何建议,我将不胜感激。

下面是来自 spatstat 文档的对象类的描述。

提前谢谢了,

描述 创建一个表示线段网络的“linnet”类对象。用法 linnet(vertices, m, edges) 参数 vertices - 指定网络顶点的点模式(“ppp”类的对象)。m - 邻接矩阵。当相应的顶点由一条线连接时,逻辑值矩阵等于 TRUE。(指定 m 或边。) edges - 边列表。一个由两列组成的整数矩阵,指定应由边连接的所有顶点对。(指定 m 或边。)

0 投票
1 回答
317 浏览

r - 使用点坐标和直径计算点的面投影

我有一些与空间点相关的生态变量的数据。每个点都有相对于边界框的 x 和 y 坐标,但是这些点代表不同直径的圆形区域。我想要实现的是将每个点占据的区域投影到观察窗口上,以便我们随后可以对该区域进行像素化并检索每个点的区域与每个像素(网格单元)的重叠程度。在过去,我已经能够通过转换为 psp 线对象,然后使用 spatstat 包中的 pixellate 函数来使用横断面数据来实现这一点,但我不确定如何处理这些圆形区域。感觉我应该使用多边形类,但我又不确定如何定义它们。任何建议将不胜感激。

0 投票
1 回答
362 浏览

r - 如何在循环/应用命令中为 spatstat 对象分配标记?

一些 spatstat 函数,例如crossing.psp不允许在函数内分配标记。我正在使用 for 循环和 lapply 命令制作一个复杂的函数,它需要标记ppppsp对象。我在使用函数时尝试为这些对象分配标记时遇到问题。get()通常我会assign在这些情况下使用函数,但不能让它工作。这是一个例子:

对于那些不熟悉该软件包的人,marks工作如下:

我想要做的是(或类似的东西,它给出了预期的结果):

当然,这不起作用,因为我正在使用赋值运算符进行get函数。如果我尝试assign功能,我会收到错误

我也试过:

如何在循环内或使用应用命令为 spatspat 对象分配标记?

0 投票
3 回答
2746 浏览

r - 在 spatstat 的单个窗口中绘制点和多边形

我正在尝试在单个窗口中绘制包含多边形和点(在单独的文件中)的坐标数据,以便以后可以运行测试以查看存在哪些模式。我对 R 相当陌生(对 spatstat 也很陌生),所以我非常感谢有关如何最好地创建具有多种类型空间数据的单个图的任何建议。

我怀疑我患有新手炎,将不同类型的空间数据读取到单个窗口中并不困难。对不起。

旁注:一些多边形确实重叠,这就是为什么我不希望 spatstat 检查多边形。我知道这会造成复杂性,但这不是一个紧迫的问题。

0 投票
4 回答
26023 浏览

r - 在R中找到交点

我有 2 个向量:

我想将它们绘制为线,然后找到线的交点,如果有多个交点,那么我想定位它们中的每一个。

在此处输入图像描述

我遇到了一个类似的问题,并尝试使用 来解决这个问题spatstat,但我无法将包含两个向量值的组合数据框转换为psp object.

0 投票
2 回答
2212 浏览

r - 将空间多边形数据框转换为 OWIN

我是 R 新手,也是编程新手。我有一个已导入 R 的 shapefile,发现它是一个空间多边形数据框。我想在 spatstat 中使用 crossdist 函数,但在此之前我试图将其转换为 owin ,然后转换为 psp 类,因为这就是我为解决此问题而阅读的方法。我的问题是我不确定如何将我的数据转换为 owin。任何有关如何解决此问题的帮助将不胜感激。谢谢。

0 投票
1 回答
2076 浏览

r - 将两个多边形区域合并为R中的一个多边形区域

我是在 R 中处理空间数据和多边形的新手。

我有两个从谷歌地球提取的两个多边形的单独形状文件。所以基本上第一个形状文件是一个位置(例如购物中心等),第二个形状文件是第一个位置周围三公里的半径。我将两个形状文件作为 SpatialPolygonsDataFrames 读入 R。我使用以下代码:

但是,我没有得到两个多边形的组合视图(一个多边形内的一个多边形的视图)。

如果有人对我如何将两个多边形区域合并为 R 中的单个多边形区域进行编码有一些建议,我将非常感激!

0 投票
1 回答
1117 浏览

r - R中的聚类函数受限于道路网络

我正在分析 STATS19 道路事故数据,值得称道的是由英国政府向公众提供。我想看看不同类型的事故是如何聚集在一起的。“G 函数”(此处描述)可用于测量点模式与完全空间随机性“CSR”情况的差异。

spatstat 很好地处理了这类问题,该envelope函数提供了一个可视化,显示模式与 CSR 不同距离的偏离程度。

然而,正如我的同事 Dan Olner 所指出的那样,结果(如下所示,与 CSR 存在很大差异)并不一定显示出聚类 - 可能只是我们正在检测道路网络的自然聚类,大多数道路发生事故。可以通过克隆我的GitHub存储库并运行以下命令(在运行 WY.R 的部分内容之后)来复制下图:

事故 G 功能

这个问题实际上是由 Adrian Baddeley(spatstat 的开发者)自己在包的文档中描述的:

点可以是一维的位置(例如道路网络上记录的道路事故)

这正是我面临的情况,但我不知道如何修改上述分析以将 CSR 限制在(或者更好的是,靠近 - 因为并非所有事故都恰好在道路上 - 见下文)道路网络。(请参阅此处的数据)。

事故和道路网络

一个建议是从道路网络中获取随机点并为此计算 G 函数并将其与我的事故数据进行比较,但这不会创建一个清晰的(具有统计意义的)边界框。有什么建议么?