1

に問題がありspdep()ます。関数によって生成された非欠損距離の行列から開始する

dist_m <- geoDistMatrix(data1, group = 'fips_dist')
dist_m[upper.tri(dist_m)] <- t(dist_m)[upper.tri(dist_m)]

次に、線形逆関数で重みに変換します

max_dist <- max(dist_m)
w1 <- (max_dist + 1 - dist_m)/(max_dist + 1)

そしていま

lw <- mat2listw(w1, row.names = rownames(w1), style = 'M')

ウェイトが欠落していないことを確認します。

any(is.na(lw$weights))

ないので、次のように進みます。

errorsarlm(cvote ~ inc, data = data1, lw, method = 'eigen', quiet = F, zero.policy = TRUE)

次のエラーが発生します。

Error in subset.listw(listw, subset, zero.policy = zero.policy) : 
  Not yet able to subset general weights lists
4

2 に答える 2

1

これは、 の少なくとも 1 つの観測data1が完全ではないためです。つまり、欠損値があります。したがって、errorsarlmデータをサブセット化したい、つまり完全なケースに制限したい。しかし、今はそれができません - それがエラーメッセージの内容です。

最善の方法は、データを手動でサブセット化するか、不完全なケースを修正することです。

于 2015-04-09T09:43:40.803 に答える