问题标签 [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.
r - 使用 Spatstat 生成六边形晶格
我正在分析某些粒子的生长模式,并希望将点模式与具有相同强度(每单位面积的点数相同)的完美六边形晶格的点模式进行比较。我编写了一个函数来执行此操作,但它有一个固有的错误,我不确定它的来源。本质上,在函数运行之后,它会产生一个完美的六边形点图案,它没有正确数量的粒子——它通常偏离大约 1-4%。如果您将以下代码复制并粘贴到 R 中,您会看到这一点 - 对于这个特定示例,错误为 11.25% - 原始点图案有 71 个粒子,而生成的完美六边形点图案有 80 个粒子。这看起来很奇怪,因为代码,正如您将看到的,
以下是我编写的用于生成六角点阵的函数的代码。
现在,我对 R 比较陌生,所以很可能是代码中某处的语法错误导致了这个错误。或者,可能是我在这个过程中的思路有问题。但是,我认为这不太可能,因为我的结果与我一直在尝试的结果非常接近(大多数时候只有 1-4% 的错误是相当好的)。
总之,我想要帮助的是如何获取一个点图案并创建另一个具有相同窗口大小和相同数量粒子的点图案,但完美的六边形点图案。
如果您觉得有什么不清楚的地方,请不要犹豫,请我解释一下。
谢谢!
r - 使物体消失的功能
这是我遇到的一个非常奇怪的情况。基本上,我试图将累积分布函数拟合到我的数据的 G 函数中。这样做之后,我想绘制模型和原始数据,并将其输出为 PDF。我将允许代码解释(只需复制和粘贴):
上面的代码完美运行。
现在是奇怪的部分。
当我将所有命令封装mydata <- swedishpines
为一个函数并mydata
成为该函数的输入时,它不再起作用。下面的代码应该像最后一段代码一样执行,但事实并非如此。
出现以下错误:
我很困惑。我已经为此工作了很长时间,只是无法想出解决这个问题的方法。PDF 已输出,但已损坏,无法打开。我不知道为什么new_r
“消失”,但这样做会导致所有绘图操作停止。显然new_r
是函数的局部ModelFit
,但它似乎也似乎是函数中某些区域的局部。
任何帮助将不胜感激。
r - 如何从随机自截线列表(R中的psp)生成段列表?
我X=rpoisline(4)
用来生成线条并用plot(X)
. 我有X$ends
他们的坐标和他们的交点selfcrossing.psp(X)
(在 R 和 spatstat : library(spatstat)
)。
我需要获取段列表及其坐标并能够操作它们(更改它们的方向、位置、交叉点......)。这些线段必须通过一条线与另一条线和窗口的交点来定义。
那么,我是否错过了一种简单的方法来在非相交段的 psp 中转换几条相交线的 psp(我希望它很清楚)?
如果您有不简单的方法,我很感兴趣!
谢谢你的时间 !
编辑 :
这是我的行:
如果我设法处理每个部分(一个接一个),这是我认为可以产生的那种随机的东西。所以我需要从我的随机行列表中获取一个段列表。
r - 如何从一组段(spatstat 中的 psp)中获取 SpatialPolygons(SP 类)?
我有一组随机段在窗口中(在 spatstat R 中)绘制一种镶嵌(三角形,矩形...... )。我需要将其转换为一组多边形(SpatialPolygons)来计算一些指数(如面积、形状指数......)。
这显然很简单,但我找不到如何去做......
这是Carl Witthoft的一段代码,它生成了一个随机模式的自截断段:
segset 是我需要创建 SpatialPolygons 对象的 psp 对象。
r - 如何控制 spatspat 的 plot.tess 中的像素颜色?
我正在心形内生成随机点的镶嵌,我很难弄清楚如何控制图中像素的颜色。我认为plot(tess)
(在此示例中)生成图像值图,我可以通过在色带中指定相同数量的颜色来控制它们,但事实并非如此。
这会产生下面的图像:
是的,我就是那种直到(不要评判我)才把他的妻子当作情人节礼物的人!
r - R包“spatstat”:当use.gam = TRUE时,如何在泊松过程模型(函数:ppm)中获得非平滑项的标准误差?
在 R 包中spatstat
(我使用的是当前版本,1.31-0
),有一个选项use.gam
. 当您将此设置为 true 时,您可以在线性预测器中包含平滑项,就像使用 R 包一样mgcv
。例如,
现在,如果我想要截距的置信区间,您通常可以使用summary
or vcov
,它在您不使用时有效gam
,但在您使用 gam 时失败
给出错误消息
我知道,当您使用 时,此处的此标准错误近似值是不合理gam
的,但这已被警告消息捕获:
我对此并不担心——我准备证明使用这些标准错误是为了我使用它们的目的——我只想要数字,并希望避免“自己写”这样做。
我上面得到的错误消息似乎并不取决于我正在使用的数据集。我在nztrees
这里使用了这个例子,因为我知道它预装了spatstat
. 似乎它在抱怨变量本身,但模型清楚地理解语法,因为它适合模型(对于我自己的数据集,预测值看起来相当不错,所以我知道这不仅仅是在抽出垃圾)。
有人对此有任何提示或见解吗?这是一个错误吗?令我惊讶的是,我一直无法在网上找到任何关于此的讨论。任何帮助或提示表示赞赏。
编辑:虽然我已经在这里明确回答了我自己的问题,但我暂时不会接受我的回答。这样,如果有人有兴趣并愿意为此努力寻找“解决方法”而无需等待下一版spatstat
,我可以将赏金奖励给他/她。否则,我将在赏金期结束时接受我自己的答案。
r - 将数据导入 R 和 spatstat 时出错
我正在尝试将文本文件导入 R,特别是 spatstat 包。我已经加载了一个 shp 文件作为窗口并且工作得很好(使用plot()显示)。我无法让ppp()命令运行。运行后我不断收到此错误pp <- ppp(X, Y, window=W)
我仔细检查了文件,X 或 Y 坐标都没有任何空白数字甚至负数。
我应该检查什么来处理这个错误?此外,这些数据是公开的,因此如果他们需要查看,我可以将其提供给任何人。
r - R:spatstat:Thomas 集群进程的残差分析
我希望测试同质 Thomas 集群过程的拟合度,理想情况下使用诊断.ppm 和 qqplot.ppm 等残差图。由于适合 Thomas 集群进程的最直接方法是使用 kppm,因此我无法使用上述函数。任何人都可以建议这样做的方法吗?例如将 kppm 转换为 ppm 或使用 ppm 来适应 Thomas 集群过程,非常感谢
r - Spatstat 中的点模式
我在 R 包 Spatstat 中创建点模式时遇到了一些问题。
我以前使用过相同的代码,一切正常,所以我很困惑为什么它现在不起作用。我知道我可能需要使用 attach() 的替代方法,但是在尝试创建 ppp 后我不明白错误。
它甚至对取自 Spatstat 指南的示例代码做同样的事情:
我将通过 spatstat 指南回去尝试解决这个问题,但非常感谢任何帮助。
r - 如何确保 spatstat::owin(poly=) 没有“负面积”
我是 R spatstat 包的新用户,在使用 owin() 创建多边形观察窗口时遇到问题。代码如下:
if (w.area < 0) stop(paste("Area of polygon is negative -", "maybe traversed in >wrong direction?")) 出错:需要 TRUE/FALSE 的地方缺少值
我尝试了诸如颠倒多边形的顺序之类的事情并得到了同样的错误。
多边形包含重复的顶点
owin(poly = data.frame(x = rev(mass.map$x), y = rev(mass.map$y))) 中的多边形是自相交错误:多边形数据包含重复的顶点和自相交
然后我想也许 map() 返回的多边形并不意味着要馈送到 owin()。所以我尝试加载一个马萨诸塞州的形状文件(此时我完全在猜测)。:
mass.owin <- as(mass.poly, "owin") 检查 1006 个多边形...1,多边形 1 包含重复的顶点 [检查具有 91844 条边的多边形...] 2, 3, .. [etd 1:21: 52] ....10 [etd 36:12] ..... [etd 23:10] ....20 [etd 16:59] ..... [etd 13:22] .... 30 [etd 11:01] ..... [etd 9:21] ....40 [etd 8:06] ..... [etd 7:09] ....50 [etd 6:23 ] ..... [etd 5:46] ....60 [etd 5:15] ...[检查具有 2449 条边的多边形...] .. [etd 4:49] ....70 [ etd 4:27] ..... [etd 4:07] ....80 [etd 3:50] ..... [etd 3:36] ....90 [etd 3:22] 。 .... [等 3:11] ....100 [等。
我收到消息抱怨顶点相交等,但它未能构建多边形。
关于问题的一些背景:我正在尝试使用 spatstat 中的函数进行空间相对风险计算,即病例密度与对照的空间比率。为此,我需要一个观察窗口和该窗口内的点图。我可以作弊,使观察窗口围绕马萨诸塞州成为一个矩形,但这可能会扭曲海岸附近的值。在任何情况下,我都想学习如何在我以后使用这个包所做的任何工作中正确地做到这一点。感谢您的任何帮助,您可以提供。