微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在空间混合效应模型中考虑地球曲率?

如何解决如何在空间混合效应模型中考虑地球曲率?

我正在使用 glmtmmb 包为混合效应模型实现空间协方差结构。我的数据位于世界各地,所以我使用它们的坐标,如本小插图所示: https://cran.r-project.org/web/packages/glmmTMB/vignettes/covstruct.html

但是,我意识到 glmtmmb 根据基于坐标的空间协方差随机效应计算欧几里得距离矩阵。我的理解是欧几里得距离没有考虑地球的曲率。

当我运行模型时,我将如何编码模型以解释行星的曲率?

这是我的数据示例:

data<-structure(list(longitude = c(11.8394209221307,19.207412611109,14.988245402312,-156.220498311814,-149.965282795628,-141.020156594133,-131.532573286036,-128.027481950532,-115.961777080158,-124.380383096898,-115.918743856029,-103.078004246615,-122.16758400029,-115.941638174871,-105.414457853115,-93.4649722229673,-76.2873184237883,-65.1551574661182,-120.974597073986,-116.01797893036,-107.03007606695,-96.7466971866012,-85.2499751428307,-72.6431592735574,-114.602151328445,-108.309965762048,-99.6203946714858,-89.6403678232195,-78.7577123407824,-112.170297238442,-107.259798220662,-100.727226308524,-93.0567964436054,-83.7697443309813,-80.7625536892934,-76.7238442231151,-69.9051005962553,-61.4712666908513,-56.445574923963,-3.3333194166193,-80.2846240350652,-5.90506480067133,-76.8439361822083,-71.6387245818495,-8.28235656800099,-77.8757609880476,-71.3532742277264,-65.4385223976101,-26.9668697161502,-76.7429279036883,-71.6193755876304,-64.6663502370243,-16.9648092320456,-77.9142198148975,-71.7307032969293,-64.6348493230167,-58.7280901083385,-15.7635960550617,-76.5577557149937,-71.6179321533927,-64.6348493225224,-57.8445817565517,-52.8102585373095,-71.0594268596499,-64.1949692479876,-57.5825649478794,-51.3275185698745,-45.9342455778298,-64.011742673131,-57.3248355029699,-50.7950737296863,-44.5544536729868,-39.0958764632986,-14.3412737505052,-10.3683733319278,-6.2908080869757,-4.55027445498332,1.31255253453935,5.30904389361807,-9.65517357017165,-7.93365581679553,-2.28235472020667,1.74005347841141,5.50572648731572,11.180111915481,-3.27373367464813,0.0421221335424401,3.0113934798068,6.67261898795438,10.0323399485988,17.718941331484,4.1604774422448,7.52731074964203,15.8246506165059,22.1122802147987,10.2382058891856,11.28623332268,14.9726892510038,24.7823170843885,13.310284251473),latitude = c(58.9435754552999,69.4891502605188,64.4330178202956,60.9207065848652,67.0615477845098,61.5631476347719,66.1326005600009,58.6494851364267,63.7719844003671,51.6743249185906,55.7981403820843,59.7800868807959,43.1564796431041,47.8969135273089,51.9897282558294,54.5721421529249,56.0098149155715,54.7656474222165,37.006751111667,39.9424501794092,44.0905665035358,47.4301369767217,49.6474252332632,49.8015293222719,32.7719042959129,35.9918649917285,39.6199998436204,42.4119783659818,44.0368892436475,26.0386731470784,28.2128367254294,31.5168234764132,34.7396219440353,37.1678738766652,32.8296116845156,38.4346593512675,44.292396340693,48.2620384531768,51.2738430506752,57.3295493386325,24.6797173592152,53.0268562895106,20.0289086045353,19.1820442964838,43.2279525384804,8.74985995760072,11.4372242720246,17.905379330561,38.2602987549864,3.04444379967348,7.20753582206252,8.98557829783437,29.847409412117,-3.63343641580924,-0.00000000207018589503029,3.60814163910207,5.79446666955312,24.5955015901547,-9.9995855350236,-7.25848170797093,-3.6081416420689,-0.000000000939853967322798,2.63451993705057,-14.1041016650605,-10.8502796486716,-7.68233237133158,-4.13241169642629,-2.51464340471549,-18.5947825716808,-15.5304083406607,-11.9967708009935,-8.12712431234826,-5.63371739966028,13.4346194998311,25.9915156858907,32.3203397257631,40.116231101889,46.2513505250261,51.55449272074,8.18867168816635,13.939810587034,27.2856277650107,33.348123090156,40.1976265136508,46.3600421184355,8.05803807045723,14.2862222410942,20.9628176329005,27.3592118191787,32.7926648184547,40.8250493757116,8.1183199272062,14.0902691630921,27.3403198113779,32.2154425214085,0.00870242245359938,7.06583168748932,14.0902691631521,27.2853897229115,-5.99589836464885),y = c(1.05034681761569,1.61450132149333,1.29401821721229,1.21042248555961,1.13286869276435,1.11748656578671,1.00880857919911,1.15844679175853,1.64761112571191,1.17453746195961,1.15654022618987,1.02153997104923,1.21498008279595,1.16849024879071,1.24041508666457,1.2541817944514,1.12613677678153,1.12898237615538,1.12743490331821,1.16408695935556,1.18230867031504,1.19878064417116,1.15127871970727,1.18013349507,1.10370754228796,1.12307148772961,1.18236359077094,0.996955403696177,1.0369259483697,1.06910113370563,1.17072351891927,1.08388815977743,0.99891907080663,0.935318086103045,0.814717543772244,0.89598181827598,1.05512704004874,1.1336320601152,1.21745579098393,1.18360428253466,0.760800100876177,0.952915375506875,0.758926030338668,0.775170224501605,1.01199470503218,0.94015704598728,0.912417322078287,0.741885240527399,0.772374611910713,0.930792417076683,0.963613079435164,0.879777425031622,0.743040754930744,0.984325282807617,1.15492636536898,1.07487239801864,0.98381221125962,0.621699390128565,1.23145229981674,1.16217566280356,1.10523712841323,0.964079380943013,0.960668410824851,1.06156307187555,1.11471502845037,1.18007203956462,1.06395207793666,1.07338660925136,1.01092687214532,1.13666486495579,1.2422050274756,1.10326678349811,1.06888344888479,0.888839590198041,0.839015291112326,0.884049830440306,0.871775428623982,0.949010455467087,1.01429158847817,0.951490370661999,1.26687769819674,1.06792404461225,0.908018846833107,0.916478769004236,0.941467219138074,0.805463247554851,1.74419422219527,1.21482662446648,1.08814677161816,0.868880214762148,0.919560144315452,0.895229509274837,1.62646441821932,1.09108074854521,0.903379892469626,0.798886906985655,0.853336723474621,1.11068674101699,0.898915208972989,0.998335727088299),x = c(26.53666655225,27.350000858375,30.8031246065625,29.1846156486923,48.9176467446471,37.9529413335294,52.1363639831818,34.6478264020435,51.5249996185,24.7571428843286,39.9593214907458,50.2833340963333,29.1437499970469,35.4172931327068,45.8833340865513,49.8857141222143,45.8857149397143,43.5000019075,25.5666667686667,37.1517373751313,40.9474575667684,47.088596511307,38.5231881072319,44.0224140430517,31.0078787919091,36.7567868959307,41.0577643021553,39.1112362079607,37.018439840773,25.9400001843833,33.8293231304173,34.2549814385941,34.3631372115294,34.3539213853431,28.3422887337015,33.4875815272288,36.5637172429204,35.3653845420192,33.2777782016667,17.9894738950526,19.4871559667569,17.7512821538974,12.0229358497385,13.7881479616444,17.2263161006842,8.8090442162541,11.2853082367095,11.3460177615867,13.9272725364545,10.2872457363577,11.8214285230915,11.0155808284306,14.4235296248824,11.2211602652845,10.8886444175663,11.8290601468547,10.3520659611996,15.418749868875,13.7909089349455,10.5499998339576,10.3121091648992,10.2996019612705,10.8565420213785,14.5153268018467,15.468124824775,16.1492062622487,11.6752850710179,10.8177783754722,19.1437768812747,18.200634947219,17.4586025618602,17.7937498092292,13.1410713196973,19.6702382905,18.3133332569333,24.4638888747778,28.3972414148345,25.4322578676532,22.2095238140952,15.3373784277714,24.4583333334167,38.7142851692857,31.0901234238148,25.253293351521,26.2893259605674,12.345614075154,20.5583330791667,31.2142857142857,35.99166695275,27.6276593917979,25.5079137953309,14.6341769786329,21.683333397,32.4733327229333,23.0878046547398,10.8149814283914,11.5552847094016,26.6499996185,28.2000002425455,13.4618423986974)),row.names = c(NA,100L),class = "data.frame")

我如何构建空间协方差和模型如下所示:

library(glmmTMB)
data$pos <- numFactor(scale(data$longitude),scale(data$latitude))
data$ID <- factor(rep(1,nrow(data)))    
Model_1 <- glmmTMB(y ~ x + mat(pos + 0 | ID),data,family = Gamma(link = "log"))

任何帮助将不胜感激!

更新: 我发现这篇文章使用了“nlme”的半正弦距离: Specifying a correlation structure for a linear mixed model using the ramps package in R 不幸的是,这篇文章链接的包没有安装,并且最佳答案中使用的代码不允许灵活地为点指定母系分布。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。