我想知道是否有人可以向我解释geoR包如何计算协方差函数?我的意思是你怎么用手工做?
library(geoR)
#suppose I have the following coordinates
X = c(60,30,20,40)
Y = c(50,20,50,50)
my_coordinates = cbind(X,Y)
print(my_coordinates)
#computing covariance
my_cov= varcov.spatial(my_coordinates,cov.model="exp", cov.pars=c(0.2,25))
print(my_cov)
你得到:
[,1] [,2] [,3] [,4]
[1,] 0.20000000 0.03664442 0.04037930 0.08986579
[2,] 0.03664442 0.20000000 0.05645288 0.05645288
[3,] 0.04037930 0.05645288 0.20000000 0.08986579
[4,] 0.08986579 0.05645288 0.08986579 0.20000000
然而,人们可能也想在Matlab中做到这一点。
答案 0 :(得分:3)
了解包或函数如何执行某些操作的最佳方法是查看源代码。这是关于开源项目的一个很棒的事情,你可以这样做。
尝试键入varcov.spatial
或在解压缩的包tar球中搜索函数定义
要计算协方差(取决于点之间的距离),您需要计算
协方差函数在?cov.spatial
中定义。您可以致电cov.spatial
来计算R
中的geoR::varcov.spatial
(正是{{1}}所做的)