问题标签 [gstat]
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 - 如何在回归克里金法中拟合 gstat 模型?
我正在尝试使用 r gstat 包使用回归克里金法拟合模型。我已经加载了一些称为流行率的疾病数据和一些协变量降雨量。降雨栅格数据作为 .grd 文件加载。我用来拟合此模型的代码是
我得到的错误结果是
有人可以帮忙吗?
gstat - Automap 包:负值和变异函数拟合
两天前,我开始使用 automap 包进行自动变异函数建模并尝试使用它(手动操作很乏味,并且没有太多优势......虽然我觉得很奇怪 automap 似乎真的很喜欢 Matérn 函数用于对变异函数进行建模)。我想到的是数据集中存在负值,而该包生成的地图上未显示负值。
这是我刚刚粘在一起的一个数字:Nr。1 是使用 autoFitVariogram 和 autoKrige 后的输出。它似乎没有负值。由于我不喜欢图形输出,我使用 gstat 执行了普通克里金法,它使用来自 autoFitVariogram(来自 automap)(Nr. 2)的变异函数,它清楚地显示了负降水区域。我将 autoKrige 生成的地图导出到 QGIS 并仔细检查,还有很多负值(Nr. 3;黑色区域)。
所以我的问题:
1.) 由 autoKrige 生成的克里金预测图显然会生成遵循“if var.pred < 0 then 0”等方案的地图。我可以看到这对于生成这样的地图很有用,但是这对实际数据有什么意义呢?我想使用我的数据集进行进一步分析,而负降雨量值似乎有点……不现实。将这种“如果 var.pred < 0 则 0”方案也应用于数据是否在数学上是合理的,如果这会使它在物理上合理吗?
2.) 您可以使用广义最小二乘法 (GLS) 作为 automap 包中的自变量来确定变异函数参数。但是,我想使用 gstat ( fit.variogram.reml ) 的 REML 拟合。我尝试variogram$var_model
用我的 REML 估计值代替(这也产生了我修改过的变异函数),但是当使用 autoKrige 执行克里金法时,会再次使用原始变异函数模型。除了软件包提供的方法之外,还有其他方法可以拟合模型吗?(autoKrige 手册中有一个参数“data_variogram”,但这似乎有别的作用)。
谢谢!
r - 在 R 中使用 gstat 或 automap 包时重复数据
我正在尝试使用普通克里金法使用 R 中的 gstat 或 automap 包根据预测变量在空间上预测动物将出现的数据。我有许多(超过 100 个)重复的坐标点,因为这些站点是采样的,所以我无法丢弃它们多年来多次。每次我为普通克里金运行下面的代码时,我都会收到一个 LDL 错误,这是由于重复点造成的。有谁知道如何在不丢弃数据的情况下解决这个问题?我已经尝试了 automap 包中应该纠正重复项的代码,但我无法让它工作。感谢您的帮助!
r - R:automap 包中的 Autokrige.cv 函数生成 NaN
我对 R 相当陌生,我正在尝试对从荷兰各地不同站点收集的温度测量值进行插值。我有大约 35 个站点的数据,这些站点每 10 分钟进行一次测量,时间跨度约为两周。因此,我认为最好创建一个循环来处理这个问题。要查看插值技术的效果如何,我想对每个时间戳进行交叉验证。
为了做到这一点,我使用了 automap 包中的 Autokrige 函数,接下来我使用了 automap 包中的 compare.cv 函数,以便获得所有时间戳的最重要统计数据的概览。除此之外,我确保只有在至少 25 个站注册测量时才进行交叉验证。
然而问题是,我的代码如下所述在大多数情况下都有效,但在 4 种情况下会发出以下警告:
当我尝试对包括所有交叉验证的总列表使用 compare.cv 命令时,它给了我以下错误:
我想知道是什么导致 Autokrige 函数在交叉验证中生成 NaN,更重要的是如何从 results.cv 中删除它们以便我可以使用 compare.cv 函数?
谢谢!
r - 在 sp 和 gstat - R 中创建网格数据集
我无法让我的数据使用 R 中的 sp 和 gstat 包创建网格。我有一个相对较小的 GPS 坐标数据集,我想插入我的数据并制作网格地图。我的数据在 csv 文件中,目前不在 shapefile 或栅格中。
到目前为止,我已经能够使用“气泡”功能绘制我的数据点,现在我正在尝试创建一个网格。但我经常收到这个错误:
gridded(test_2) = T 建议的最小公差:0.75 points2grid(points, tolerance, round) 中的误差:尺寸 1:坐标间隔不是恒定的
我不确定为什么间隔不是恒定的,或者如何可能“操纵”它们。我测量了距海岸 0-1000 m 的距离,并将其归一化为 0-1。
关于如何使间隔恒定的任何建议?
谢谢 !!
凯伦
代码示例:
r - 向数学函数添加参数
我正在尝试自动化生成插值地球化学图的过程。我创建了一个循环,它基本上从第 13 列开始,一直循环到第 67 列。
但是,部分 IDW 代码需要当前列的标题,以便绘制相应的地球化学参数。
例如; 第 13 列的标题是“Ag_ppm”,因此原始代码如下:
我已经能够在每个循环中使用(其中 i 每个循环增加 1;13、14、15 等)获得感兴趣的列的标题:
但是,当我简单地将“Ag_ppm”替换为 coln 时,该行会因给定错误而失败。我尝试了各种方法,包括粘贴,尽管一切仍然会导致相同的错误。
log10(coln) 中的错误:数学函数的非数字参数
是否有使用当前方法的相当简单的方法?
r - R gstat 时空变异函数克里金法
我正在尝试使用 R 包 gstat 中的函数 variogramST 来计算时空变异函数。
有 12 年的数据,在空间和时间的不规则点(没有完整网格或部分网格)有 20'000 个数据点。对于不规则数据集,我必须使用时空包中的 STIDF。我想要一个时间半变异函数,其参考点位于 0、90、180、270 天,最多几年等。不幸的是,计算和内存问题都出现了。当命令
在没有进一步参数的情况下运行,半变异函数只考虑了非常短的时间周期,就半变异函数的参考点而言,这似乎没有适当地捕获固有的数据结构。
用户可以使用此函数的更多参数,但我不确定如何正确参数化它们:tlag、tunit、twidow。具体来说,我想知道他们如何互动以及我如何实现上述目标。所以我尝试了以下代码
由于我的 32GB RAM 计算机中的内存问题,以下代码结果无法正常工作:
但可能有缺陷,否则。此外,就计算时间而言,后一行代码似乎也不可行。
有人知道如何正确地从 gstat 包装中指定 variogramST 函数,以期望的时间间隔为目标吗?
谢谢
r - R中的IDW参数
我想使用包中的idw
命令使用 R 执行 IDW 插值gstat
。我有这个数据:
现在我想在特定值内使用不同idp
的nmax
参数执行每次运行(idp 从 1 到 3 乘 0.5,nmax 从 3 到 6 乘 1),并为 idp 和 nmax 值的每个组合获取一个包含列的数据框。我尝试使用两个 for 循环,但它不起作用。
编辑不起作用的代码是:
kriging - 为什么克里金法的 RMSE 不会随着训练数据的增加而严格降低?
我正在使用 gstat 包进行普通克里金法并使用 walker Lake 数据(数据大小 = 470)。我在每次试验中从该数据中随机抽取 20 个,并计算从 50-450 个数据集中随机选择的训练数据集的 rmse。然后我计算了每个数据集的平均值。结果如下——
我的问题是:
1) 为什么 RMSE 是波浪形的。为什么在增加训练数据的同时它并不总是减少?
2)这是否意味着,我们不需要用于克里金的大型数据集,因为当训练数据集为 200 时,RMSE 最低。
等待回复。