Presumably --- based on the question she actually *asked* --- she does
NOT have the coordinates of the stations; only the distance matrix.

I believe that the following will do the job:  Let M be the distance matrix.

    diag(M) <- Inf
    nn5 <- apply(M,1,function(x){((1:length(x))[order(x)])[1:5]})

Check:

    require(spatstat)
    set.seed(42)
    X <- runifpoint(44)
    M <- crossdist(X,X)
    diag(M) <- Inf
    nn5 <- apply(M,1,function(x){((1:length(x))[order(x)])[1:5]})

    plot(X)
    plot(X[1],add=TRUE,chars=20,cols="red")
    plot(X[nn5[,1]],add=TRUE,chars=20,cols="blue")
    # Looks right to me.

        cheers,

            Rolf Turner

On 15/04/13 22:42, ONKELINX, Thierry wrote:
Dear Eliza,

If you have the coordinates of the stations you can use the nnwhich() function 
from the spatstat package.

Best regards,

ir. Thierry Onkelinx
Instituut voor natuur- en bosonderzoek / Research Institute for Nature and 
Forest
team Biometrie & Kwaliteitszorg / team Biometrics & Quality Assurance
Kliniekstraat 25
1070 Anderlecht
Belgium
+ 32 2 525 02 51
+ 32 54 43 61 85
thierry.onkel...@inbo.be
www.inbo.be

To call in the statistician after the experiment is done may be no more than 
asking him to perform a post-mortem examination: he may be able to say what the 
experiment died of.
~ Sir Ronald Aylmer Fisher

The plural of anecdote is not data.
~ Roger Brinner

The combination of some data and an aching desire for an answer does not ensure 
that a reasonable answer can be extracted from a given body of data.
~ John Tukey

-----Oorspronkelijk bericht-----
Van: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] Namens 
eliza botto
Verzonden: maandag 15 april 2013 12:36
Aan: r-help@r-project.org
Onderwerp: [R] nearest stations in distance matrix

Dear R-user,
Is there a way in R to locate the nearest 5 indices to a station, based on 
distances in a distance matrix. In other words i want to have nearest stations 
based on the distances in the matrix. The distance matrix, i have, has 
dimension 44*44.
Thankyou very much in advance
Elisa

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to