问题标签 [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 - 如何使用 R 中的 gstat 拟合带有半变异函数的模型?
我有一个 csv 文件文件,其中包含 3 月 1 日下午 12 点的大气 PM10 浓度数据。请下载。我想在 R 中使用 gstat 包绘制半变异函数。我尝试在 R 中编写这些代码。但是有了这些数据,我无法拟合模型。
实际上我是 R 和统计学的初学者。所以,我什至对变异函数也一无所知。我有一些疑问:
a)当我将数据绘制为半变异函数时,它看起来与典型的半变异函数不同!为什么会这样?我应该对我的数据做任何其他事情,比如转换吗?
b)我怎样才能用这些数据拟合模型?我尝试过不同的模型,如“Sph”、“Exp”,但它们看起来像线性的!为什么?
c)我如何理解我应该在vgm()
函数中使用什么初始值?
d) 我如何理解该模型与数据正确匹配?
e)对于使用克里金法,我应该绘制什么样的半变异函数?只有全向半变异函数?或者我应该绘制方向半变异函数?
f)我如何解释半变异函数?我的意思是我实际上能理解半变异函数的数据吗?
提前致谢。
r - 问题是在 R 中投影 LON/LAT 数据
我有一个数据框,其中包含韩国首尔(首都)空气中 PM10 的浓度。请看一下。我想从这个数据集中绘制半变异函数。由于这里的 LAT/LON 数据是度数,所以我对这些数据进行了投影。我以这种方式预测数据:
投影后我得到了seoul311,如下所示
Q1:我发现投影后,LON/LAT 的值与之前的数据帧显示的值几乎相同。我的问题是这个proj4string(seoul311) = "+proj=longlat +datum=WGS84"
命令的实际功能是什么。在这里,LON/LAT(degree) 转换为 km/m 或类似的东西?
我尝试使用 rgdal 包编写另一个代码,如下所示:
投影后我得到了seoul3112,如下所示
Q2。在这里,我可以看到 LON/LAT 值转换为某个较大的值!这些值的含义是什么?米/公里或类似的东西?在上面的代码中,北意味着什么?北半球?
Q3。正如我之前提到的,我想在韩国首尔(utm zone 52)绘制半变异函数。那么,我应该使用哪种投影规则?我应该考虑utm区吗?我什么时候应该考虑utm区?
我对投影数据有很多困惑。你能详细回答我的三个问题吗?
r - 在 R 中绘制变异函数时,z~1 和 z~LON+LAT 有什么区别?
从上面的以下代码和输出中,我可以发现log(zinc)~1
并
log(zinc)~x+y
返回 v 和 v1 的不同伽马值。这两种操作的基本区别是什么?
help(variogram)
告诉我“定义响应向量和(可能的)回归量的公式,在没有回归量的情况下,使用例如 z~1;”。但是,我没有清楚地理解这句话!谁能详细告诉我应该何时使用z~1
或何时使用z~LON+LAT
?
r - 在 R 中进行克里金之前,我应该绘制哪种变异函数?
我有一个名为 seoul3112 的 csv 文件,其中包含 PM10 浓度。请下载。.我试图绘制样本变异函数并在其上拟合模型。
#分配一个CRS并重新投影
#绘制半变异函数
#模型拟合
写完这些代码后,我得到了一个像这样的半变异函数。
由于我是地统计学的新手,所以我很困惑我的上述变异函数是否适合我的数据集。因为,在典型的变异函数中,半方差值在门槛处变成水平的。但是这个变异函数是向上的!我应该在我的代码中做一些更正吗?
另一件事是,实际上我的最终目标是对我的数据集(seoul3112)进行克里金插值。我不明白,对于进行克里金,这个样本变异函数就足够了,还是我应该绘制方向变异函数或其他任何东西?谁能详细解释一下?
r - 如何在 R 中有效地从单个数据集中绘制多个半变异函数?
我有一个名为 seoul1to7 的数据框,其中包含 2012 年 3 月 1 日至 3 月 7 日的每小时 PM10 浓度数据。请下载。在此数据集中,时间采用 yyyymmddhr 格式。例如,2012030101 表示 2012 年 3 月 1 日凌晨 1 点
数据看起来像:
我的最终目标是每小时绘制半变异函数。例如,对于 2012 年 3 月 1 日上午 1 点(2012030101),有 107 个 PM10 数据。我想绘制 2012030101 到 2012030723 的半变异函数(总共 7*24 半变异函数)。我在 R 中写了一些代码:
起初,我尝试通过函数制作我想要的(7 * 24)数据帧,subset()
然后我想为每个数据帧绘制半变异函数。例如,我seoul311
通过以下代码绘制了(对于 2012030101)的半变异函数:
但我知道我的代码效率很低!我正在写(7 * 24)次subset(seoul1to7, time==2012030101)
这段代码。然后再次(7 * 24)次绘制半变异函数的代码!我认为这是非常不合适的方式。
那么,如何从我的数据集中非常有效地绘制这些(7*24)半变异函数seoul1to7
(通过使用循环或任何其他函数)?如果您需要任何进一步的信息,请告诉我。
r - R Gstat 在网格上计算半变异函数
我已经使用gstat
包生成了一个 3D 无条件正态分数模拟,现在想检查变异函数的再现。如何指定网格上变异函数的计算?
此时我收到如下错误
任何使用网格数据计算变异函数的指导或示例都值得赞赏(请注意,模拟需要一段时间才能运行,因为有 100 万个节点)
r - R:变异函数拟合不佳,克里金结果不佳
我尝试在雅加达湾进行克里金法。我有一组具有适当坐标和属性(pH、盐度、...)的测量点
为了进行克里金法,我首先需要为我的变异函数找到一个模型。当我使用“变异函数”函数时,输出并不完美,但应该没问题,但是当我尝试拟合变异函数时,我收到一条警告消息:In fit.variogram(ph.vgm, model = vgm(0.12, " Sph", 0.1, 0.01)) :警告:变异函数拟合中的奇异模型,我有一个奇异模型。
在这里,我阅读了与变异函数计算相关的奇异模型。我可以做点什么让它变得更好吗?
我怎样才能更好地拟合我的变异函数?为什么我只能在测量点周围获得小圆圈?我想拥有带有预测值的完整地图。
我还尝试了更不灵活的“automap”库,我没有获得好的结果。
r - 本地克里金法在带有完整数据的“krigeST”中报告错误(“STFDF”)
我一直在使用包中的krigeST
函数gstat
,并尝试使用全套基于 SpatialPolygons 的数据 (STFDF) 进行本地克里金法。
当我尝试以下
问题似乎是在 krigeST.local 中,some_STFDF_with_SpatialPolygons_in_sp
被强制转换为SFIDF
. 在那里,有一个班级不允许的子集步骤SpatialPolygons
,因为 中有重复的术语from@index[, 1]
。
我想尝试不可分离的时空变异函数,因此不使用局部克里金法并不是一个真正的选择。有解决此问题的方法吗?
谢谢。
gstat - 如何在半变异函数中找到窗台处的 DEM 高程值
由于半变异函数给出了 DEM 的半方差和滞后距离。我想知道使用五球面模型在什么 DEM 高度处,门槛值变平。