问题标签 [covariogram]
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.
python - 计算经验/样本协方差图的快速、优雅的方法
如果可能的话,有谁知道在 Python 中计算经验/样本协变函数的好方法?
这是一本书的屏幕截图,其中包含协方差图的良好定义:
如果我理解正确,对于给定的滞后/宽度 h,我应该得到由 h(或小于 h)分隔的所有点对,乘以它的值,然后对于这些点中的每一个,计算它的平均值,在这种情况下,定义为 m(x_i)。但是,根据 m(x_{i}) 的定义,如果我想计算 m(x1),我需要获得距离 x1 距离 h 内的值的平均值。这看起来像一个非常密集的计算。
首先,我是否正确理解这一点?如果是这样,假设二维空间计算这个的好方法是什么?我尝试用 Python 编写代码(使用 numpy 和 pandas),但这需要几秒钟,我什至不确定它是否正确,这就是为什么我不会在此处发布代码的原因。这是另一个非常天真的实现的尝试:
但是,现在我已经确认我的代码中有错误。我知道,因为我使用变异函数来计算协变异函数(covariogram(h) = covariogram(0) - variogram(h)),我得到了一个不同的图:
它应该看起来像这样:
最后,如果您知道用于计算经验协变函数的 Python/R/MATLAB 库,请告诉我。至少,这样我可以验证我做了什么。
r - 来自 gstat 包的 chol.default(A) krigeST 中的 R 错误
我正在处理每小时的气温数据集,该数据集在相对较小的区域内约 200 个站点记录。我选择了一个时空变异函数(例如总和度量)来拟合我的数据,现在我正在尝试对我的相同站点进行预测,以填补 NA(缺失值)空白。在每日汇总数据上使用 krigeST() 函数时,一切似乎都很顺利,但是当我以原始每小时分辨率使用它时,我总是收到以下错误:
我用谷歌搜索,发现它与一个不完全正定的矩阵有关。但是,我不确定为什么会发生这种情况,并且想知道你们中是否有人知道解决此问题的方法(避免它的解决方法)。
r - 为什么变异函数总是在 R 中绘制 15 个点?
随着样本量的增加,我想绘制可变数量的点。然而,由于某种原因,“变异函数”函数每次只绘制 15 个点。
我检查以确保我传递的“变异函数”数据的大小是正确变化的——确实如此。
#f25 的长度为 25 - 我检查了 #
两个原始变异函数仅绘制 15 个点。有谁知道为什么?我不认为这是默认设置。
r - 变差函数中每个滞后的 R_number 对
我正在使用geoR
包进行降雨空间插值。我不得不说我对地统计学很陌生。感谢 youtube 上的一些视频教程,我理解了(嗯,我想是的)变异函数背后的理论。根据我的理解,对的数量应该随着滞后距离的增加而减少。例如,如果我们考虑一个 100m 长的延伸(例如 100m 长的河床横截面),5m 滞后的对数为 20,10m 滞后的对数为 10,依此类推。但是我对包中variog
函数的输出有点困惑。geoR
下面给出一个例子
这是我的数据集,其中a
是我的变量(降雨强度)并且x, y
是点的坐标。变异函数计算如下所示
在哪里
u:带距离的向量。
v:在 u 中给出的距离处具有估计的变异函数值的向量。
n:每个 bin 中的对数
据此,对数 (n) 具有随机模式,而相应的滞后距离 (u) 正在增加。我觉得很难理解这一点。谁能解释发生了什么?此外,由于我是地统计学新手,因此非常感谢任何改进此应用程序的变异函数计算(降雨强度的空间插值)的建议/建议。提前致谢。
geospatial - 估计可靠变异函数的最小样本量
我有 33 个来自传感设备的 SO2 读数,这些设备安装在一个大区域的 33 个位置(每个城市一次观测)。样本量是固定的,不能因安装的设备数量而增加。现在(地理)-统计上它是一个相当小的样本,因为许多作者指出样本量应该在 100-150 之间以获得可靠的变异函数。有人可以指导我如何处理这么小的数据吗?此外,它实际上将是一个时空分析,但在每个时间瞬间又有 33 个观测值。我真正想问的是,增加区域大小(分辨率),而整体样本点的数量仍然保持不变,对变异函数估计有什么影响?
我想发布一张图片,但没有足够的声誉。
在上述两种情况下,不同对之间的相对距离仍然保持不变。这就是 dist(z_1, z_2)/dist(z_2, z_3) 在两个尺度上保持不变。
r - 如何将数据框转换为 R 中的 gstat 对象?特别是 gstatVariogram
我想从 R 中的一些半方差数据创建一个变异函数拟合。
我意识到变异函数拟合需要一个由 vgm 生成的对象,以及由变异函数生成的 raw.vgm,例如:
但是,如果我已经有了 gamma(半方差)和距离值,我如何从中获取 gstat 对象?
以下引发错误:
错误如下:
我只有伽玛和距离滞后。如何创建 gstatVariogram 或 variogramCloud?谢谢。
r - 如何使用 R 中的 gstat 拟合带有半变异函数的模型?
我有一个 csv 文件文件,其中包含 3 月 1 日下午 12 点的大气 PM10 浓度数据。请下载。我想在 R 中使用 gstat 包绘制半变异函数。我尝试在 R 中编写这些代码。但是有了这些数据,我无法拟合模型。
实际上我是 R 和统计学的初学者。所以,我什至对变异函数也一无所知。我有一些疑问:
a)当我将数据绘制为半变异函数时,它看起来与典型的半变异函数不同!为什么会这样?我应该对我的数据做任何其他事情,比如转换吗?
b)我怎样才能用这些数据拟合模型?我尝试过不同的模型,如“Sph”、“Exp”,但它们看起来像线性的!为什么?
c)我如何理解我应该在vgm()
函数中使用什么初始值?
d) 我如何理解该模型与数据正确匹配?
e)对于使用克里金法,我应该绘制什么样的半变异函数?只有全向半变异函数?或者我应该绘制方向半变异函数?
f)我如何解释半变异函数?我的意思是我实际上能理解半变异函数的数据吗?
提前致谢。
r - 用于拟合 R 中的实验变异函数的“球形模型”方程
我想知道当我选择它作为球形模型时,使用哪些方程组来拟合实验变异函数。例如,我使用了球形模型的以下参数:
这里,基台方差,c = 5384.34 + 9042.06 = 14426.41;和范围,a = 944.9017。球形模型由以下等式解释(书名:Geostatistics for Environmental Scientists):
其中,h = 距离;因此,如果我使用上述方程在已知距离“h”的情况下插入值“a”和“c”,则坐标(h,变异函数)应该落在模型上。不幸的是,对于不同的 h 值,它不会这样做!是否有可能知道在“gstat”包中的不同模型(球形、指数等)的情况下使用了哪些方程组?
r - xy.coords(x, y, xlabel, ylabel, log) 中的错误:“x”是一个列表,但没有组件“x”和“y”
我尝试在 R 中绘制变异函数。当我运行以下代码时:
我收到一个错误:
xy.coords(x, y, xlabel, ylabel, log) 中的错误:“x”是一个列表,但没有组件“x”和“y”