[R-sig-Geo] nb2listw() in spdep fails, also errorsarlm() has problems

Alun Pope AlunPope at rismark.com.au
Mon Nov 12 07:37:09 CET 2007


Further to my post below, the function nb2listw() works if the mode is
coerced to "integer" rather than "numeric" (two places).

 

However the line 

 

can.sim <- as.logical(NA)

 

in errorsarlm() fails with the error message 

 

Error in UseMethod("as.logical") : no applicable method for
"as.logical".

 

It seems that as.logical(NA) is the culprit here, but I do not
understand how to fix this one.  I would be grateful for a quick fix.
Thanks a lot.

 

Alun

 

________________________________

From: r-sig-geo-bounces at stat.math.ethz.ch
[mailto:r-sig-geo-bounces at stat.math.ethz.ch] On Behalf Of Alun Pope
Sent: Monday, 12 November 2007 5:18 PM
To: r-sig-geo at stat.math.ethz.ch
Subject: [R-sig-Geo] nb2listw() in spdep fails



Running the latest version of spdep ("spdep, version 0.4-9, 2007-11-01")
I find that code that previously worked no longer does after updating R
to the latest release (2.6.0). 



The following example illustrates:

> dataex

       long       lat

1  151.1550 -33.88602

2  151.1922 -33.89780

3  151.1733 -33.91631

4  151.2042 -33.92947

5  151.1854 -33.87928

6  151.2355 -33.92529

7  151.1768 -33.91153

8  151.2352 -33.94703

9  151.2561 -33.93978

10 151.2316 -33.95854

> ngh.listex <-  knearneigh(cbind(dataex$long,dataex$lat), k=2, longlat
= TRUE)

> ngh.listex

$nn

      [,1] [,2]

 [1,]    5    7

 [2,]    7    5

 [3,]    7    2

 [4,]    6    3

 [5,]    2    1

 [6,]    8    9

 [7,]    3    2

 [8,]   10    9

 [9,]    8    6

[10,]    8    9



$np

[1] 10



$k

[1] 2



$dimension

[1] 2



$x

          [,1]      [,2]

 [1,] 151.1550 -33.88602

 [2,] 151.1922 -33.89780

 [3,] 151.1733 -33.91631

 [4,] 151.2042 -33.92947

 [5,] 151.1854 -33.87928

 [6,] 151.2355 -33.92529

 [7,] 151.1768 -33.91153

 [8,] 151.2352 -33.94703

 [9,] 151.2561 -33.93978

[10,] 151.2316 -33.95854



attr(,"class")

[1] "knn"

attr(,"call")

knearneigh(x = cbind(dataex$long, dataex$lat), k = 2, longlat = TRUE)

> nb.listex <- knn2nb(ngh.listex,sym=TRUE)

> nghwts.listex <- nb2listw(nb.listex,style="U")

Error in UseMethod("as.double") : no applicable method for "as.double"





The function nb2listw() in spdep contains statements of the form



    mode(x) <- "numeric" 



which I assume is what is causing that function to fail with the error
message above.  





I think this because it seems (to me) that this is caused by the change
to the behaviour of as.numeric() in the latest R release, when applied
to vectors of mode "integer".  Here is an example which illustrates
behaviour that appears odd to me:



> x1

[1] 1 2 3 4 4 4 4

> mode(x1)

[1] "numeric"

> as.numeric(x1)

Error in UseMethod("as.double") : no applicable method for "as.double"

> is.numeric(x1)

[1] TRUE



I have posted separately to the R-help mailing list.



I don't know if this ought to be a bug report, sorry.



Alun







Dr Alun Pope



Research Manager

Rismark International



For more on Equity Finance Mortgages*:

See www.efm.info <http://www.efm.info/> 







Level 13 | 50 Margaret Street

Sydney | NSW 2000 | Australia

T +61 (0)2 8243 0656

F +61 (0)2 9290 3703

M +61 (0)412 115 028

E alun.pope at rismark.com.au

W www.rismark.com.au



*Best New Product of the Year in the 2007 Your Mortgage Magazine
Mortgage of the Year Competition.



This email is strictly confidential. If you are not the intended
recipient you must not disclose or use the information contained in it.
If you have received this email in error please notify us immediately by
return email and delete the document. Failure to comply with this
request could invoke severe legal penalties.





-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://stat.ethz.ch/pipermail/r-sig-geo/attachments/20071112/7f9dc67b/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/gif
Size: 7920 bytes
Desc: image001.gif
URL: <https://stat.ethz.ch/pipermail/r-sig-geo/attachments/20071112/7f9dc67b/attachment.gif>


More information about the R-sig-Geo mailing list