On Mon, 19 May 2008, Michal Palenik wrote:

dear list,

I want to do analysis using lagsarlm function, however I am stuck on
listw object. I have distances among spatial points in a mysql table in
form:
point1_id | point2_id | distance (in km)

dataset in also in mysql table in form:
point_id | year | variable1 | variable2 | ....

so my questions:
1. how to I create a listw object from above mysql table ?

The easiest way is to do it in R, provided that the coordinates of the observations are stored in the same table as the data - then there is less danger of the IDs getting mixed up. Then you'd ceate first an nb object using your choice of method, adding in the (distances) in the glist= argument to nb2listw() - examples are given there.


2. if i create data frame with command
data<-dbGetQuery(con, "select * from data");
is it enough or some special actions need to be taken to connect data
frame to listw object (eg so that lagsarlm knows which spatial point in
data is which point in listw) ?



If you want to use the external table of distances (because say they are network distances), you can read them in as a data frame, or possibly write then to a text file in GWT format. If the latter, see the GeoDa site or read.gwt2nb() for details of the format, using the point_ID values from the data frame with the variables as the region.id= argument. If your three field table is already thresholded, this might be a good way to go (say distance < threshold). Note that read.gwt2nb() returns an nb oject, with the distances as part of the "GeoDa" attribute:

nb <- read.gwt2nb("your_three_columns", region.id=df$point_id)
dlist <- attr(nb, "GeoDa")$dist

then use nb2listw() to make the listw object (with for example the inverse of dlist as the glist= argument).

If you prefer to read in the data frame, convert the data frame to a "spatial.neighbour" object, and get back to listw with sn2listw(). This is untried and may not work unless point_id is a 1:n sequence, because the "spatial.neighbour" object expects that. Use the example to sn2listw() to see what happens.

Hope this helps,

Roger

thanks in advance

michal palenik




--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: [EMAIL PROTECTED]

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

Reply via email to