我正在尝试运行地理加权面板回归模型,如下所示。 但是我不断收到重复 ID 的错误。
bw.GWPR(formula = formula1, data = finalprepostdataset3,
SDF = finalprepostdataset_sp,
index = c("county_id", "season"),
adaptive = TRUE, approach = "AIC",
p = 2, effect = "twoways", model = "within",
doParallel=T, cluster.number=4,
kernel = "bisquare", longlat = FALSE, bigdata = T)
Error in { : task 1 failed - "duplicate couples (id-time)
finalprepostdataset_sp
是 finalprepostdataset3
的空间副本。我阅读了指南来解决这个问题(我的理解是它源自 plm
处理面板数据的方式),但我仍然遇到错误。更清楚地说,我可以成功运行此代码:
plm(
formula=formula1,
data=finalprepostdataset3,
effect = "time",
model = "within",
index = c("county_id", "season"),
)
并且:
any(table(index(finalprepostdataset3$county_id, finalprepostdataset3$season), useNA = "ifany")!=1)
FALSE
据我所知,没有重复。
但是第一个代码无法运行。
如有任何帮助,我们将不胜感激。由于人们对
plm
的熟悉而在此发帖。
如果没有可重现的例子,很难说清楚。 函数
bw.GWPR
似乎源于包 GWPR.light
和 plm
来自包 plm
,这两个函数都没有在问题中指出。
如果您
plm
语句成功运行且没有警告,那么您的数据中应该不会出现观测单位 (county_id
) 和时间维度 (season
) 的重复组合。
但是,要进行检查,您需要在测试中省略
index
函数(或在 pdata.frame 上使用 index
(而不是变量))
any(table(index(<your_pdata.frame>), useNA = "ifany")!=1)
any(table(finalprepostdataset3$county_id, finalprepostdataset3$season, useNA = "ifany")!=1)