<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" id="owaParaStyle"></style>
</head>
<body fpstyle="1" ocsi="0">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Dear list subscribers,
<div>Could anyone tell me how to estimate a Moran's I based on an inverse distance matrix when some outcome values missing?</div>
<div>Thanks,</div>
<div>Stijn</div>
<div><br>
</div>
<div><br>
</div>
<div>The following example shows what I try to do. It works with the spdep package when the outcome measure has no missings, but it shows the following error when there is at least one missing:</div>
<div>
<div><br>
</div>
<div>Error in subset.listw(listw, subset, zero.policy = zero.policy) : </div>
<div>  Not yet able to subset general weights lists</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<div>Example code:</div>
<div>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
# load package fields for calculating great circle distances</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
require(<span style="color: rgb(0, 0, 0); -webkit-text-stroke-color: rgb(0, 0, 0);">fields</span>)</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
# load spdep</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
require(<span style="font-kerning: none; color: #000000">spdep</span>)</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
# read example data</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(176, 22, 0); -webkit-text-stroke-color: rgb(176, 22, 0); -webkit-text-stroke-width: initial;">
<span style="color: rgb(0, 0, 0); -webkit-text-stroke-color: rgb(0, 0, 0);">ozone</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);"><-read.table(</span>"http://www.ats.ucla.edu/stat/r/faq/ozone.csv"<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">,</span><span style="color: rgb(0, 0, 0); -webkit-text-stroke-color: rgb(0, 0, 0);">sep</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">=</span>","<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">,</span><span style="color: rgb(0, 0, 0); -webkit-text-stroke-color: rgb(0, 0, 0);">
 header</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">=</span><span style="color: rgb(195, 136, 9); -webkit-text-stroke-color: rgb(195, 136, 9);">T</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">)</span></p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
# show head of data.frame ozone</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
head(<span style="color: rgb(0, 0, 0); -webkit-text-stroke-color: rgb(0, 0, 0);">ozone</span>,<span style="color: rgb(0, 0, 0); -webkit-text-stroke-color: rgb(0, 0, 0);"> n</span>=<span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">10</span>)</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
# calculate great circle distance matrix in meters</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone.dists<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);"><-rdist.earth(cbind(</span>ozone<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">$</span>Lon<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">,</span>ozone<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">$</span>Lat<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">),cbind(</span>ozone<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">$</span>Lon<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">,</span>ozone<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">$</span>Lat<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">),</span>miles<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">=</span><span style="color: rgb(195, 136, 9); -webkit-text-stroke-color: rgb(195, 136, 9);">FALSE</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">)</span></p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# show first three rows/colums of distance matrix</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone.dists<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">[</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">1</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">:</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">3</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">,</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">1</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">:</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">3</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">]</span></p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(6, 26, 153); -webkit-text-stroke-width: initial;">
# calculate inverse distances (note: diagonal will contain Inf)</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone.dists.inv <span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">
<-</span> <span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">
1</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">/</span>ozone.dists</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# change diagonal to zeros</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">diag(</span>ozone.dists.inv<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">)</span>
<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">
<-</span> <span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">
0</span></p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# show first three rows/colums of inverse distance matrix</p>
<p style="margin-right: 0px; margin-left: 0px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone.dists.inv<span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">[</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">1</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">:</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">3</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">,</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">1</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">:</span><span style="color: rgb(4, 82, 24); -webkit-text-stroke-color: rgb(4, 82, 24);">3</span><span style="color: rgb(6, 26, 153); -webkit-text-stroke-color: rgb(6, 26, 153);">]</span></p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# Convert the inverse distance matrix into list (for spdep procedures)</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
InvDistListw<span style="color: #061a99"><-mat2listw(</span>ozone.dists.inv<span style="color: #061a99">)</span></p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# Determine spatial autocorrelation based on inverse distance W matrix</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
MoransI<span style="color: #061a99"><-moran.test(</span>ozone<span style="color: #061a99">$</span>Av8top<span style="color: #061a99">,</span>InvDistListw<span style="color: #061a99">,
</span>randomisation<span style="color: #061a99">=</span><span style="color: #c38809">TRUE</span><span style="color: #061a99">,
</span>zero.policy<span style="color: #061a99">=</span><span style="color: #c38809">TRUE</span><span style="color: #061a99">,
</span>alternative<span style="color: #061a99">=</span><span style="color: #b01600">"greater"</span><span style="color: #061a99">,
</span>rank<span style="color: #061a99"> = </span><span style="color: #c38809">FALSE</span><span style="color: #061a99">,
</span>na.action<span style="color: #061a99">=</span>na.exclude<span style="color: #061a99">,
</span>spChk<span style="color: #061a99">=</span><span style="color: #c38809">NULL</span><span style="color: #061a99">,
</span>adjust.n<span style="color: #061a99">=</span><span style="color: #c38809">TRUE</span><span style="color: #061a99">)</span></p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
MoransI</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial; min-height: 17px;">
<br>
</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# But what if there is one missing value?</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone<span style="color: #061a99">$</span>Av8topwithonemissing<span style="color: #061a99"><-</span>ozone<span style="color: #061a99">$</span>Av8top</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone<span style="color: #061a99">$</span>Av8topwithonemissing<span style="color: #061a99">[</span><span style="color: #045218">2</span><span style="color: #061a99">]<-</span><span style="color: #c38809">NA</span></p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
ozone<span style="color: #061a99">$</span>Av8topwithonemissing</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; color: rgb(79, 79, 79); -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
# Determine spatial autocorrelation based on inverse distance W matrix</p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
MoransIwithonemissing<span style="color: #061a99"><-moran.test(</span>ozone<span style="color: #061a99">$</span>Av8topwithonemissing<span style="color: #061a99">,</span>InvDistListw<span style="color: #061a99">,
</span>randomisation<span style="color: #061a99">=</span><span style="color: #c38809">TRUE</span><span style="color: #061a99">,
</span>zero.policy<span style="color: #061a99">=</span><span style="color: #c38809">TRUE</span><span style="color: #061a99">,
</span>alternative<span style="color: #061a99">=</span><span style="color: #b01600">"greater"</span><span style="color: #061a99">,
</span>rank<span style="color: #061a99"> = </span><span style="color: #c38809">FALSE</span><span style="color: #061a99">,
</span>na.action<span style="color: #061a99">=</span>na.exclude<span style="color: #061a99">,
</span>spChk<span style="color: #061a99">=</span><span style="color: #c38809">NULL</span><span style="color: #061a99">,
</span>adjust.n<span style="color: #061a99">=</span><span style="color: #c38809">TRUE</span><span style="color: #061a99">)</span></p>
<p style="margin-right: 0px; margin-left: 4px; text-indent: -4px; font-size: 15px; font-family: Arial; -webkit-text-stroke-color: rgb(0, 0, 0); -webkit-text-stroke-width: initial;">
MoransIwithonemissing</p>
</div>
<div><br>
</div>
<div><br>
</div>
<div>
<div style="font-family:Tahoma; font-size:13px">
<div class="BodyFragment"><font size="2">
<div class="PlainText">--<br>
 <br>
<p class="MsoNormal" style="margin:0cm 0cm 0.0001pt"><span lang="EN-US">Prof. dr. Stijn Ruiter</span></p>
<p class="MsoNormal" style="margin:0cm 0cm 0.0001pt"><span lang="EN-US">Netherlands Institute for the Study of Crime and Law Enforcement NSCR / Department of Sociology, Utrecht University</span></p>
<br>
</div>
</font></div>
</div>
</div>
</div>
</div>
</body>
</html>