- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个动物位置的空间数据集,作为源周围的 (x,y) 点(半径为 5 公里的圆形图案)。我需要测试这些点是否相对于远离源的位置聚集(或排斥)在源周围,同时考虑方向性。
我尝试过的事情:
理想情况下,我会得到一个结果,可以告诉我“你的点在 X 方向上像 donut 一样分布,在 Y 方向上是随机的,在 Z 方向上是山峰状”。我感觉像this answer (重采样 + mad.test)对我来说可能是正确的方向,但不能完全适应我的场景......
这是围绕点源的圆形分布的假数据集:
library(ggplot2)
library(spatstat)
library(dplyr)
set.seed(310366)
nclust <- function(x0, y0, radius, n) {
return(runifdisc(n, radius, centre=c(x0, y0)))
}
c <- rPoissonCluster(1000, 0.1, nclust, radius=0.02, n=2)
df <- data.frame(x = c$x - 0.5, y = c$y - 0.5) %>%
mutate(Distance = sqrt(x^2 + y^2)) %>%
filter(Distance < 0.5)
ggplot(df) +
geom_point(aes(x = x, y = y)) +
# source point
geom_point(aes(x = 0, y = 0, colour = "Source"), size = 2) +
coord_fixed()
最佳答案
也许您可以通过研究模式的各向异性来获得一些相关的见解(即使它可能不会为您提供您正在寻找的所有答案)。
检测点图案各向异性的工具包括:扇区 K 函数、对方向分布、各向异性对相关函数。这些都在 Spatial Point Patterns: Methodology and Applications with R 的第 7.9 节中进行了描述。 (免责声明:我是合著者)。幸运的是,第 7 章是免费示例章节之一,因此您可以在这里下载:http://book.spatstat.org/sample-chapters.html .
它不会以特殊方式处理您的源位置,因此它不能解决整个问题,但当您考虑要做什么时,它可能会为您提供灵感。
您可以制作一个泊松模型,其强度取决于距源的距离和方向,看看这是否能给您带来任何见解。
下面是一些轻微注释的代码片段,因为我没有时间详细说明(请记住这些只是粗略的想法 - 可能有更好的替代方案)。请随意改进。
单位圆盘中的均匀点:
library(spatstat)
set.seed(42)
X <- runifdisc(2000)
plot(X)
W <- Window(X)
极坐标作为协变量:
rad <- as.im(function(x,y){sqrt(x^2+y^2)}, W)
ang <- as.im(atan2, W)
plot(solist(rad, ang), main = "")
north <- ang < 45/180*pi & ang > -45/180*pi
east <- ang > 45/180*pi & ang < 135/180*pi
west <- ang < -45/180*pi & ang > -135/180*pi
south <- ang< -135/180*pi | ang > 135/180*pi
plot(solist(north, east, west, south), main = "")
plot(solist(rad*north, rad*east, rad*west, rad*south), main = "")
拟合一个简单的对数线性模型(可以拟合更复杂的关系与ippm()
:
mod <- ppm(X ~ rad*west + rad*south +rad*east)
mod
#> Nonstationary Poisson process
#>
#> Log intensity: ~rad * west + rad * south + rad * east
#>
#> Fitted trend coefficients:
#> (Intercept) rad westTRUE southTRUE eastTRUE
#> 6.37408999 0.09752045 -0.23197347 0.18205119 0.03103026
#> rad:westTRUE rad:southTRUE rad:eastTRUE
#> 0.32480273 -0.29191172 0.09064405
#>
#> Estimate S.E. CI95.lo CI95.hi Ztest Zval
#> (Intercept) 6.37408999 0.1285505 6.1221355 6.6260444 *** 49.5843075
#> rad 0.09752045 0.1824012 -0.2599794 0.4550203 0.5346480
#> westTRUE -0.23197347 0.1955670 -0.6152777 0.1513307 -1.1861588
#> southTRUE 0.18205119 0.1870798 -0.1846184 0.5487208 0.9731206
#> eastTRUE 0.03103026 0.1868560 -0.3352008 0.3972613 0.1660651
#> rad:westTRUE 0.32480273 0.2724648 -0.2092185 0.8588240 1.1920904
#> rad:southTRUE -0.29191172 0.2664309 -0.8141066 0.2302832 -1.0956377
#> rad:eastTRUE 0.09064405 0.2626135 -0.4240690 0.6053571 0.3451614
plot(predict(mod))
非统一模型:
lam <- 2000*exp(-2*rad - rad*north - 3*rad*west)
plot(lam)
set.seed(4242)
X2 <- rpoispp(lam)[W]
plot(X2)
适合:
mod2 <- ppm(X2 ~ rad*west + rad*south +rad*east)
plot(predict(mod2))
plot(X2, add = TRUE, col = rgb(.9,.9,.9,.5))
在中心添加点并查看限制为该点的 Ksector()
作为引用点(对于这个例子来说信息不是很多,但可能会有所帮助在其他情况下??):
X0 <- ppp(0, 0, window = W)
plot(X2[disc(.1)], main = "Zoom-in of center disc(0.1) of X2")
plot(X0, add = TRUE, col = "red")
dom <- disc(.01)
plot(dom, add = TRUE, border = "blue")
X3 <- superimpose(X2, X0)
估计的北区 K 函数高于西区(绘制差异):
Knorth <- Ksector(X3, 45, 135, domain = dom)
Kwest <- Ksector(X3, 135, 225, domain = dom)
plot(eval.fv(Knorth-Kwest), iso~r)
由reprex package于2018年12月18日创建(v0.2.1)
关于r - 通过距源的距离进行空间聚类的定向测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53743241/
A是不同元素的序列,B是A的子序列,A-B是A中的所有元素,但不是B中的所有元素距离(A) = 总和|a(i)-a(i+1)|从 i=1 到 n-1找到一个子序列 B 使得 Dist(B)+Dist(
我想通过计算每对中所有(多维)点集之间距离的平均值来量化组相似性。 我可以很容易地手动为每对组手动完成此操作,如下所示: library(dplyr) library(tibble) library(
在 OpenXML 中用于指定大小或 X、Y 坐标的度量单位是什么? (介绍)。 将那些与像素匹配是否有意义,如果是这样,那些如何转换为像素? graphicFrame.Transform = new
我想知道是否有人可以帮助我替换过渡层中的值。 如果我尝试: transitionlayer[transitionlayer >= 0.14] = 0.14 : comparison (5) is
我在 firebase 中有一个列表,其中包括地理位置(经度和纬度),并且我想获得距给定坐标最近的 10 个位置。 我正在从 MySQL 过渡,在那里我将计算 SELECT 中的距离, 并在 ORDE
如何在 Python 中根据 2 个 GPS 坐标计算速度、距离和方向(度)?每个点都有纬度、经度和时间。 我在这篇文章中找到了半正矢距离计算: Calculate distance between
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 6 年前。 Improve this ques
我只想使用 matplotlib 标记两条曲线之间发生最大偏差的位置。请帮助我。 垂直距离适用于 Kolmogorov–Smirnov test import numpy as np %matplot
我有一个包含数万行重复项的文件。我想根据行号找到重复项之间的平均时间/距离。 例如:(其中第一列是行号) 1 string1 2 string2 3 string2 4 string1 5 strin
用公式speed=distance/time计算时间 但时间总是0我的输入是 distance=10 和 speed=5 我的输出必须 = 2 #include int main() { in
我正在使用 Levenshtein 算法来查找两个字符串之间的相似性。这是我正在制作的程序的一个非常重要的部分,因此它需要有效。问题是该算法没有发现以下示例相似: CONAIR AIRCON 算法给出
对于一个房地产网站,我需要实现一个允许搜索文本和距离的搜索机制。 当 lat 和 lon 记录在单独的列中时,在 MySQL 表上进行距离计算很容易,但房子往往有 LOT true/false 属性。
是否可以在触发前更改 UIPanGestureRecognizer 的距离?目前的实现似乎在触发前有 5-10 像素的距离余量,我想降低它如果可能的话。 原因是我将 UIPanGestureRecog
我试图找到两个网格之间的偏差。例如在 3d 空间中定义的两组点之间的差异,我计划使用一些 3d 可视化工具来可视化距离,例如QT3d 或一些基于开放式 gl 的库。 我有两组网格,基本上是两个 .ST
所以,我有这个函数可以快速返回两个字符串之间的 Levenshtein 距离: Function Levenshtein(ByVal string1 As String, ByVal string2
我正在尝试用字典创建一个光学字符识别系统。 事实上,我还没有实现字典=) 我听说有一些基于 Levenstein 距离的简单指标,这些指标考虑了不同符号之间的不同距离。例如。 'N' 和 'H' 彼此
我在PostGIS数据库(-4326)中使用经纬度/经度SRID。我想以一种有效的方式找到最接近给定点的点。我试图做一个 ORDER BY ST_Distance(point, ST_GeomF
我想从线串的一端开始提取沿线串已知距离处的点的坐标。 例如: library(sf) path % group_by(L1) %>% summarise(do_union =
我已经编写了这些用于聚类基于序列的数据的函数: library(TraMineR) library(cluster) clustering <- function(data){ data <- s
是否可以设置 UILabel 的行之间的距离,因为我有一个 UILabel 包含 3 行,并且换行模式是自动换行? 最佳答案 如果您指的是“前导”,它指的是类型行之间的间隙 - 您无法在 UILabe
我是一名优秀的程序员,十分优秀!